[开发资料] MCU(UART):串口的RX和TX如何使其反相输出?

[复制链接]
225|8
小海师 发表于 2025-8-11 17:26 | 显示全部楼层 |阅读模式
关于MCU的串口功能,有的用户为了保护MCU不被其他干扰通过UART口进来,就需要加一个三极管防反,但是加了三极管后,由于串口本身的特性,会导致三极管无法正常开启和关闭;这时候就需要使用串口的反相输出功能;也就是说当TX脚输出高时,反向后要求其输出低,当TX输出低时,反向后要求其输出高;且需要TX的空闲状态为低电平。

大部分MCU均有一个隐藏的功能,(我之前也没有注意到),就是TX和RX的反相控制。以CW32L010为例,是在UART_CR2寄存器里,如下图:




正常这一位默认的是0,只有当有需要时才需要手动把它置1 ,写法如下:




修改完后TX脚的输出空闲电平就会变为低电平,达到用户目的:




————————————————
版权声明:本文为CSDN博主「叁柒丸子」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_65220915/article/details/149860124

AdaMaYun 发表于 2025-9-18 09:57 | 显示全部楼层
反相输出是不是需要添加反相器
星辰伴梦 发表于 2025-9-19 12:14 | 显示全部楼层
我之前也遇到过类似的问题,通过修改UART_CR2寄存器确实可以解决
小小蚂蚁举千斤 发表于 2025-9-23 08:14 | 显示全部楼层
增加反相器应该就可以的
jf101 发表于 2025-9-23 15:16 | 显示全部楼层
有的MCU有相关的设置
中国龙芯CDX 发表于 2025-9-25 14:15 | 显示全部楼层
这种情况建议更换引脚定义吧
OKAKAKO 发表于 2025-9-26 15:25 | 显示全部楼层
一般设置里面有或者修改引脚对应关系增加硬件
星辰大海不退缩 发表于 2025-9-27 14:24 | 显示全部楼层
增加反相器应该就可以的
小夏天的大西瓜 发表于 2025-9-28 14:43 | 显示全部楼层
i一般常规操作增加反相器
您需要登录后才可以回帖 登录 | 注册

本版积分规则

79

主题

242

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部