單片機(jī)原理實(shí)驗(yàn)指導(dǎo)書2013(含課程設(shè)計(jì))_第1頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)書2013(含課程設(shè)計(jì))_第2頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)書2013(含課程設(shè)計(jì))_第3頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)書2013(含課程設(shè)計(jì))_第4頁(yè)
單片機(jī)原理實(shí)驗(yàn)指導(dǎo)書2013(含課程設(shè)計(jì))_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單 片 機(jī) 原 理實(shí) 驗(yàn) 指 導(dǎo) 書丁易新 編安徽工業(yè)大學(xué)電氣信息學(xué)院2012年6月實(shí)驗(yàn)01 Keil Vision編程平臺(tái)與匯編指令練習(xí)一、實(shí)驗(yàn)器材1 微型計(jì)算機(jī)2 單片機(jī)硬件開發(fā)實(shí)驗(yàn)裝置3 實(shí)驗(yàn)裝置下載線二、實(shí)驗(yàn)?zāi)康?. 熟悉uVision3集成調(diào)試環(huán)境2. 熟悉MCS-51尋址方式及傳送類指令三、實(shí)驗(yàn)要求與任務(wù)傳送類指令練習(xí)。單步逐條向下執(zhí)行指令。每執(zhí)行一條指令,都要分析一下指令源操作數(shù)、目的操作數(shù)在存儲(chǔ)空間的哪個(gè)單元,看一看你所理解的指令執(zhí)行結(jié)果與實(shí)際運(yùn)行結(jié)果是否符合,并且把每條指令執(zhí)行后目的操作數(shù)的值記錄下來。MCS-51單片機(jī)的存儲(chǔ)空間如表所示:數(shù)據(jù)空間程序空間片內(nèi)/片外片內(nèi)片外片

2、內(nèi)片外尋址方式RAM直接間接SFR直接尋址RAM間接尋址RAM間接尋址ROM間接尋址ROM間接尋址ROM間接尋址空間范圍00-7FH80-FFH80H-FFH0000-FFFFH0000-0FFFH0000-0FFFH1000H-0FFFFH表示方法DATASFRIDATAXDATACODECODECODE1 直接尋址只能在DATA 區(qū)和SFR 中進(jìn)行,如下例ORG 0000HLJMP STARTORG 0100HSTART: ; 此處加入RAM的初始化程序(見下文) MOV A, 03H ; 把地址03H 中的數(shù)移入累加器 MOV 43H, 22H ; 把地址22H 中的數(shù)移入地址43H 中

3、 MOV 02H, C ; 把Cy中的數(shù)移入位地址02H 中 MOV 42H, #18H ; 把立即數(shù)18 移入地址42H 中 MOV 09H, P1 ; 把端口1中的數(shù)移入地址09H 中 SJMP $END2間接尋址要使用DPTR,PC ,R0, R1 寄存器作為指針訪問各存儲(chǔ)器??稍L問的空間為CODE、IDATA、XDATA存儲(chǔ)區(qū),對(duì)DATA 存儲(chǔ)區(qū)也可進(jìn)行間接尋址。只能用直接尋址方式對(duì)位地址進(jìn)行尋址。XDATA 區(qū)尋址: ORG 0000H LJMP START ORG 0100HSTART: ; 此處加入RAM的初始化程序(見下文) MOV DPTR, #3048H ; DPTR 指向

4、外部存儲(chǔ)區(qū) MOVX A, DPTR ; 讀入外部存儲(chǔ)區(qū)地址3048H 中的數(shù) INC DPTR ; 指針加一 MOV A, #26H ; 立即數(shù)26H 寫入A 中 MOVX DPTR, A ; 將26H 寫入外部存儲(chǔ)區(qū)地址3049H 中 SJMP $ENDCODE區(qū)尋址:查CODE區(qū)的平方表: ORG 0000H LJMP START ORG 0100HSTART: MOV DPTR, #TABLE_BASE ; DPTR 指向表首地址 MOV A, #5 ; 把偏移量(立即數(shù)5)裝入累加器中 MOVC A, A+DPTR ; 從表中讀出數(shù)據(jù)到累加器中(5的平方) SJMP $TABLE_B

