完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我有一个问题,使用UART2的DSPIC33 EV256M106微控制器。我的代码编译得很好,我能看到从端口(RB4)发出的信号,但是我在终端接收的数据是错误的。我使用DSPIC33 EV 5V CAN-LIN启动套件和CP2102 UART-USB桥进行连接。下面的代码
|
|
相关推荐
7个回答
|
|
FYI-同样的问题被问到athttp://www.edaboard.com/thread347692.html。顺便问一下,您是指dsPIC33EV256GM106设备吗?苏珊
|
|
|
|
是的,我在edaboard上也展开了同样的讨论。你是对的,芯片确实是dsPIC33EV256GM106,它是用在dsPIC33EV 5V CAN-LIN启动器套件中的芯片。
|
|
|
|
通常是错误的波特率…你能检查一下范围吗?
|
|
|
|
我发现了问题,在BAUDRATE中有一个错误,尤其是define BRGVAL((FCAN/BAUDRATE)/16)-1必须更改为define BRGVAL((FCAN/BAUDRATE)/4)-1,因为我使用BRGH=1(还用示波器检查过)。现在我有另一个问题而不是你好,我收到了HLO,所以消息的某些部分丢失了。
|
|
|
|
看起来每个第二个字符都可能丢失。它可以接受下一个。苏珊
|
|
|
|
OP的原始PUT2()代码似乎是正确的。但是我看过两次(PIC24HJ64GP202和dsPIC256GP506),当CPU以最高速度运行时,外围比特UTXBF可能设置得太晚,紧凑的传输循环可能检查UTXBF太早。由于UTXBF设置较晚,固件将看到空闲缓冲区,并将下一个字符放入实际完整的缓冲区,并覆盖前一个字符。我知道至少一个解决办法:在TXBF检查之前等待一些Tcys。另一个解决办法是针对UART Tx中断的传输。
|
|
|
|
我发现了问题,它是在PUSU2函数上的。我必须将输入改为char,所以字符串的进程是8位,否则int是16位,并且函数缺少偶数字符。谢谢大家的帮助。把这个代码作为这个评估板的参考是很好的。
|
|
|
|
只有小组成员才能发言,加入小组>>
5132 浏览 9 评论
1985 浏览 8 评论
1914 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3153 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2213 浏览 5 评论
699浏览 1评论
589浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
470浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
606浏览 0评论
497浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-5 06:01 , Processed in 1.177990 second(s), Total 58, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号