蜂鳴器從結(jié)構(gòu)區(qū)分分為壓電式蜂鳴器和電磁式蜂鳴器。壓電式為壓電陶瓷片發(fā)音,電流比較小一些,電磁式蜂鳴器為線圈通電震動(dòng)發(fā)音,體積比較小。
上一節(jié)介紹的是 I2C 每一位信號(hào)的時(shí)序流程,而 I2C 通信在字節(jié)級(jí)的傳輸中,也有固定的時(shí)序要求。I2C 通信的起始信號(hào)(Start)后,首先要發(fā)送一個(gè)從機(jī)的地址,這個(gè)地址一共有7位,緊跟著的第8位是數(shù)據(jù)方向位(R/W),“0”表示接下來要發(fā)送數(shù)據(jù)(寫),‘“1”表示接下來是請(qǐng)求數(shù)據(jù)(讀)。
通過上圖可以看出理想波形與實(shí)際波形之間是有區(qū)別的,實(shí)際波形在按下和釋放的瞬間都有抖動(dòng)的現(xiàn)象,抖動(dòng)時(shí)間的長短和按鍵的機(jī)械特性有關(guān),一般為5~10ms。通常我們手動(dòng)按鍵然后釋放,這個(gè)動(dòng)作中穩(wěn)定閉合的時(shí)間超過了20ms。因此單片機(jī)在檢測鍵盤是否按下時(shí)都要加上去抖動(dòng)操作,有專用的去抖動(dòng)電路,也有專門的去抖動(dòng)芯片,但通常我們采用軟件延時(shí)的方法就可以解決抖動(dòng)問題。
MCS- 51系列單片機(jī)的指令系統(tǒng)是一種簡明高效的指令系統(tǒng),其基本指令共有111條,其中單字節(jié)指令49條,雙字節(jié)指令4\'5條,三字節(jié)指令17條。如果按功能可以講這些指令分為五類:數(shù)據(jù)傳送類(29條)、算術(shù)操作類(24條)、邏輯操作類(24條)、控制轉(zhuǎn)移類(17條)以及位變量操作類(17條)。對(duì)于反向設(shè)計(jì)而言,我們關(guān)心的不是它的各種具體指令的多少而是指令的尋址方式。所謂的尋址方式就是尋找確定參與操作的數(shù)的真正地址。MCS-51系列單片機(jī)的111條指令一共只采用了5種尋址方式。
RS232 標(biāo)準(zhǔn)是誕生于 RS485 之前的,但是 RS232 有幾處不足的地方: 接口的信號(hào)電平值較高,達(dá)到十幾 V,使用不當(dāng)容易損壞接口芯片,電平標(biāo)準(zhǔn)也與 TTL 電平不兼容。
計(jì)時(shí)器記錄單片機(jī)外部發(fā)生的事情;而定時(shí)器是單片機(jī)自身提供的計(jì)數(shù)器,51單片機(jī)經(jīng)過12分頻后提供給單片機(jī)的只有1MHZ的脈沖,脈沖時(shí)間間隔1微秒。MC51外接12M晶振(11.0592MHZ),12MHZ/12=1MHZ=1000000次/秒=1000000次/1000000微秒=1次/1微秒=1指令/1微秒。晶體每震蕩1次就產(chǎn)生1個(gè)脈沖,花費(fèi)1微秒,執(zhí)行一次指令。
AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K系統(tǒng)可編程Flash存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52在洗衣機(jī)得到廣泛應(yīng)用
MCS-51的P0口和P2口可以作為并行擴(kuò)展總線,可以擴(kuò)展64K字節(jié)程序存貯器和64K字節(jié)RAM I/O口
復(fù)位就是指通過某種手段使單片機(jī)內(nèi)部某些資源一種固定的初始狀態(tài),以確保單片機(jī)每次復(fù)位后都能在某一固定的環(huán)境中從某一固定的入口地址處開始運(yùn)行
單片機(jī)CPU與外部設(shè)備交換信息通常有如下幾種方式:無條件傳送方式,查詢傳送方式和中斷傳送方式。我們以單片機(jī)與微型打印機(jī)接口為例講述這三種方式。假定用戶要打印三個(gè)數(shù)據(jù),這三個(gè)數(shù)據(jù)保存在單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器10H,11H,和12H中,8051用并口P2與微型打印機(jī)的并行數(shù)據(jù)口DB進(jìn)行數(shù)據(jù)交換。
8051系列各種芯片的引腳是互相兼容的,8051,8751和8031均采用40腳雙列直播封裝型式。當(dāng)然,不同芯片之間引腳功能也略有差異。8051單片機(jī)是高性能的單片機(jī),因?yàn)槭艿揭_數(shù)目的限制,所以有不少引腳具有第二功能,其中有些功能是8751芯片所專有的
P1口也是一個(gè)準(zhǔn)雙向口,作通用I/O使用。
P2口的位結(jié)構(gòu)與P0口類似,有MUX開關(guān)。驅(qū)動(dòng)部分與P1口類似,但比P1口多了一個(gè)轉(zhuǎn)換部分。
P3口是一個(gè)多功能端口,對(duì)比P1的結(jié)構(gòu)圖不難看出,P3口與P2口的差別在于多了與非門和緩沖器。正是這兩個(gè)部分,使得P3口除了具有P1口的準(zhǔn)雙向I/O功能之外,還可以使用各引腳所具有的第二功能。
8051單片機(jī)有四個(gè)8位并行I/O端口,記作P0,P1,P2和P3.每個(gè)端口都是8位準(zhǔn)雙向口,共占有32條引腳。每一條I/O線都 可以獨(dú)立的用作輸入或輸出。
引腳功能說明:A0-A12為地址線,總共13條,則該存儲(chǔ)器的物理存儲(chǔ)空間有2的13次方,即8K。D0-D7為數(shù)據(jù)總線,共8條,即該存儲(chǔ)器的每個(gè)存儲(chǔ)單元有8位數(shù)據(jù),即通常所說的字節(jié)為8,又叫一個(gè)字節(jié)。CS為片選信號(hào),當(dāng)該信號(hào)為
8051單片機(jī)程數(shù)據(jù)存儲(chǔ)器的擴(kuò)展。 51數(shù)據(jù)存儲(chǔ)器的擴(kuò)展A0-A12為地址線,總共13條,則該存儲(chǔ)器的物理存儲(chǔ)空間有2的13次方,即8K。D0-D7為數(shù)據(jù)總線,共8條,即該存儲(chǔ)器的每個(gè)存儲(chǔ)單元有8位數(shù)據(jù),即通常所說的字節(jié)為8,又
在提高硬件系統(tǒng)抗干擾能力的同時(shí),軟件抗干擾以其設(shè)計(jì)靈活、節(jié)省硬件資源、可靠性好越來越受到重視。下面以MCS-51單片機(jī)系統(tǒng)為例,對(duì)微機(jī)系統(tǒng)軟件抗干擾方法進(jìn)行研究。
MCS51單片機(jī)標(biāo)準(zhǔn)構(gòu)成只有一組全雙工UART串行口,P3.0-RXD收、P3.1-TXD發(fā),如果要完成多路串口收發(fā),一般使用外部擴(kuò)展芯片,例如:GM8123/25,完成一擴(kuò)多路串口,但是,由于增加擴(kuò)展芯片,造成硬件成本增加,PCB板面增大,抗干擾性下降等不良因素,因此能盡量使用現(xiàn)有串口,利用分時(shí)切換技術(shù),完成串行口不同類型,不同端口的數(shù)據(jù)傳送是優(yōu)先選擇。
實(shí)現(xiàn)MCS-51 單片機(jī)嵌入式接入Internet 技術(shù)。單片機(jī)通過ATL8019AS 以太網(wǎng)控制器實(shí)現(xiàn)與Internet 的交互。利用開源代碼的TCP/IP 協(xié)議棧uIP 實(shí)現(xiàn)對(duì)底層設(shè)備的驅(qū)動(dòng),同時(shí)通過uIP 協(xié)議的應(yīng)用程序接口實(shí)現(xiàn)各種應(yīng)用服務(wù)。給出了硬件設(shè)計(jì)圖,編寫了單片機(jī)主程序。應(yīng)用此技術(shù)實(shí)現(xiàn)了一個(gè)城市中心停車監(jiān)測系統(tǒng)。