D/A 轉(zhuǎn)換器的輸入為數(shù)字量,經(jīng)轉(zhuǎn)換后輸出為模擬量。有關(guān) D/A 轉(zhuǎn)換器的技術(shù)性能指標很多,如絕對精度、相對精度、線性度、輸出電壓范圍、輸入數(shù)字代碼種類等等。本節(jié)僅對幾個與接口有關(guān)的指標作一簡介。
由于單片機只能處理數(shù)字量,因而應(yīng)用系統(tǒng)中凡遇到有模擬量的地方,就要進行模擬量向數(shù)字量或數(shù)字量向模擬量的轉(zhuǎn)換,這就需要解決單片機與 A/D 和 D/A 的接口問題。
在單片機應(yīng)用系統(tǒng)中,常常需要人機對話,因而功能開關(guān)、撥碼器、鍵盤、顯示器和打印機等輸入/輸出設(shè)備就必不可少,本文將介紹一些外部設(shè)備及它們與單片機的接口技術(shù)。
MCS 51 系列單片機具有 64KB 的程序存儲空間,其中 8051 、8071 片內(nèi)有 4KB 的程序存儲器,8031 片內(nèi)無程序存儲器 。當(dāng)采用 8051 、8071 型單片機而程序超過 4KB,或采用 8031 單片機時,就需對程序存儲器進行外部擴展。
其一,是把系統(tǒng)所需的外設(shè)和單片機連接起來,使單片機系統(tǒng)能與外界進行信息交換。如通過鍵盤、A/D 轉(zhuǎn)換器等外部設(shè)備向單片機送入數(shù)據(jù)、命令等有關(guān)信息,去控制單片機運行;通過顯示器、發(fā)光二極管、打印機等設(shè)備把單片機處理的結(jié)果送出來,向人們提供各種信息或?qū)ν饨缭O(shè)備提供控制信號,這項任務(wù)實際上就是單片機接口設(shè)計。
模式 0 又分為模式 0 輸出和模式 0 輸入兩種工作狀態(tài)。但應(yīng)注意:在這種模式下,不管輸出還是輸入,通信數(shù)據(jù)總是從 P3.0(RXD) 管腳輸出或輸入,而 P3.1(TXD) 管腳總是用于輸出移位脈沖,每一個移位脈沖將使 RXD 端輸出或者輸入一位二進制碼。在 TXD 端 的移位脈沖即為模式 0 的波特率,其值固定為晶振頻率 fOSC 的 1/12 ,即每個機器周期移動一位數(shù)據(jù)。
CPU 與外部設(shè)備交換數(shù)據(jù)有并行和串行通信兩種方式。并行通信是指數(shù)據(jù)的各位同時進行傳送的方式。其特點是傳送速度快、效率高,顯然并行傳送的數(shù)據(jù)有多少位,就需要有多少根傳輸線。當(dāng)傳送距離較遠時,位數(shù)較多就會導(dǎo)致通信線路成本的大幅度增加,因此它僅適合于短距離傳送。串行通信是指數(shù)據(jù)的各位按順序一位一位地傳送的通信方式。其特點是只要一對傳輸線就可實現(xiàn)通信,對傳輸?shù)臄?shù)據(jù)較多、距離很遠 時 ,它可以大量節(jié)約系統(tǒng)的硬件投資。因此,在遠距離的數(shù)據(jù)通信系統(tǒng)中一般采用串行通信方式。
TMOD 的地址是 89H ,它不能位尋址 ,它里面的內(nèi)容被稱為方式字,設(shè)置時一次寫入,其各位的定義如圖 6.2 所示。高 4 位用于定時器 T1 ,低 4 位用于定時器 T0 。
單片機定時器其實跟我們平時常說的計數(shù)器,是同一個電子元件,只不過計數(shù)器記錄的是單片機外部情況,所接收的也是外部脈沖,而定時器則是由單片機自身提供的一個非常穩(wěn)定的計數(shù)器,這個穩(wěn)定的計數(shù)器就是單片機上連接的晶振部件。
MCS 51 單片機有 5 個(8052 有 6 個) 中斷源,為了使每個中斷源都能獨立地被允許 或禁止 ,以便用戶能靈活使用,它在每個中斷信號的通道中設(shè)置了一個中斷屏蔽觸發(fā)器。只有該觸發(fā)器無效,它所對應(yīng)的中斷請求信號才能進入 CPU ,即此類型中斷開放。否則,即使其對應(yīng)的中斷標志位置 1 ,CPU 也不會響應(yīng)中斷 ,即此類型中斷被屏蔽了。同時 CPU 內(nèi)還設(shè)置了一個中斷允許觸發(fā)器,它控制 CPU 能否響應(yīng)中斷。
中斷是計算機中一個很重要的概念,中斷技術(shù)的引入使計算機的發(fā)展和應(yīng)用大大地推進了一步。因此,中斷功能的強弱已成為衡量一臺計算機功能完善與否的重要指標之一。
在單片機系統(tǒng)設(shè)計中,程序設(shè)計是重要的一環(huán),它的質(zhì)量直接影響到整個系統(tǒng)的功能。用匯編語言進行程序設(shè)計的過程和用高級語言設(shè)計程序有相似之處,其設(shè)計過程大致可以分為以下幾個步驟:
匯編語言(Assembly Language)是任何一種用于電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。在匯編語言中,用助記符代替機器指令的操作碼,用地址符號或標號代替指令或操作數(shù)的地址。在不同的設(shè)備中,匯編語言對應(yīng)著不同的機器語言指令集,通過匯編過程轉(zhuǎn)換成機器指令。特定的匯編語言和特定的機器語言指令集是一一對應(yīng)的,不同平臺之間不可直接移植。
所謂尋址方式,就是尋找操作數(shù)地址的方式,在用匯編語言編程時,數(shù)據(jù)的存放 、傳送、運算都要通過指令來完成。編程者必須自始至終都要十分清楚操作數(shù)的位置 ,以及如何將它們傳送到適當(dāng)?shù)募拇嫫魅⑴c運算。每一種計算機都具有多種尋址方式 。尋址方式的多少是反映指令系統(tǒng)優(yōu)劣的主要指標之一。尋址方式是匯編語言程序設(shè)計最基本的內(nèi)容之一,必須要十分熟悉。
時序就是 CPU 總線信號在時間上的順序關(guān)系。CPU 的控制器實質(zhì)上是一個復(fù)雜的同 步時序電路,所有工作都是在時鐘信號控制下進行的。每執(zhí)行一條指令,CPU 的控制器都要發(fā)出一系列特定的控制信號,這些控制信號在時間上的相互關(guān)系就是 CPU 的時序。
Wuying00
譚意義
baby321
后一個5年
龍牙
13935218969
st6666
學(xué)吧
jiayouxuexi
Fimer
isabella2019
zspzspzsp
yjm1995
tengfei1266
heisetiantang
YDavy
魚躍此時海
1243907563
慕容垂
QQ23
curryLIHENGLEI
羅晶凡
Liuxds
無心h
與你無瓜
Senmin
夜是打火機
floodsource
tonifyingheart
10468005