GPIO模拟串口

模拟串口

 

         串口默认的1byte数据格式为(暂不考虑校验位):1bit起始位+8bit数据位+1bit停止位,起始位(S)为低电平,停止位(T)为高电平。具体格式如下图所示

 


若波特率为9600,每s传输9600Bd。二进制下波特率等于比特率。则可看成每s传输9600bit。

1/9600 = 104 us 每104us发送1bit

 

定时器配置为104us触发一次,进入定时器中断。

 

下面以发送1bit START + 1byte DATA + 1bit STOP数据为例

若为发送数据,每104us发送一个bit(即进入TIM中断发送)  则:

先发送START位,为低电平

再发送8bit的数据

最后发送STOP位,为高电平

 

 

若为接收数据,则:

在TIM中断函数中判断RX引脚的电平

平时RX为高电平,若检测到RX为低电平,则表示串口收到数据,开始接收模式。

将START位后的8bit数据接收放入BUFF中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值