單片機的重要性不言而喻,工業(yè)環(huán)境下,單片機發(fā)揮著重要作用。那么,你對單片機到底有多熟悉呢?為增進大家對單片機的認識,本文將對單片機相關內(nèi)容予以介紹。通過本文,你將對51單片機、51單片機通信協(xié)議有所了解。如果你對單片機或者51單片機具有興趣,不妨繼續(xù)往下閱讀哦。
一、51單片機
51單片機是對所有兼容Intel 8031指令系統(tǒng)的單片機的統(tǒng)稱。該系列單片機的始祖是Intel的8004單片機,后來隨著Flash rom技術的發(fā)展,8004單片機取得了長足的進展,成為應用最廣泛的8位單片機之一,其代表型號是ATMEL公司的AT89系列,它廣泛應用于工業(yè)測控系統(tǒng)之中。很多公司都有51系列的兼容機型推出,今后很長的一段時間內(nèi)將占有大量市場。51單片機是基礎入門的一個單片機,還是應用最廣泛的一種。需要注意的是51系列的單片機一般不具備自編程能力。
同樣的一段程序,在各個單片機廠家的硬件上運行的結果都是一樣的,如ATMEL的89C51(已經(jīng)停產(chǎn))、89S51, PHILIPS,和WINBOND等,我們常說的已經(jīng)停產(chǎn)的89C51指的是ATMEL公司的 AT89C51單片機,同時是在原基礎上增強了許多特性,如時鐘,更優(yōu)秀的是由Flash(程序存儲器的內(nèi)容至少可以改寫1000次)存儲器取代了原來的ROM,AT89C51的性能相對于8051已經(jīng)算是非常優(yōu)越的了。
不過在市場化方面,89C51受到了PIC單片機陣營的挑戰(zhàn),89C51最致命的缺陷在于不支持ISP功能,必須加上ISP功能等新功能才能更好延續(xù)MCS-51的傳奇。89S51就是在這樣的背景下取代89C51的,89S51已經(jīng)成為了實際應用市場上新的寵兒,作為市場占有率第一的Atmel公司已經(jīng)停產(chǎn)AT89C51,將用AT89S51代替。89S51在工藝上進行了改進,89S51采用0.35新工藝,成本降低,而且將功能提升,增加了競爭力。89SXX可以向下兼容89CXX等51系列芯片。同時,Atmel不再接受89CXX的定單,大家在市場上見到的89C51實際都是Atmel前期生產(chǎn)的巨量庫存而已。如果市場需要,Atmel當然也可以再恢復生產(chǎn)AT89C51。
二、51單片機之uart通信協(xié)議
UART即通用異步收發(fā)傳輸器,工作于數(shù)據(jù)鏈路層。包含了RS-232、RS-422、RS-485串口通信和紅外等等。UART協(xié)議作為一種低速通信協(xié)議,廣泛應用于通信領域等各種場合。UART基本可分為并口通信及串口通信兩種。
異步串口通信協(xié)議,工作原理是將傳輸數(shù)據(jù)的每個字符以串行方式一位接一位的傳輸。
UART協(xié)議中,每一位(bit)的意義如下:
起始位:先發(fā)出一個邏輯“0”的信號,表示傳輸字符的開始。數(shù)據(jù)位:緊跟起始位之后。數(shù)據(jù)位的個數(shù)可以是4、5、6、7、8等,構成一個字符。通常采用ASCII碼。從最低位開始傳送,靠時鐘來定位。
奇偶校驗位:數(shù)據(jù)位加上這一位后(跟在數(shù)據(jù)位尾部),使得“1”的位數(shù)應為偶數(shù)(偶校驗)或奇數(shù)(奇校驗),以此來校驗數(shù)據(jù)傳送的正確性。
停止位:它是一個字符數(shù)據(jù)的結束標志。可以是1位、1.5位、2位的高電平(邏輯“1”)。
空閑位:處于邏輯“1”狀態(tài),表示當前線路上沒有數(shù)據(jù)的傳送。波特率:是衡量數(shù)據(jù)傳輸速率的指針。表示為每秒鐘傳送的二進制位數(shù)(bit數(shù))。例如資料傳送速率為120字符/秒,而每一個字符為10位,則其傳送的波特率為10×120=1200字符/秒=1200波特。
軟件UART控制:在嵌入式系統(tǒng)或者計算機中,并非直接對串口直接進行操作,而是通過SCI模塊對其進行控制。常用的許多芯片中都包含了SCI,例如ARM的S3C2410X芯片內(nèi)嵌了3個串行接口控制器,而Nios等軟核芯片則可以用選用UART(RS232)的IP對UART進行控制。PC機則常用16650UART、16750UART等控制串口。
如果實現(xiàn)軟件操作UART時,在UART檢查端口管腳的串行活動時,需要占用大量時間,讓應用程序停滯,這會使得軟件UART沒有意義。但情況并非如此,來看一下標準的10位異步串行協(xié)議收發(fā)一個字符時的情況。
數(shù)字系統(tǒng)方面,我們可以用一對狀態(tài)機來表征軟件UART的行為,一個狀態(tài)機用于發(fā)送字符,另一個用于接收字符。對一個全雙工的UART而言,這兩個狀態(tài)機是并行運行的,需要兩個獨立的定時器中斷。這兩個狀態(tài)機都有主動和被動兩種模式。發(fā)送狀態(tài)機在收到一個需發(fā)送的字符時跳出空閑狀態(tài),在結束位發(fā)送之后回到空閑狀態(tài)。接收狀態(tài)機在檢測到接收線上的一個下降沿時跳出空閑狀態(tài)。在檢測到這個初始的低電平狀態(tài)之后,開始對位時隙進行遞減計數(shù),同時按要求采樣信號線上的每個信號位,包括停止位。
以上便是此次小編帶來的“單片機”相關內(nèi)容,通過本文,希望大家對51單片機、51單片機通信協(xié)議具備一定的了解。如果你喜歡本文,不妨持續(xù)關注我們網(wǎng)站哦,小編將于后期帶來更多精彩內(nèi)容。最后,十分感謝大家的閱讀,have a nice day!