完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
你好。我使用DMA将RAM表中的变量复制到DAC中,以产生一些复杂的信号。问题是,输出频率取决于一些IO端口的状态,比如:(ENABLE_INPUT)OUTPUT_RELAY=0;否则OUTPUT_RELAY=1;IfENABLE_INPUT为1,频率为38Khz。输入频率为0,频率为37.9kHz。为什么会这样?
|
|
相关推荐
6个回答
|
|
嗯,你/我们应该分析生成的代码…
|
|
|
|
你是如何测量频率的?你的频率测量的准确度/分辨率是多少?你是用内部或外部振荡器来驱动核心和/或PWM吗?输出继电器I/O连接到什么?当断言否定时,输出继电器对电源电压电平和噪声有什么影响?这对振荡器频率有什么影响?事实上,这些都是非常基本的检查点,你甚至应该在这里进行检查。我说这是罪,希望别人会注意到并学习。
|
|
|
|
我用实验室的频率计测量它,它非常精确。我的MCU是由外部时钟发生器驱动的,它也是稳定和精确的。它并不重要,在哪里连接DOOUTPUT_RELAY I/O。它可以浮动或连接到负载,没有效果。实际上,效果看起来像是输入输入,而不是输出。我确信它是有图片的。也许因为DMA和IO通过相同的数据总线连接,或者…
|
|
|
|
嗨,DMA和CPU必须使用相同的系统总线资源来传输数据。我没有详细研究过PIC24,但是您也不知道您使用的是什么芯片类型。如果增加外围总线通信量,可能需要等待。因为您没有说明2行代码片段是如何以及多久使用一次。执行完后,不可能知道这对DMA性能的影响有多大。如果在主程序中“空闲”循环中执行2行代码片段,而没有进行其他操作,那么它将使用与DMA访问DAC相同的总线,生成到SFR寄存器的大量通信量。仍然令人困惑的是,将位设置为1会导致与将相同位设置为0不同的性能,但是由于测试的结果,循环中的指令数量,以及因此SFR访问的频率可能不同。在设备su中,SFR外围控制寄存器被声明为易失性的。pPATH文件,因此编译器不能优化代码,只做一次IO设置。迈西尔
|
|
|
|
是的,好像问题是在公共汽车上。对我来说是坏消息。我想知道,有没有办法产生57khz信号的精确定时,并做一些UART和端口IO操作的同时。目前我使用的是PIC24FJ128。
|
|
|
|
您好,您仍然没有提供精确的信息。在PIC24FJ128中,只告诉您正在使用的芯片中的内存大小,而不告诉有哪些外围设备。由于您没有指定说明哪些外围设备可用的字母代码,因此为了创建固定频率信号,我建议您使用Refe。在一些芯片中可用的,而在其他设备中不可用的。为了生成任意的复杂信号,您的DMA方法可能仍然很好。如果您避免使外围总线被不必要的通信量淹没。UART和“某个端口IO”,通常不应该导致很多外围设备。1总线流量,如果固件设计得很仔细,那么使用定时器和中断,而不是一直轮询SFR寄存器。任何活动都可能导致短期抖动,但是您也没有精确地定义你的意思,但是您似乎希望超过1/400.57kHz不是高频率。考虑到PIC24的指令时钟频率,PIC24应该能够在软件中做到这一点,只使用一个定时器中断。PIC24FJ具有7个可以使用的抢占式中断优先级,以及几个具有周期重载寄存器的定时器/计数器。带有或不带有晶体振荡器使用PLL,你仍然必须选择一个定时器周期设置,它是从指令时钟频率的整数除法。迈西尔
|
|
|
|
只有小组成员才能发言,加入小组>>
5238 浏览 9 评论
2028 浏览 8 评论
1950 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3204 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2253 浏览 5 评论
774浏览 1评论
664浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
592浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
674浏览 0评论
574浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 18:27 , Processed in 1.330600 second(s), Total 57, Slave 50 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号