5、ASE: DB 0,1,4,9,16,25,36 ; 平方表END四、實(shí)驗(yàn)步驟: 創(chuàng)建項(xiàng)目 第一次使用,首先為我們編寫的實(shí)驗(yàn)程序在D盤上新建一個(gè)文件夾D:單片機(jī)實(shí)驗(yàn); 啟動(dòng)keil uVision2,新建一個(gè)項(xiàng)目文件并從器件庫(kù)中選擇一個(gè)器件,操作步驟如下:?jiǎn)?dòng)keil uVision2;新建一個(gè)項(xiàng)目文件:從菜單Project中選擇New Project。選擇保存路徑(至D:單片機(jī)實(shí)驗(yàn))輸入項(xiàng)目文件名 (例:shiyan)點(diǎn)擊保存選擇CPU:彈出對(duì)話框Select Device for Target,為項(xiàng)目選擇CPU。我們選擇Atmel下的AT89C51。彈出對(duì)話框,詢問是否添加標(biāo)準(zhǔn)的啟動(dòng)代碼到

6、你的項(xiàng)目,不理會(huì),點(diǎn)擊NO。新建一個(gè)源文件從菜單File選擇New來新建一個(gè)源文件。在text1編輯窗口中輸入程序。把程序保存在D:單片機(jī)實(shí)驗(yàn)。由于是匯編程序,輸入文件名時(shí)一定輸入擴(kuò)展名“.asm”。例:shiyan.asm。 將你的源文件加入到你的項(xiàng)目中 在你的Project Workspace窗口中點(diǎn)擊Target 1前“+”,展開Source Group 1; 右擊Source Group 1,出現(xiàn)菜單,選擇Add files to Group “Suorce Group 1”選項(xiàng); 彈出對(duì)話框。選擇你剛剛生成的文件。例:shiyan.asm。文件類型選擇 asm source file

7、點(diǎn)擊Add后關(guān)閉對(duì)話框。 編譯(或匯編)你的源程序 點(diǎn)擊菜單Project下Options for Target彈出對(duì)話框Options for Target target1。 Xtal:定義CPU時(shí)鐘,12MHz。 下面依次是編譯的存儲(chǔ)模式、程序空間大小等設(shè)置,均使用默認(rèn)值即可。 若要生成下載文件(.hex文件),點(diǎn)擊Output選項(xiàng),選中Create Hex Files。 點(diǎn)擊菜單Project下Build Target即可編譯(或匯編)你的源程序(留意一下,在工具欄上可找到相應(yīng)快捷按鈕)。在下面的輸出窗口Output Window可看到編譯(匯編)的結(jié)果,應(yīng)該沒有錯(cuò)誤才可繼續(xù)下面實(shí)驗(yàn)。否

8、則修改你的源程序,直到?jīng)]有錯(cuò)誤為止。 調(diào)試你的程序點(diǎn)擊菜單Debug下Start/Stop Debug Session進(jìn)入調(diào)試模式。你現(xiàn)在就可以采用連續(xù)運(yùn)行、停止、指令單步、函數(shù)單步、運(yùn)行到光標(biāo)處行等命令調(diào)試你的程序(這些命令在Debug下Run、Stop Running、Step、Step over,Run to Cursor line。也可利用快捷按鈕)。你也可以設(shè)置斷點(diǎn)后,連續(xù)執(zhí)行程序進(jìn)行調(diào)試。如程序運(yùn)行到中間想從頭再來,只要按RST按鈕即可。常用調(diào)試快捷按鈕符號(hào)說明RstRunStop RunningStep intoStep overRun to Cursor lineStart/S

