单片机串行口是怎么进行解码的?
发布网友
发布时间:2022-04-19 23:40
我来回答
共1个回答
热心网友
时间:2023-09-06 11:58
串口通信是直接发原始数据或指令的,最多加上启动位。结束位或校验位
所以不用解码,有错重发
收到数据时有中断,直接去buff读取就可以了
看来要讲详细一点,在UART串行通讯中,单片机把数据01000000B送到buff
,当启动发送时buff会自动把数据串行移出,即把数据的第一位送出,再送第二位。。。
经过232芯片把电平转化成模拟电平
然后到达接收方的232芯片把模拟电平转换成ttl电平
接受时把数据一位一位地移进buff
那么在接收方的buff就会受到01000000b,这是没有经过编码的数据
假如你想把数据加密就把数据变换一下,反正单片机硬件是没有编码系统的
此外,用一般的IO通信看你是实现什么协议,按照该协议来提供时序
一般来说能够模拟的串行通讯有I2C,SPI,SSP等等
再来说说并行通信
假如单片机A往P0口送01110111B,A的p0口接上单片机B的P0口,假如都能识别TTL电平,那么B的p0口上读到的数据就是01110111B