完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我是一个基于PIC的产品,它是一个运动计时器,我需要用1毫秒的分辨率来测量时间。在5分钟间隔内测量时,精度必须优于5m s。我正在考虑使用PIC32MX795L,但如果有必要,我可以考虑使用dsPIC或其他。振荡器是1ppm20MHz的TCVCXO。我担心中断必须精确地每隔1ms来一次。只要它不随时间累积,少量的抖动是可允许的。这是使用PIC32的,或者我应该看看DSPIC吗?我想用MCP,因为我有一个真正的ICE和一些熟悉的工具。我的光学门将运行前景/背景系统,因为它们真的是简单的设备。他们所要做的就是每1/3毫秒产生一个中断,然后做一些事情,一个纯状态机。(我可能必须为这个部分使用12MHz的振荡器来完成4000个时钟周期/pr中断。)然而,主定时单元有点棘手,因为它需要做更多的事情,比如用户交互、RS-232通信等等。我想这个单元可能运行一个RTOS,比如AVIX-RT、QKernel或者一些东西。否则就不行了。我非常喜欢UCOSII,因为它的文档很好,但是太贵了。FreeRTOS看起来很臃肿,但我被Eclipse的TracaLeZER所吸引。有没有对RTOS的建议?我会有一个支持,由于一个很短的期限和激烈的发展计划。最后,可以使用PLL在时钟生成,还是会引入定时错误?对于等待状态,最好是使用高SysCLK并向Flash、IO等添加等待状态,还是使用较低频率的SysCLK并避免PLL和等待状态?(当然,假设MCU有足够的周期/毫秒来完成它需要做的事情)。如果问题或概念有点难以理解,很抱歉——开火,我会尽我所能去回答!
|
|
相关推荐
18个回答
|
|
|
我对PLL没有把握。但是如果你有一个高优先级的自动重载计时器,那么你就不会错过滴答声。确保中断没有超载,所以它不会等待自己。臃肿是相对的。如果你的芯片已经足够了,那就不是问题了。
|
|
|
|
|
|
一般来说,锁相环不能比相位检测器参考频率周期更高地引入抖动。另外,PLL OFPIC微控制器不跳过参考时钟或输出PLL参考时钟的输出频率。我不担心PLL频率错误,如果PLL配置,参考和输出频率的规格。一旦锁相环被锁定,并且你不改变外部参考时钟,锁相环输出就保持参考时钟滴答滴答。对于RTOS,考虑TNeo。
|
|
|
|
|
|
嗨,如果你使用自动重载定时器,没有定时器抖动,我的意思是它和XTAL或TCXO一样精确。唯一的“延迟”是由于我所说的HW+SW延迟:HW延迟:中断生成和执行中断例程的第一(汇编)指令之间的周期数。倾向:由于序言引起的循环数,即在执行用户ISR的第一条指令之前用于保存上下文的循环数。如果您使用Real-Ice和stop.,那么这次您将能够容易地测量。HW延迟最大值应该在架构手册中覆盖,而SW延迟dep代码的末尾,我的意思是保存上下文所需的代码量取决于用户代码。如果只切换一个标志,SW延迟将最小。如果您开始操纵本地变量,那么SW延迟将增加。顺便说一下,MIPS内核有一个非常有用的特性:它们都包含一个32位的定时器,在协处理器0中称为核心定时器。这个定时器总是以核心频率的一半运行,所以如果您读出它,您就可以清楚地计数任何时间经过的处理器周期的数量。
|
|
|
|
|
|
因为你的应用程序是缓慢的,任何PIC都能在没有汗水的情况下完成它。对于任何PIC的中断,您都会得到一些抖动,但是对于很少有人(不管您使用的PIC)来说,这将是ns。这里的瓶颈当然是用户交互,因为其他一切都可以用最小的PIC16来完成,当然也不需要像RTOS这样的核设备。所以,基本上,你需要弄清楚你的用户交互是什么,然后决定PIC。如果你需要复杂的图形,你需要一些计算能力的MCU和足够的图形内存。如果它相当简单,那么你可以用几乎任何芯片来完成,你的选择应该主要基于诸如成本、尺寸和功耗之类的东西。
|
|
|
|
|
|
如果成本不是很大的问题,那么选择32 MX。我们永远不需要太多的RAM。应用程序对精确定时要求不高,所以任何16或32位的部分都可以工作。您可以考虑https://github.com/andersm/TNKernel-PIC32。
|
|
|
|
|
|
嗨,这很有趣-你有任何信息来源?
|
|
|
|
|
|
同意。通过合理的设计,OP可以用更小的PIC实现他所有的目标,甚至不需要RTOS。我可以自信地陈述这一点,因为我已经用PIC16F1947构建了一些满足OP所有要求的系统:)
|
|
|
|
|
|
嗨,这很有趣-你有任何信息来源?对不起,它是UC/OS- III,请看MICRIUM网站。
|
|
|
|
|
|
对于您所描述的需求,PIC32和RTOS是荒谬的。如果你需要更多的马力,PIC161XXX可以做,或者PIC18FK。这些部件会给你中断的硬实时响应;我不知道PIC32是否是真的。
|
|
|
|
|
|
我同意,为了用一些RS232通信保持一个准确的时间,或者用一个简单的本地LCD字符显示器进行监视,jtemples建议使用PIC16F1xxx或PIC18fxxKxx来完成这项工作。应该为他的定时器中断提供简单的精确预刻度/PR2设置选项,并具有RS232精确波特率设置的附加优点。
|
|
|
|
|
|
与PIC16F1或PIC18完全一致。
|
|
|
|
|
|
我运行我的PIC16F1947设计从32.768MHz的TCXO出于类似的原因,但只有一个正常的晶体将超过足够的大多数目的。
|
|
|
|
|
|
谢谢你的回复!这里有很多很棒的信息。我有一些额外的信息可以解释为什么我(至少到目前为止)认为PIC32可能是最好的。虽然我可以管理64针)3)我想使用跟踪系统加密引导加载器进行字段升级。它在PIC18和PIC32中只可用.4)成本不是什么大问题,但未来证明是5)我的当前原型使用PIC32MX795L(但是我还没有得到编程的关键部分)6)定时必须使用每日时间,即32位。我认为如果MCU具有32位的寄存器处理来原子化地读取/写入时间,以及消息等,那将是不错的(虽然我确信在8位或16位内核中对32位值的多次相等读取将保证不会读取损坏的值)。通过蓝牙的用户界面(按钮和显示器)。它还需要与PC(蓝牙或专有RF通信)和LED计分板(专有RF通信)通信。最后是一个硬接线的POS热敏打印机(RS-232或USB)。我想我可以选择一个RS-232打印机,因为它的健壮性。无论如何,我需要一个RS-232端口进行调试,打印机是最后要添加的,它不是一个时间关键部分。光门将有一个光发射器和接收器阵列来处理,并使用时分复用,使得三个发射器中的每一个ETS 1/3毫秒,用于光传输。主单元将精确地每250毫秒发送一次无线电信号。光门将同时接收来自无线电芯片的硬件中断,它们将运行PID回路,以便它们的可调振荡器总是与主单元同步。我需要这些设备一直同步到200us以内。明天我会让安捷伦53220A计数器到达,以便精确测量中断率。我的TEK2024B告诉我,我的中断正好在3KHz,但是只有大约4到5个有效数字。(运行PIC32 MX795L,20MHz振荡器,12MHz SysCLK)。我将对中断率进行精确的测量,或者作为绝对中断率,或者作为中断率/SYSCLK,并且我应该能够测量每个中断之间的指令周期的确切数量,并且还做统计等。
|
|
|
|
|
|
所以,你有一个主单元和多个光门单元。对的?你们有多少个光闸单元?目前还不清楚光闸上的外围设备是什么。你提到了3个发射机,可能意味着3个接收机,一个来自主单元的同步器,可能还有几个用于通信的引脚。它是11。如果你需要100个引脚部分,这是很多其他外围设备我们不知道。看起来这将被用于外部。如果阳光充足,或者手湿、汗或脏,桌面可能不是用户界面的最佳选择。同样要考虑平板电脑有屏幕保护程序,在你最需要的时候可能隐藏按钮,但是如果你禁用了屏幕保护程序,电池可能不会持续足够长的时间来覆盖你的运动项目。记分牌也更好地从平板电脑。无论如何,你必须编写一个应用程序。平板电脑比PIC更强大,所有的连接手段已经到位。为什么不使用它们呢?
|
|
|
|
|
|
对的。有多达6个光学器件配对形成3个门。虽然没有必要一直使用所有的门。这取决于运动和运动。有很多引脚使用,但很少有实时要求。并非所有100个引脚使用,但它永远不适合在64引脚封装。有LED、RF收发器、3SPI电瓶表、用于固件升级的USB端口、电池充电器和许多光学部件(没有详细介绍)。至于药片,我会使用一个大猩猩类型的iPad。我的是一个高利润的产品,我将只使用最好的,最稳定的片剂(因为致力于注射成型)。这个应用程序已经做得很好,而且电池寿命不是问题。iPad将被一个移动设备管理程序锁定和管理,这样用户就无法用垃圾和游戏来填充它。我可能会使用安卓平板电脑并节省一些钱,但我个人讨厌安卓,我需要完全控制平板电脑以保证它的性能。我不确定Android上是否很容易完成。不幸的是,要求规定打印机必须系好,否则我当然会让iPad运行打印机。对于平板电脑的蓝牙来说,LED记分板可能太远了,我不希望仅仅为了这个目的而引入Wifi,因为它让用户更难设置。但我正在看有iOS API的得分板。但基本上,我认为一个简单的专有射频到RS-232桥在普通的RS-232计分板内会做得很好,我不用担心范围。它只需要在1到4次/秒的刷新率上显示12个左右的数字。
|
|
|
|
|
|
所以,你需要很多插脚,你也需要USB。有PIC18FxJ50和PIC18FxJ94系列,它们大概是您的PIC32价格的一半,所以每套6台光学设备将节省您20美元左右。它们有USB,80引脚(我认为J94也有100引脚型号)可用。看来它们符合你的需要。但是,如果成本对你没有任何关系,而且你已经在PIC32上工作了,那就没有必要换了。我仍然不明白你为什么需要RTOS来做这件事。
|
|
|
|
|
|
谢谢你给我小费,诺斯盖伊。我想我可以考虑PIC18FXJJ92系列,我一定要看一看。我必须验证PIC32能给出周期准确的中断率——如果不是,我将不得不交换PIC18。我不能接受每80000个指令“或多或少”的中断(对于80MHz和1ms的中断率)。它必须是80000准确,而且每次,即使它意味着坚持一些NOP在那里。如果PIC32缓存防止了重复性,那么它就消失了,PIC18进来了。我将尝试PIC32的CaleTimeTM,这似乎是有希望的。至于RTOS,我想你是对的,这有点过火。我认为好处可能会超过成本和复杂性,但我想我可能不得不重新考虑。谢谢大家的回复,很抱歉,没有更详细地讨论PIN计数等问题。
|
|
|
|
|
|
我对PIC32一无所知,但是基于使用类似的部分,我期望您总是得到周期准确的中断定时(基于周期寄存器的定时器计数和重置不受缓存影响),但是当ISR实际执行时,会出现明显的抖动。由于指令缓存。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
508 浏览 0 评论
5813 浏览 9 评论
2351 浏览 8 评论
2238 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3545 浏览 3 评论
1161浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1122浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
890浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
508浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-14 18:07 , Processed in 1.207212 second(s), Total 108, Slave 91 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1729