李 杰 胡衛(wèi)東
ATtiny12單片機(jī)有非常高的性價(jià)比,但是它卻沒有串口。當(dāng)應(yīng)用系統(tǒng)需要1個(gè)UATR口通訊時(shí),就必須要為ATtiny12擴(kuò)展一個(gè)串口。在一些要求不高的場(chǎng)合,可以用軟件模擬一個(gè)UART口正常工作。
1.UART的數(shù)據(jù)格式UART的數(shù)據(jù)格式見附圖。由1個(gè)啟動(dòng)位、8個(gè)數(shù)據(jù)位、1個(gè)停止位,共10位數(shù)據(jù)組成。每位數(shù)據(jù)的寬度T=1/Baud ,要求誤差小于3%(見附表)。
2.發(fā)送的原理 程序先發(fā)送一個(gè)啟動(dòng)位(START),后根據(jù)附表的延時(shí)時(shí)間依次發(fā)送8位數(shù)據(jù)位和停止位。為了防止延時(shí)時(shí)間被其它中斷程序打斷而延長(zhǎng)T,故發(fā)送時(shí)關(guān)閉所有的中斷!