AD7543與89C2051實(shí)現串行接口的設計
介紹12位串行輸入的數-模轉換器AD7543通過(guò)89C2051的P1口實(shí)現串行接口的方法。
關(guān)鍵詞:D/A轉換器,單片機,串行接口
1 引言
AD7543是美國AD公司生產(chǎn)的12位CMOS單片串行輸入的數模轉換器(DAC)。它是一種專(zhuān)為串行接口而設計的精密乘法型DAC。其數字數據由高位到低位逐次一位一位地輸入。AD7543的主要特性與技術(shù)指標:
分辨率 12位
非線(xiàn)性誤差 ±1/2LSB
輸入方式 串行
串行加載 正或負選通進(jìn)行
初始化 非同步清除輸入
工作電壓 +5V
最大功耗 400mW
AD7543的片內邏輯電路由12位串行輸入并行輸出移位寄存器(寄存器A)和12位DAC輸入寄存器(寄存器B)組成。出現在A(yíng)D7543的SRI腳上的數據,在選通輸入信號STB1、STB2或STB4的上升沿或STB3的下降沿(由用戶(hù)選擇)情況下,定時(shí)地把SRI腳上的串行數據裝入寄存器A,一旦寄存器A裝滿(mǎn),在加載脈沖的控制下,寄存器A的數據便裝入寄存器B。
2 接口方式
89C2051是一種高性能單片機,與MCS51系列指令高度兼容,由于無(wú)專(zhuān)用的串行數據接口,只能通過(guò)可編程的I/O腳和相應的軟件,實(shí)現與AD7543的接口。從圖1可知,P1.0為串行數據輸出口,它與AD5743的SRI相連;AD7543內部寄存器A四個(gè)控制輸入端之一的STB1與P1.1相連作為接收數據的脈沖,STB2、STB4接地,STB3接+5V;AD7543的寄存器B清零輸入CLR與P1.3相連;寄存器B的兩個(gè)控制加載輸入端LD1、LD2分別接地和接P1.2。硬件電路連接完成以后,剩下的就是軟件工作。
51系列豐富的指令系統,給串行輸入的D/A轉換帶來(lái)了極大的方便。假設12位的數據分別放在單片機R2、R3寄存器中,通過(guò)對單片機的累積器A、進(jìn)位標志和P1口的操作,就可實(shí)現串行數據的傳輸。下面為D/A轉換子程序清單:
STATR: CLR P1.3
CLR P1.3
SETB P1.2
CLR C
CLR A
MOVA, R2
MOV R7, #4
LOOP1: PLC A
DJNE R7, LOOP1
MOV R7,?。?
LOOP2: LCALL PRD
DJNE R7, LOOP2
CLR C
CLR A
MOV A, R3
MOV R7, #8
LOOP3:LCALL PRD
DJNE R7,LOOP3
CPL P1.2裝入數據,啟動(dòng)轉換
RET
讀數據子程序:
PRD: RLC A
MOV P1.0,C
SETB P1.1
CPL P1.1
RET
以上給出的程序,可單獨作為調用AD7543轉換器與51系列單片機串行接口的子程序。
3 結束語(yǔ)
這種接口方法充分利用了單片機自身的軟、硬件資源,簡(jiǎn)化了電路設計。但因數據是被逐個(gè)讀入的,而且還與轉換器的數據位數有關(guān),故這種接口方式僅適用于對時(shí)間要求不高場(chǎng)合。
1 涂時(shí)亮等.單片機軟件設計技術(shù).科學(xué)技術(shù)方獻出版社重慶分社
2 AT89C系列單片機技術(shù)手冊.北京威立姆電子技術(shù)有限責任公司
評論