89C51單片機I/O口模擬串行通信實現方法
89C51 單片機通過普通I/O 口與PC 機RS232 串口實現通信的硬件接口電路
3.接口程序設計
軟件設計中,89C51 單片機的P1.0 和P1.1 口分別模擬串行通信的發(fā)送和接收,其接口程序主要由INPUT 發(fā)送子程序和OUTPUT接收子程序組成。通信速率1200 bit /s,幀格式為N.8.1。發(fā)送時,先發(fā)送一個起始位(低電平),接著按低位在先的順序發(fā)送8 位數據,最后發(fā)送停止位。接收時,先判斷P1.1 接收端口是否有起始低電平出現,如有則按低位在先的順序接收8 位數,最后判斷P1.1 口是否有停止高電平出現,如有則完成一個數據接收,否則繼續(xù)等待。其中軟件編寫要嚴格按照異步通信的時序進行,每bit 位傳送時間間隔按通信速率1200 bit /s計算為833μs。
其模擬串行通信程序清單見下,系統(tǒng)要求單片機晶振為6M。程序清單如下:
程序
評論