完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
背景:
最近在调试一块TMS320F2812的电路板 使用了2812的UARTA及UARTB 因为是电机系统,所以外接PC机的UARTB加了一个串口隔离芯片后连接外部线缆 UARTA在系统内与另外一颗处理器通讯 设备不允许同时使用两个串口,所以加了保护机制 由于缺件,所以UARTB的串口隔离芯片没有焊接,即SCIBTX和SCIBRX没有接任何连接 调试时发现,串口A数据通讯异常。 问题的解决: 用仿真器跟了下代码,发现上电UARTB会受到0x00,即串口B收到了数据,此时再和串口A通讯,就会触发保护机制,造成串口A通讯异常。 查了一下TMS320F2812的datasheet,有如下发现: 2812的串口A有内部上拉; 2812的串口B没有内部上拉。 对于我的电路板,串口B的RX、TX相当于浮空,由于串口线空闲为高电平,起始位为低电平,所以浮空的管脚可能会到导致上电串口B收到0x00或其他数据。 TMS320F28335没有这个问题: 当初看2812的串口区别时只是注意到了可以串口A下载代码,电路上的这个细节没有注意到。 |
|
相关推荐
2 个讨论
|
|
我的代码是这样的: ... UARTA_RX_ISR() [ ... com_rx(); ... ] UARTB_RX_ISR() [ ... com_rx(); ... ] com_rx是处理串口数据的一个函数,这点不太合理,中断有两个,但是处理数据的函数是共用的! 测试时发现,串口A可以正常接收数据,接收的数据也是对的,但是就是触发保护机制。 在进一步将断电设置在com_rx函数中,才发现上电后代码会运行到这个函数设置断点的地方,此时并没有给串口A发数据。 随后查阅2812数据手册找到了原因,并对比了28335数据手册 |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
442 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
933 浏览 1 评论
538 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
414 浏览 1 评论
970 浏览 0 评论
64浏览 3评论
CC3100BOOST使用CC3200lunchXL进行烧录
913浏览 2评论
TAS5411-Q1喇叭有爆破音,电压就会被拉低,有什么好办法解决吗?
35浏览 2评论
156浏览 2评论
200浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-10-1 11:04 , Processed in 2.786086 second(s), Total 43, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号