完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨,我的PIC32跑得比预期的慢。我已经阅读了帖子“为什么我的PIC32跑得比预期的慢?”我创建了一个简单的HARMony项目(Harmony 1.06.02、MPLAB X 3.20、XC++1.40、PIC32MZ2048EFH064),并做了一个切换输出引脚的循环。因为它是和谐的,所以SysIDEVCONION PrimeCycFig被调用了,并且我通过在调试器中的单步确认来确认。我确认PRECON寄存器被设置为0x00000030,PRESTAT被设置为0x00000000。为了测试目的,我从FRCDIV振荡器运行,后标量设置为DIV_1。我用示波器检查了RIFCKO1,它是一个8MHz方波。切换引脚的循环在主体()中:编译成两个指令。它产生1MHz的方波。我期望2MHz(8MHz处理器,每平方波4指令)。L1缓存是否无法启用?默认情况下不能和谐吗?我如何检查?还有什么我需要找的吗?我附上了项目源代码,谢谢你的帮助,鲍伯
|
|
相关推荐
5个回答
|
|
它实际上是3条指令,因为J之后也执行NOP。看起来你得到了一个额外的失速,理论上不应该这样,但是…
|
|
|
|
谢谢,NorthGuy。为了测试NOP是否正在进行循环,我试着在循环中放入8个LATBINV=0xffff指令:我仍然得到一个1MHz的方波。有趣的是,每4个周期没有一个额外的延迟(8个指令,每个方波周期的2条指令)。预测预取是否使跳转指令基本上是零时间?问题是:当我期待2MHz的波时,我得到了1MHz的波。-Bob
|
|
|
|
尝试将PB4DIV设置为0
|
|
|
|
非可缓存RAM中的易失性变量的速度如何?它会和SFR一样吗?
|
|
|
|
Timijk,一个循环写入易失性RAM变量,每个SysCLK周期完成一个指令(由于执行流水线)。循环写入LATBSET或LATBIV完成每4个SysCLK周期的一个指令。
|
|
|
|
只有小组成员才能发言,加入小组>>
5160 浏览 9 评论
1998 浏览 8 评论
1927 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3170 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2225 浏览 5 评论
729浏览 1评论
613浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
503浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
628浏览 0评论
526浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 15:49 , Processed in 1.233016 second(s), Total 85, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号