9、top Debug Session復(fù)位連續(xù)運(yùn)行停止指令單步函數(shù)單步運(yùn)行到光標(biāo)處行調(diào)試模式/編輯模式 切換 存儲(chǔ)器、寄存器的查看、修改在調(diào)試程序時(shí),經(jīng)常需要查看存儲(chǔ)器內(nèi)容,你可以查看8051內(nèi)的4個(gè)存儲(chǔ)器邏輯空間的任一個(gè)。在調(diào)試模式下,依次點(diǎn)擊View,Memory Window,你可以看到包含4個(gè)存儲(chǔ)器空間的窗口,你在第一個(gè)存儲(chǔ)器空間的Address欄內(nèi)輸入C:0,即可看到從0000H開始的一段程序存儲(chǔ)內(nèi)容;你也可以在其它Address欄內(nèi)分別填入X:0、D:0、I:0就可以查看外部數(shù)據(jù)存儲(chǔ)器空間、直接尋址的片內(nèi)存儲(chǔ)空間(包括片內(nèi)00-7FH的RAM,及80H-0FFH的SFR)、間接尋址的片

10、內(nèi)存儲(chǔ)空間(包括片內(nèi)00-7FH的RAM,及8032的80H-0FFH的數(shù)據(jù)RAM)。如要修改Memory Window內(nèi)存儲(chǔ)單元內(nèi)容,可用鼠標(biāo)右鍵點(diǎn)擊選定存儲(chǔ)單元,根據(jù)提示即可修改。在Project Workspace窗口,你還可以看到8051的所有寄存器。如要查看單片機(jī)的外圍部件,像端口P0-P3,定時(shí)器T0、T1等,可點(diǎn)擊Peripherals。實(shí)驗(yàn)02 二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)實(shí)驗(yàn)一、實(shí)驗(yàn)器材1 微型計(jì)算機(jī)2 單片機(jī)硬件開發(fā)實(shí)驗(yàn)裝置3 實(shí)驗(yàn)裝置下載線二、實(shí)驗(yàn)?zāi)康?. 熟悉uVision3集成調(diào)試環(huán)境2學(xué)習(xí)掌握51單片機(jī)的匯編語言程序設(shè)計(jì)。三、實(shí)驗(yàn)要求與任務(wù)將RAM地址61H,60H的16

11、進(jìn)制數(shù)(高位61H,低位60H),轉(zhuǎn)換成十進(jìn)制數(shù),結(jié)果送到44H、43H、42H、41H、40H(最高位44H,低位在40H)。 程序思路:數(shù)據(jù)-10000,夠減X次,則萬位為X;差值-1000,夠減Y次,則千位為Y;差值-100,夠減Z次,則百位為Z;差值-10,夠減U次,則十位為U;個(gè)位為差值。四、實(shí)驗(yàn)步驟:實(shí)驗(yàn)步驟同實(shí)驗(yàn)01實(shí)驗(yàn)03 流水燈實(shí)驗(yàn)一、實(shí)驗(yàn)器材1 微型計(jì)算機(jī)2 單片機(jī)硬件開發(fā)實(shí)驗(yàn)裝置3 實(shí)驗(yàn)裝置下載線二、實(shí)驗(yàn)?zāi)康?. 熟悉uVision3集成調(diào)試環(huán)境2學(xué)習(xí)掌握51單片機(jī)的I/O端口及編程。三、實(shí)驗(yàn)電路:123456789RP30220×8VccQ1Q2Q3Q4Q5Q

12、6Q7Q874LS373LEOED1D2D3D4D5D6D7D8GND12345678LD0LD1LD2LD3LD4LD5LD6LD7VCCJD30VCCVCC12345678JD1380C51單片機(jī)P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7圖1-3 8位流水燈顯示電路四、實(shí)驗(yàn)要求與任務(wù)1. 設(shè)計(jì)節(jié)日流水燈。8051單片機(jī)P0口驅(qū)動(dòng)流水燈:輸出“1”時(shí)燈滅,“0”時(shí)燈亮。流水燈效果如下圖2-1所示。圖中 表示燈亮, 表示燈滅,流水燈效果在1-8狀態(tài)中循環(huán)。 LD0 LD7 LD0 LD71 12 23 34 45 56 67 78 89 910圖2-1 流水燈 1 111

