最近项目中STM32的串口资源紧张,于是使用IO口进行模拟串口,使用原子的Mini STM32 V3.2开发板进行实验。IO口模拟串口的思路也比较简单,一切按照串口协议进行操作即可。对于发送,计算好不同波特率对应的延时时间进行数据发送即可。对于接收,稍微复杂。通过外部中断检测接收管脚的下降沿,检测到起始信号后开启定时器,定时器按照波特率设定好时间,每隔一段时间进入定时器中断接收数据,完成一个字节后关闭定时器。: I u6 N4 V3 A3 y2 E6 V 测试Demo说明: * TXD : PC13& r0 V5 o) \! j * RXD : PB142 Z& [6 ?/ L9 e+ |9 e9 B' e- ?6 z4 N * 波特率:9600 ,1-8-N+ {* d o6 y' j o3 U *Demo功能: 接收11个数据,然后把接收到的数据发送出去。 |
不错不错 |
不错,赞一个 |
不知,支持,收藏! |
灰常有用哦 |
115200 的怎么计算哦 |
模拟串口我一直不看好,太占资源了.如果串口多了,我情愿用2个芯片,反正芯片便宜。这样软件就好写多了。 |