共模干擾指的是干擾電壓在信號線及其回線(一般稱為信號地線)上的幅度相同,這里的電壓以附近任何一個(gè)物體(大地、金屬機(jī)箱、參考地線板等)為參考電位,干擾電流回路則是在導(dǎo)線與參考物體構(gòu)成的回路中流動(dòng)。
單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與開發(fā)主要包括五部分內(nèi)容:方案論證,硬件系統(tǒng)的設(shè)計(jì),系統(tǒng)軟件的設(shè)計(jì),系統(tǒng)仿真調(diào)試和脫機(jī)運(yùn)行。各部分詳細(xì)內(nèi)容如圖 8.1 所示。
D/A 轉(zhuǎn)換器的輸入為數(shù)字量,經(jīng)轉(zhuǎn)換后輸出為模擬量。有關(guān) D/A 轉(zhuǎn)換器的技術(shù)性能指標(biāo)很多,如絕對精度、相對精度、線性度、輸出電壓范圍、輸入數(shù)字代碼種類等等。本節(jié)僅對幾個(gè)與接口有關(guān)的指標(biāo)作一簡介。
由于單片機(jī)只能處理數(shù)字量,因而應(yīng)用系統(tǒng)中凡遇到有模擬量的地方,就要進(jìn)行模擬量向數(shù)字量或數(shù)字量向模擬量的轉(zhuǎn)換,這就需要解決單片機(jī)與 A/D 和 D/A 的接口問題。
在單片機(jī)應(yīng)用系統(tǒng)中,常常需要人機(jī)對話,因而功能開關(guān)、撥碼器、鍵盤、顯示器和打印機(jī)等輸入/輸出設(shè)備就必不可少,本文將介紹一些外部設(shè)備及它們與單片機(jī)的接口技術(shù)。
MCS 51 系列單片機(jī)具有 64KB 的程序存儲空間,其中 8051 、8071 片內(nèi)有 4KB 的程序存儲器,8031 片內(nèi)無程序存儲器 。當(dāng)采用 8051 、8071 型單片機(jī)而程序超過 4KB,或采用 8031 單片機(jī)時(shí),就需對程序存儲器進(jìn)行外部擴(kuò)展。
其一,是把系統(tǒng)所需的外設(shè)和單片機(jī)連接起來,使單片機(jī)系統(tǒng)能與外界進(jìn)行信息交換。如通過鍵盤、A/D 轉(zhuǎn)換器等外部設(shè)備向單片機(jī)送入數(shù)據(jù)、命令等有關(guān)信息,去控制單片機(jī)運(yùn)行;通過顯示器、發(fā)光二極管、打印機(jī)等設(shè)備把單片機(jī)處理的結(jié)果送出來,向人們提供各種信息或?qū)ν饨缭O(shè)備提供控制信號,這項(xiàng)任務(wù)實(shí)際上就是單片機(jī)接口設(shè)計(jì)。
TMOD 的地址是 89H ,它不能位尋址 ,它里面的內(nèi)容被稱為方式字,設(shè)置時(shí)一次寫入,其各位的定義如圖 6.2 所示。高 4 位用于定時(shí)器 T1 ,低 4 位用于定時(shí)器 T0 。
單片機(jī)定時(shí)器其實(shí)跟我們平時(shí)常說的計(jì)數(shù)器,是同一個(gè)電子元件,只不過計(jì)數(shù)器記錄的是單片機(jī)外部情況,所接收的也是外部脈沖,而定時(shí)器則是由單片機(jī)自身提供的一個(gè)非常穩(wěn)定的計(jì)數(shù)器,這個(gè)穩(wěn)定的計(jì)數(shù)器就是單片機(jī)上連接的晶振部件。
MCS 51 單片機(jī)有 5 個(gè)(8052 有 6 個(gè)) 中斷源,為了使每個(gè)中斷源都能獨(dú)立地被允許 或禁止 ,以便用戶能靈活使用,它在每個(gè)中斷信號的通道中設(shè)置了一個(gè)中斷屏蔽觸發(fā)器。只有該觸發(fā)器無效,它所對應(yīng)的中斷請求信號才能進(jìn)入 CPU ,即此類型中斷開放。否則,即使其對應(yīng)的中斷標(biāo)志位置 1 ,CPU 也不會響應(yīng)中斷 ,即此類型中斷被屏蔽了。同時(shí) CPU 內(nèi)還設(shè)置了一個(gè)中斷允許觸發(fā)器,它控制 CPU 能否響應(yīng)中斷。
在單片機(jī)系統(tǒng)設(shè)計(jì)中,程序設(shè)計(jì)是重要的一環(huán),它的質(zhì)量直接影響到整個(gè)系統(tǒng)的功能。用匯編語言進(jìn)行程序設(shè)計(jì)的過程和用高級語言設(shè)計(jì)程序有相似之處,其設(shè)計(jì)過程大致可以分為以下幾個(gè)步驟:
匯編語言(Assembly Language)是任何一種用于電子計(jì)算機(jī)、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。在匯編語言中,用助記符代替機(jī)器指令的操作碼,用地址符號或標(biāo)號代替指令或操作數(shù)的地址。在不同的設(shè)備中,匯編語言對應(yīng)著不同的機(jī)器語言指令集,通過匯編過程轉(zhuǎn)換成機(jī)器指令。特定的匯編語言和特定的機(jī)器語言指令集是一一對應(yīng)的,不同平臺之間不可直接移植。
出于種種原因,光環(huán)效應(yīng)之下,相比高端大牌,中小品牌在客戶或大眾眼里留下的印象通常很淡,與其真正實(shí)力完全不匹配,其間的差距比起最抽象的后現(xiàn)代派畫還要夸張扭曲。
從各個(gè)方面來看,臺灣與大陸廠商確實(shí)距離歐美大廠有相當(dāng)一段距離。但捫心自問,它們是否真那么不堪?又有幾個(gè)人去認(rèn)真研究,甚至花時(shí)間對這些產(chǎn)品進(jìn)行過仔仔細(xì)細(xì)的測試?說到底,通常不過就是是心態(tài)和情緒作怪,而這都源于我們的不了解,所謂信心也就更加無從談起
早在十幾年前,市場上就一直有不少配置、引腳,乃至價(jià)格都和STM8S003F3P6相當(dāng)?shù)牡蛢r(jià)單片機(jī),其中一些價(jià)格甚至可以低至一塊以下,基本上都是國產(chǎn)廠商,當(dāng)然也有一部分日系,比如曾經(jīng)的NEC。但對這些國產(chǎn)單片機(jī),我們的評價(jià)一直都不高。這款單片機(jī)最早大概在2012年前后面世——現(xiàn)在我能找到關(guān)于它的最早討論是2012年6月。意法當(dāng)時(shí)推出這款單片機(jī)意圖非常明顯:進(jìn)一步蠶食STM32還不能完全覆蓋的低端市場——還有人認(rèn)為,意法最終的目標(biāo)其實(shí)是,進(jìn)一步把這些開發(fā)者引向STM32。赤裸裸的,簡直司馬昭之心路人皆知。
也許,uC這個(gè)詞從來沒有正式出現(xiàn)過,但它所代表的那些6腳、8腳單片機(jī)正變地越來越常見,正在逐漸模糊核心處理器和外圍分立元件之間的界線,并有逐步替代基礎(chǔ)數(shù)字邏輯功能、小型數(shù)字模擬混合芯片的趨勢。因?yàn)樗?、低成本、功能精干…對于這個(gè)越來越智能化的世界,這個(gè)單片機(jī)里的小不點(diǎn)也許會成為物聯(lián)網(wǎng)這張網(wǎng)上的最后一粒“塵?!薄?/p>
時(shí)序就是 CPU 總線信號在時(shí)間上的順序關(guān)系。CPU 的控制器實(shí)質(zhì)上是一個(gè)復(fù)雜的同 步時(shí)序電路,所有工作都是在時(shí)鐘信號控制下進(jìn)行的。每執(zhí)行一條指令,CPU 的控制器都要發(fā)出一系列特定的控制信號,這些控制信號在時(shí)間上的相互關(guān)系就是 CPU 的時(shí)序。
20 世紀(jì) 90 年代以來,單片機(jī)發(fā)展異常迅速,各大芯片廠商都十分重視新型單片機(jī) 的 研制、生產(chǎn)和推廣,單片機(jī)已成為一種“嵌入式”控制芯片,其技術(shù)發(fā)展主要表現(xiàn)在 以下幾 個(gè)方面。
存儲器是單片機(jī)的又一個(gè)重要組成部分,存儲容量為256個(gè)單元的存儲器結(jié)構(gòu)中每個(gè)存儲單元對應(yīng)一個(gè)地址,256個(gè)單元共有256個(gè)地址,用兩位16進(jìn)制數(shù)表示,即存儲器的地址(00H~FFH)。存儲器中每個(gè)存儲單元可存放一個(gè)八位二進(jìn)制信息,通常用兩位16進(jìn)制數(shù)來表示,這就是存儲器的內(nèi)容。存儲器的存儲單元地址和存儲單元的內(nèi)容是不同的兩個(gè)概念,不能混淆。
上述產(chǎn)品既有很多共性,又各具一定的特色,在市場上都占有一席之地 。根據(jù)近年來的有關(guān)統(tǒng)計(jì),Intel 公司的單片機(jī)市場占有率為 67% ,其 中 MCS 51 系列產(chǎn) 品又 占 54% , 仍為主流系列。