13、2131415161718圖2-2 流水燈 22. 設(shè)計(jì)節(jié)日流水燈。8051單片機(jī)P0口驅(qū)動(dòng)流水燈:輸出“1”時(shí)燈滅,“0”時(shí)燈亮。流水燈效果如上圖2-2所示。圖中 表示燈亮, 表示燈滅,流水燈效果在1-16狀態(tài)中循環(huán)。五、實(shí)驗(yàn)步驟:1. 系統(tǒng)各跳線器處在初始設(shè)置狀態(tài)(參見附錄)(J1的1,2處8只短路帽打在左邊,3,4的5只短路帽打在右邊),MCU的JD13連接到八位邏輯電平顯示模塊的JD30。2. 程序輸入、編譯等實(shí)驗(yàn)步驟同實(shí)驗(yàn)01。3程序下載編程。系統(tǒng)各跳線器處在初始設(shè)置狀態(tài)(參見附錄)(JT40打在左邊,JD18打在右邊),J2的P3.0,P3.1打在右邊。打開STC-ISP V397

14、軟件。 步驟一:選擇單片機(jī)芯片型號(hào)STC89C52RC 步驟二:打開hex文件 步驟三:選擇COM口,與設(shè)備管理器(我的電腦,點(diǎn)擊鼠標(biāo)右鍵,選擇設(shè)備管理器)中端口一致。 步驟四:設(shè)置為12T/單倍速 步驟五:Download/下載。 關(guān)學(xué)習(xí)機(jī)電源握手接線打開學(xué)習(xí)機(jī)電源4程序驗(yàn)證。實(shí)驗(yàn)04 數(shù)碼管顯示實(shí)驗(yàn)一、實(shí)驗(yàn)器材1 微型計(jì)算機(jī)2 單片機(jī)硬件開發(fā)實(shí)驗(yàn)裝置3 實(shí)驗(yàn)裝置下載線二、實(shí)驗(yàn)?zāi)康?. 掌握8段數(shù)碼管硬件線路原理;2掌握用HD7279A芯片實(shí)現(xiàn)數(shù)碼管顯示的編程方法。三、實(shí)驗(yàn)電路 HD7279A是一片具有串行接口,可同時(shí)驅(qū)動(dòng)8位共陰數(shù)碼管(或64只獨(dú)立LED)的智能顯示驅(qū)動(dòng)芯片,該芯片還可同時(shí)

15、連接多達(dá)64鍵的鍵盤矩陣。HD7279A內(nèi)部含譯碼器,可直接接受16進(jìn)制碼。 HD7279A芯片介紹請(qǐng)見附錄一。abcdefgdpVDDVDDNCVSSNCCSCLKDATAKEYCLK0RCRESETDIG7DIG6DIG5DIG4DIG3DIG2DIG1DIG0DPSASBSCSDSESFSG7279A25242322212019181716151413121110123456789262728VCCVCC200200200200200200200200VCC80C51單片機(jī)P2.7P1.6P1.7P1.3R303.3KC3015PF四、實(shí)驗(yàn)要求與任務(wù) 根據(jù)電路使用HD7279A驅(qū)動(dòng)共陰數(shù)

16、碼管,顯示自己學(xué)號(hào)后3位(例如:101)。 程序可參考附錄一。五、實(shí)驗(yàn)步驟:1. 系統(tǒng)各跳線器處在初始設(shè)置狀態(tài)(參見附錄)(J1的1,2處8只短路帽打在左邊,3,4的5只短路帽打在右邊),J3打在7279處。2. 程序輸入、編譯等實(shí)驗(yàn)步驟同實(shí)驗(yàn)01。3程序下載編程。系統(tǒng)各跳線器處在初始設(shè)置狀態(tài)(參見附錄)(JT40打在左邊,JD18打在右邊),J2的P3.0,P3.1打在右邊。打開STC-ISP V397軟件,下載程序(同實(shí)驗(yàn)03)。六、實(shí)驗(yàn)程序參考框圖:變量定義堆棧指針初始化IO口 初始化延時(shí)7279復(fù)位顯示字符送A調(diào)用SEND 子程序課程設(shè)計(jì)實(shí)驗(yàn)01 AD轉(zhuǎn)換實(shí)驗(yàn)一、實(shí)驗(yàn)器材1 微型計(jì)算機(jī)

