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