ARM7如何用GPIO虚拟串口
2个回答
2013-07-07
展开全部
请你研究下串口的时序,TTL和232电平的时序有点不同。串口通讯一帧数据(也就是一个字节的数据)一般有10位,1位起始位,低电平,8位数据位,1位停止位,高电平。对于串口发送,ARM7上的GPIO就要模拟位发送,输出低电平和高电平。对于输入,要进行电平采样,读出高低电平数据,组成一帧。用GPIO模拟串口,这里主要考虑的问题是串口的波特率,需要GPIO输入输出的频率,模拟出不同的波特率。最后,用GPIO模拟串口,一般来说不太可靠,传输容易掉数据,所以一般要设计出一些协议用来保证数据的可靠传输。
2013-07-07
展开全部
用GPIO模拟串口的时序有些麻烦,如果您是由于所用处理器的UART不够用,而又对成本不敏感的话可选SPI<->UART的芯片。用GPIO模拟,肯定得占用定时器,且即便是按照时序来,可能效率和通讯速率也不课能太高,还有误码率可能会很高。建议使用外接的UART转换芯片。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询