17、2 單片機(jī)硬件開發(fā)實(shí)驗(yàn)裝置3 實(shí)驗(yàn)裝置下載線二、實(shí)驗(yàn)?zāi)康?. 掌握ADC0809模/數(shù)轉(zhuǎn)換芯片與單片機(jī)的連接方法及ADC0809的典型應(yīng)用;2掌握用查詢方式完成模/數(shù)轉(zhuǎn)換程序的編寫方法。三、實(shí)驗(yàn)電路實(shí)驗(yàn)使用ADC00809模數(shù)轉(zhuǎn)換器,ADC0809是8通道8位CMOS逐次逼近式A/D轉(zhuǎn)換芯片。片內(nèi)有模擬量通道選擇開關(guān)及相應(yīng)的通道鎖存、譯碼電路,A/D轉(zhuǎn)換后的數(shù)據(jù)由三態(tài)鎖器輸出。由于片內(nèi)沒有時(shí)鐘需外接時(shí)鐘信號(hào)。芯片的引腳如圖5-1,各引腳功能如下:圖5-1 ADC0809引腳圖IN0IN7:八路模擬信號(hào)輸入端。ADD-A、ADD-B、ADD-C:三位地址碼輸入端。CLOCK: 外部時(shí)鐘輸入端。C

18、LOCK輸入頻率范圍在10-1280KHz,典型值為640KHz,此時(shí)A/D轉(zhuǎn)換時(shí)間為100S。51單片機(jī)ALE直接或分頻后可與CLOCK相連。本實(shí)驗(yàn)CLOCK信號(hào)由CPLD Lattice3128分頻產(chǎn)生(12MHz晶振12分頻)。D0D7: 數(shù)字量輸出端。OE(ENABLE):A/D轉(zhuǎn)換結(jié)果輸出允許端。當(dāng)OE為高電平時(shí),允許A/D轉(zhuǎn)換結(jié)果從D0-D7輸出。ALE: 地址鎖存允許信號(hào)輸入端。八路模擬通道地址由A、B、C輸入,在ALE信號(hào)有效時(shí)將地址鎖存。START: 啟動(dòng)A/D轉(zhuǎn)換信號(hào)輸入端。當(dāng)START端輸入一個(gè)正脈沖時(shí),將進(jìn)行A/D轉(zhuǎn)換。EOC: A/D轉(zhuǎn)換結(jié)束信號(hào)輸出端。當(dāng) A/D轉(zhuǎn)換

19、結(jié)束后,EOC輸出高電平。Vref(+)、Vref(-):正負(fù)基準(zhǔn)電壓輸入端?;鶞?zhǔn)正電壓的典型值為+5V。圖5-2 ADC0809時(shí)序圖A15A03:0010 1111 0000 0 實(shí)驗(yàn)數(shù)碼管顯示部分電路,同實(shí)驗(yàn)04。實(shí)驗(yàn)ADC0809電路如下圖5-3所示。實(shí)驗(yàn)采用外設(shè)與存儲(chǔ)器同一編址,在使用中可直接將外設(shè)當(dāng)作數(shù)據(jù)存儲(chǔ)器訪問。第0路ADC地址為2f00H(即:CS AD信號(hào)對(duì)應(yīng)A15A3為0010 1111 0000 0)。EOC(A/D轉(zhuǎn)換結(jié)束信號(hào)輸出端)接單片機(jī)P1.7,若采用查詢方式完成模/數(shù)轉(zhuǎn)換,只需查詢P1.7即可。本實(shí)驗(yàn)CLOCK信號(hào)由CPLD Lattice3128分頻產(chǎn)生(1

20、2MHz晶振12分頻)。P1.7P1.7圖5-3 ADC0809模擬轉(zhuǎn)換電路四、實(shí)驗(yàn)要求與任務(wù)本實(shí)驗(yàn)從ADC0809的IN-0輸入模擬量05V,數(shù)碼管以十進(jìn)制形式顯示模擬量(單位為伏特)。提示:將AD轉(zhuǎn)換結(jié)果*500/255的運(yùn)算可簡(jiǎn)化為將AD轉(zhuǎn)換結(jié)果*500/256。五、實(shí)驗(yàn)步驟:1. 系統(tǒng)跳線:1)系統(tǒng)各跳線器處在初始設(shè)置狀態(tài)(參見附錄),將MCU模塊JT12跳線器的C、D、E、F四只短路帽置為上邊(1、2短接),G短路帽置為下面(2、3短接)。2)A/D、D/A模塊J101跳線器的短路帽置位左邊;CPLD模塊JT110跳線器的短路帽置位左邊。J1的都打到左邊,J2的 WR,RD打在左側(cè),

