完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
嗨,我试图让我的PIC32MZ2048ECM064把RD0调高,但当我编程时,什么也没发生。我在VCC和RDO上有PICOSCOPE,VCC是3.3V,即使用VCC高编程,RDO也总是很低。在管脚OSC1和OSC2上有一个24Mhz的外部晶体。这是我的代码:CON.://PIC32MZ2048ECM064配置位设置//'C'源行配置语句//DEVCFG3//USERID=No Setting#pragma config FMIIEN=ON//.RMII/MII Enable(MII启用)#pragma config FETHIO=ON//.I/O Pin Select(默认以太网I/O)#pragma config PGL1WAY=ON//Permission Group Lock OnWay配置(只允许一个重新配置)#pragma配置PMDL1WAY=ON//外围模块禁用配置(只允许一个重新配置)#pragma配置IOL1WAY=ON//外围引脚选择配置(只允许一个重新配置)#pragma配置FUSBIDIO=ON//USB USBID Selection(由USB模块控制)//DEVCFG2#pragma配置FPLLIDIV=DIV_8//系统PLL输入分频器(8x分频器)#pragma配置FPLLRNG=RANGE_21_42_MHZ//系统PLL输入范围(21-42MHz输入)#pragma配置FPLLICLK=PLL_FRC//系统PLL输入时钟选择(FRC输入到系统P#pragma配置FPLLMULL=MUL_128//系统PLL乘法器(PLL乘以128)\\\pragma配置FPLLPLPLPLPLPLL乘=MUL_128_128_128//系统PLL乘法器(PLL乘以128)\\#pragma配置FPPLPLPLPLPLPLPLPL配置FPLLODODODIV=DIV_32//系统PLL输出时钟分配器///系统PLL输出时钟分配器(32x分配器//系统PLL输出时钟分配器(32x分配器)\\32xPLL启用(USB PLL被启用)//DEVCFG1#ins语用配置FNOSC=POSC//振荡器选择位(主振荡器(HS,EC))pragma配置DMTINTV=WIN_127_128//DMT计数窗口间隔(窗口/间隔值为127/128计数器值)pragma配置FSOSCEN=ON//辅助振荡器启用(Enable SOSC)#pragma config IESO=ON//内部/外部切换(启用)#pragma config POSCMOD=EC//主振荡器配置(外部时钟模式)#pragma config OSCIOFNC=OFF//CLKO输出信号在OSCO管脚上激活(禁用)#pragma config FCKSM=CSECME//时钟切换和M洋葱选择(时钟开关启用,FSCM启用)#pragma配置WDTPS=PS1048576//看门狗定时器后置定时器(1:1048576)#pragma配置WDTSPGM=STOP//看门狗定时器停止在闪存编程(WDT在闪存编程期间停止)#pragma配置WINDIS=NORMAL//看门狗定时器窗口Mode(看门狗定时器处于非窗口模式)#pragma配置FWDTEN=OFF//看门狗定时器启用(WDT禁用)#pragma配置FWDTWINSZ=WINSZ_25//看门狗定时器窗口大小(窗口大小为25%)#pragma配置DMTCNT=DMT31//Deadman定时器计数选择(2^31(2147483648)#pragma配置FDMTEN=FDMTENON//Deadman Timer Enable(Deadman Timer被启用)//DEVCFG0#pragma配置DEBUG=OFF//后台调试器启用(调试器被禁用)#pragma配置JTAGEN=ON//JTAG启用(JTAG端口启用)#pragma配置ICESEL=ICS_PGx1//ICD Comm Channel Select(在PGEC1/PGED1上通信)#pragma配置TRCEN=ON//Trace Enable(启用了CPU中的跟踪特性)#pragma配置BOOTISA=MIPS32//Boot ISA选择(引导代码和例外代码是MIPS32)#pragma配置FECCCON=OFF_UNLOCKED//Dynamic Flash ECC配置(ECC和动态ECC被禁用(ECCCON位被写入)#pragma config FSLEEP=OFF//Flash Sleep.(当设备处于睡眠模式时,Flash断电)#pragma config DBGPER=PG_ALL//调试模式CPU访问权限(允许CPU访问所有权限区域)#pragma config EJTAGBEN=NORMAL//EJTAG引导(正常EJTAG功能)//DEVCP0#pragma配置CP=OFF//代码保护(保护禁用)//SEQ0//DEVADC1//DEVADC2//DEVADC3//DEVADC4//DEVADC5//pragma配置语句应该在项目文件include.//useprojectenums而不是define for ON和OFF.include
|
|
相关推荐
19个回答
|
|
|
你有没有读过硅胶勘误表和你的MCU的数据表?项目41。晶体振荡器不能用作初级振荡器(OSC1/OSC2引脚)的输入。
|
|
|
|
|
|
这解释了很多!请你帮我设置内部振荡器好吗?
|
|
|
|
|
|
最简单的方法是设置COSC位,使用内部快速RC振荡器除以FRCdIV。请参阅MCU数据表,第8部分:“振荡器配置”的详细信息。
|
|
|
|
|
|
我已经检查了开发板的微芯片数据表,它有这个选项。请参阅第22页!HTTP//WW1.MICCHIP.COM/DeLoSt/En/DeVICECD/O7000 014147A.PDF
|
|
|
|
|
|
什么选择?据我所知,实际的显影板使用一个外部振荡器(与晶体相反)。
|
|
|
|
|
|
我想他的意思是说电路板允许晶体直接连接到PIC。显然,电路板是在发现勘误表之前开发的。
|
|
|
|
|
|
即使在PIC32数据表的第640页上,它也给出了一个24MHz的晶体代码差异的例子,它使用PIC32 MX设备上的外部24 MHz晶体故障安全时钟监控器(FSCM)来实现最大速度,内部FRC成为时钟源失效的时钟源。独立的内部备份FRC(BFRC)在时钟源上的故障变成时钟源。在PIC32 MX设备上,时钟故障导致在切换完成时触发特定中断。在PIC32 MZ设备上,NMI被触发,而必须由NMI Rout处理。FSCM产生一个中断。FSCM产生一个NMI。FCKSM和LT的定义在PIC32 MZ设备上发生了变化。FCKSM & lt;1:0Gt;(DEVCFG1和LT;15:14&Gt)1x=时钟切换被禁用,FSCM是DababeDe0.01=时钟切换被启用,FSCM被禁用。00 =时钟切换被启用,FSCM是FabCKSM & lt;1:0GT;(DeVCFG1和lt;15:14&GT)11启用时钟切换并启用时钟监控10=时钟切换被禁用并且时钟监视被启用01=时钟切换被启用并且时钟监视是禁用的:00 =时钟切换被禁用并且时钟监视是Dabablon PIC32 MX设备,CF(OSCCon & LT;3和gt)位指示时钟故障。写入该位将引发FSCM事件。在PIC32MZ设备上,CF(OSCCON<3>)位具有与PIC32MX设备相同的功能;然而,可以使用附加的CF(RNMICON<1>)位来指示NMI事件。写入该位会导致NMI事件,但不是FSCM事件。在PIC32MX设备上,时钟(OSCCON<7>)位由FSCM控制。在PIC32MZ设备上,时钟(OSCCON<7>)位不受FSCM.CLKLOCK(OSCCON<7>)的影响。如果时钟切换和监视被禁用(FCKS)。M<1:0>=1x):1=时钟和PLL选择被锁定0=时钟和PLL选择没有被锁定并且可以被修改,如果时钟切换和监视被启用(FCKSM<1:0>=0x):时钟和PLL选择从不被锁定并且可以被修改。CLKLOCK(OSCCON<7>)1=时钟和PLL选择锁定0=时钟和锁PL选择不锁定,并且可以修改A-1:振荡器配置配置差异(连续)振荡器配置差异(连续)PIC32MX5XX(连续)PIC32MX5XX/6XX/7XX/7XX特征PIC32MZ特征PIC32MZ特征PIC32MZ特征PIC32MX32MX32MX32MX5XX/6XX/6XX/7XX/7XX/7XX 32MX32MX32MXXXXXXXXXXXXXXXXX5XX/6XX/7XX/7XX/7XX/7XX/7XX/7XX/7XX/7XX(200MHz 32M32M32MZ为20=P#pragma配置FPLLIDIV.#pragma配置FPLLIDIV=DIV_6#pragma配置FPLLMUL=MUL_20#prag配置FPLLMUL配置FPLLMUL_20\\\\\\\\\\\\\\\\\\\\\\\DIV_3#pragma配置FPLLRNG=RANGE_5_10_MHZ#pragma config FPLLMULT=MUL_50#pragma config FPLLODIV=DIV_2#define SYSFREQ(200000000L)所以不支持Crystal?我有点困惑,那么我需要配置内部振荡器,然后在我得到振荡器之前吗?这是我用C语言,PIC32和IDE的第2天,所以我在一个非常陌生的环境里尽我最大的努力。
|
|
|
|
|
|
是的,它不支持晶体。“Errata”是芯片制造后发现的问题。通常在以后的芯片修订版中修复。您实际阅读过PIC的勘误表文件了吗?
|
|
|
|
|
|
“勘误表”文档以这样的方式开始:“您所接收到的PIC32 MZ嵌入式连接(EC)家庭设备在功能上与当前的设备数据表(DS600 01191C)一致,除了本文档中描述的异常。”
|
|
|
|
|
|
|
|
|
那么?顺便问一下,你报告的是哪一份文件?
|
|
|
|
|
|
对不起,是的,这里是HTTP//W1.MICCHIP.COM/DeLoSt/En/DeVICECD/O9005888 J.PDF
|
|
|
|
|
|
所以你要么使用精确的晶体,要么使用外部振荡器(如当前开发工具包),或者内部FRC。
|
|
|
|
|
|
使用内部FRC的时刻,它的工作,好。我想我会先看看它是否足够快。谢谢你的帮助,非常感谢。
|
|
|
|
|
|
使用FLR和PLL,你的芯片肯定会跑得足够快。FCR的问题是它对温度的准确性。你注意到PIC32 MZ2048 ECM064是“不推荐用于新的设计”吗?顺便说一下,不客气。
|
|
|
|
|
|
你能在PIC32上禁用MCLR吗?看不见保险丝
|
|
|
|
|
|
你注意到PIC32 MZ2048 ECM064是“不推荐用于新的设计”吗?是的,我现在注意到了…我很久以前开始这个项目,但是已经开始了另一个部分的工作,修改后的原型将有推荐的更换。
|
|
|
|
|
|
显然你不能,只要把它拉上去就行了。
|
|
|
|
|
|
我强烈建议您切换到您的PIC的MZ…EF版本。它们是引脚兼容的,并且您得到的优点是:(大部分)工作ADC。工作PMP(不阻塞设备上的大多数其他引脚)工作SkyWork以太网络更好的USABA(主要)工作主振荡器(Rev)A3)+其他修复的负载和一个FPU抛出!
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1122浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
872浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 22:39 , Processed in 1.015053 second(s), Total 108, Slave 91 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1384