21、J3打在CS7279處。2. 程序輸入、編譯等實(shí)驗(yàn)步驟同實(shí)驗(yàn)01。3程序下載編程。系統(tǒng)各跳線器處在初始設(shè)置狀態(tài)(參見附錄)(JT40打在左邊,JD18打在右邊),J2的P3.0,P3.1打在右邊。打開STC-ISP V397軟件,下載程序(同實(shí)驗(yàn)03)。4數(shù)碼管以十進(jìn)制形式顯示模擬量(單位伏特),手動(dòng)調(diào)節(jié)電位器 RP100,改變輸入模擬量電壓的大小,數(shù)碼管顯示將隨之變化。ALE與START接在一起,MOV DPTR, #02f00H ; A/DMOV A,#00NOPNOPMOVX DPTR,A ; 啟動(dòng)六、實(shí)驗(yàn)程序參考框圖:查詢P1.7即可:JNB P1.7,$1. MOVX A,DPTR

22、; 讀入結(jié)果2. 數(shù)據(jù)運(yùn)算3. 數(shù)碼管顯示課程設(shè)計(jì)實(shí)驗(yàn)02 RS232通信實(shí)驗(yàn)一、實(shí)驗(yàn)器材1 微型計(jì)算機(jī)2 單片機(jī)硬件開發(fā)實(shí)驗(yàn)裝置3 實(shí)驗(yàn)裝置下載線二、實(shí)驗(yàn)?zāi)康?. 了解8051串行口的工作原理以及發(fā)送數(shù)據(jù)的方式;2了解PC機(jī)通信的基本要求。三、實(shí)驗(yàn)電路 8051串行口經(jīng)RS232電平轉(zhuǎn)換后,與PC機(jī)串行口相連。PC機(jī)使用串口調(diào)試應(yīng)用程序V2.2.exe ,實(shí)現(xiàn)上位機(jī)與下位機(jī)的通訊。波特率設(shè)為4800。 圖6-1 串口通信接口電路 四、實(shí)驗(yàn)要求與任務(wù)本實(shí)驗(yàn)從ADC0809的IN-0輸入模擬量05V,數(shù)碼管以十進(jìn)制形式顯示模擬量(單位為伏特)。將單片機(jī)測(cè)得的數(shù)字量送PC機(jī)串口(PC上使用串口助手

23、調(diào)試應(yīng)用程序V2.2.exe,可顯示出單片機(jī)傳送的數(shù)據(jù))。系統(tǒng)晶振為11.0592MHz。五、實(shí)驗(yàn)步驟:1. 程序輸入、編譯等實(shí)驗(yàn)步驟同實(shí)驗(yàn)01。2程序下載編程。系統(tǒng)各跳線器處在初始設(shè)置狀態(tài)(參見附錄)(JT40打在左邊,JD18打在右邊),J2的P3.0,P3.1打在右邊。打開STC-ISP V397軟件,下載程序(同實(shí)驗(yàn)03)。3實(shí)驗(yàn)箱上的CON2和PC的串行口相連,J1的P1.0,P1.1打在左邊,D18的四只短路帽打在右邊。4打開串口助手調(diào)試應(yīng)用程序V2.2.exe,選擇下列屬性: 波特率4800 數(shù)據(jù)位8 奇偶校驗(yàn)無 停止位15調(diào)試運(yùn)行程序附錄一:HD7279A芯片介紹 HD7279

24、A是一片具串行接口的,可同時(shí)驅(qū)動(dòng)8位共陰式數(shù)碼管的智能顯示驅(qū)動(dòng)芯片,該芯片同時(shí)還可以連接多達(dá)64鍵的鍵盤矩陣,單片即可完成LED顯示,鍵盤接口的全部功能。1.主要特性 (1).串行接口,無需外圍元件可直接驅(qū)動(dòng)LED。 (2).各位獨(dú)立控制譯碼/不譯碼及消隱和閃爍屬性。 (3).(循環(huán))左移/(循環(huán))右移指令。 (4).具有段尋址指令,方便控制獨(dú)立LED。 (5).64鍵鍵盤控制器,內(nèi)含去抖動(dòng)電路。2.引腳說明: VDD: 正電源 VSS: 地 CS: 片選 CLK: 時(shí)鐘輸入端 DATA: 串行數(shù)據(jù)輸入/輸出端 CLK0: 振蕩輸出端 KEY: 按鍵有效輸出端 RES: 復(fù)位端 SG-SA:

25、段g段a驅(qū)動(dòng)輸出 DP: 小數(shù)點(diǎn)驅(qū)動(dòng)輸出 DIG0-7: 數(shù)位0-7驅(qū)動(dòng)輸出 RC: RC振蕩器連接端3. HD7279A硬件電路:注意:(1).HD7279A應(yīng)連接共陰式數(shù)碼管。 (2).應(yīng)用中,無需用到的鍵盤和數(shù)碼管可以不連接。 (3).應(yīng)用中,串入DP及SASG連接的8只電阻為200歐。(4).應(yīng)用中, 8只下拉電阻和8只鍵盤連接位選線DIG0DIG7的電阻,應(yīng)遵從一定的比例關(guān)系,典型值為10倍,下拉電阻的取值范圍是10K100K,位選電阻的取值圍是1K10K。 (5).HD7279A需要一外接的RC振蕩電路以供系統(tǒng)工作,其典型值分別為R1.5K,C15pF。(6).HD7279A的RE

26、SET復(fù)位端在一般應(yīng)用情況下,可以直接與正電源連接,在需要較高可靠性的情況下,可以連接一外部的復(fù)位電路,或直接由MCU(單片機(jī))控制。在上電或RESET端由低電平變?yōu)楦唠娖胶?,HD7279A大約需要經(jīng)過18-25MS的時(shí)間才會(huì)進(jìn)入正常工作狀態(tài)。4. 控制指令 HD7279A的控制指令分為二大類純指令和帶有數(shù)據(jù)的指令。 主要控制指令如下:A. 純指令(1). 復(fù)位(清除)指令A(yù)4HD7D6D5D4D3D2D1D010100100當(dāng)HD7279A收到該指令后,將所有的顯示清除,所有設(shè)置的字符消隱、閃爍等屬性也被一起清除。執(zhí)行該指令后,芯片所處的狀態(tài)與系統(tǒng)上電后所處的狀態(tài)一樣。(2). 左移指令A(yù)1

27、HD7D6D5D4D3D2D1D010100001例如,原顯示為: 4252LP39其中第2位3和第4位L為閃爍顯示。執(zhí)行了左移指令后,顯示變?yōu)椋?52LP39第2位9和第4位P為閃爍顯示。(3)右移指令A(yù)0H D7D6D5D4D3D2D1D010100000與左移指令類似,但所做移動(dòng)為自左向右移動(dòng),移動(dòng)后,最左邊一位為空B帶有數(shù)據(jù)的指令(1). 下載數(shù)據(jù)且按方式0譯碼 D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D010000a2a1a0DPXXXd3d2d1d0命令由二字節(jié)組成,前半部分為指令,其中a2,a1,a0為位地址。d0d3為數(shù)據(jù),收到此指令時(shí),按以下規(guī)則進(jìn)行譯碼。

28、 小數(shù)點(diǎn)的顯示由DP位控制:DP=1時(shí),小數(shù)點(diǎn)顯示, DP=0時(shí),小數(shù)點(diǎn)不顯示。 (2)下載數(shù)據(jù)且按方式1譯碼D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D011001a2a1a0DPXXXd3d2d1d0此指令與上一條指令其本相同,所不同的是譯碼方式。(3)下載數(shù)據(jù)但不譯碼 D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D010010a2a1a0DPABCDEFG其中,a2,a1,a0為位地址,AG和DP為顯示數(shù)據(jù),分別對(duì)應(yīng)7段LED數(shù)碼管的各段。當(dāng)相應(yīng)的數(shù)據(jù)位為1時(shí),該段點(diǎn)亮,否則不亮。此指令靈活,通過造字形表,可以顯示用戶所需的字符。(4)閃爍控制88H D

29、7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D010001000d8d7d6d5d4d3d2d1此命令控制各個(gè)數(shù)碼管的閃爍屬性,d1d8分別對(duì)應(yīng)數(shù)碼管1-8。0=閃爍,1=不閃爍。開機(jī)后,缺省的狀態(tài)為各位均不閃爍。 (5). 讀鍵盤數(shù)據(jù)指令15H D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D000010101d7d6d5d4d3d2d1d0該指令從HD7279A讀出當(dāng)前的按鍵代碼。前一個(gè)字節(jié)015H為指令代碼,而后一個(gè)字節(jié)d0-d7則為HD7279A返回的按鍵代碼,其范圍是00H-3FH(無鍵按下時(shí)為FFH)。當(dāng)HD7279A檢測(cè)到有效的按鍵時(shí),KEY引腳從高電

30、平變?yōu)榈碗娖?,并一直保持到按鍵結(jié)束。在此期間,如果HD7279A接收到讀鍵盤數(shù)據(jù)指令,則輸出當(dāng)前按鍵的鍵盤代碼;如果在收到讀鍵盤指令時(shí)沒有有效按鍵,HD7279A將輸出FFH。5串行接口的時(shí)序圖。A、HD7279A的指令結(jié)構(gòu)類型:(1)、不帶數(shù)據(jù)的純指令,指令的寬度為8個(gè)BIT。即微處理器需發(fā)送8個(gè)CLK脈沖。(2)、帶有數(shù)據(jù)的指令,寬度為16個(gè)BIT,即微處理器需發(fā)送16個(gè)CLK脈沖。(3)、讀取鍵盤數(shù)據(jù)指令,寬度為16個(gè)BIT,前8個(gè)為微處理器發(fā)送到HD7279A的指令,后8個(gè)BIT為HD7279A返回的鍵盤代碼。執(zhí)行此指令時(shí),HD7279A的DATA端在第9個(gè)CLK脈沖的上升沿變?yōu)檩敵鰻?/p>

31、態(tài),并與第16個(gè) 脈沖的下降沿恢復(fù)為輸入狀態(tài),等待接收下一個(gè)指令。B、串行接口的時(shí)序圖:(1). 純指令T1=50us; T2=8us; T3=8us (2). 帶數(shù)據(jù)指令T4=25us(3). 讀鍵盤指令T5=25us; T6=8us; T7=8us6. 軟件編程 發(fā)送一字節(jié)子程序:(發(fā)送數(shù)存于A中)KEY BIT P1.3CLK BIT P1.6DAT BIT P1.7CS BIT P2.7SEND: MOV R0,#8 CLR CS CALL LONG_DELAYSEND_LOOP: MOV C,ACC.7 MOV DAT,C SETB CLK RL A CALL SHORT_DELAY CLR CLK CALL SHORT_DELAY DJNZ R0,SEND_LOOP CLR DAT RETLONG_D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論