當(dāng)前位置首頁 > 建筑/施工 > 圖紙/圖集
搜柄,搜必應(yīng)! 快速導(dǎo)航 | 使用教程  [會(huì)員中心]

《單片機(jī)原理及應(yīng)用》實(shí)驗(yàn)指導(dǎo)書

文檔格式:DOC| 29 頁|大小 1.29MB|積分 15|2021-08-22 發(fā)布|文檔ID:27964707
第1頁
下載文檔到電腦,查找使用更方便 還剩頁未讀,繼續(xù)閱讀>>
1 / 29
此文檔下載收益歸作者所有 下載文檔
  • 版權(quán)提示
  • 文本預(yù)覽
  • 常見問題
  • 《單片機(jī)原理及應(yīng)用》(06通信、07通信)編撰閩江學(xué)院計(jì)算機(jī)實(shí)驗(yàn)教學(xué)中心印29實(shí)驗(yàn)一 單片機(jī)仿真軟件wave6000練習(xí)一. 實(shí)驗(yàn)?zāi)康?.1了解仿真軟件wave6000的基本操作和使用1.2 學(xué)習(xí)簡單程序的編寫和調(diào)試方法二. 實(shí)驗(yàn)內(nèi)容2.1觀察復(fù)位時(shí),CPU,SFR,DATA,CODE,XDATA,XCODE的值2.1 單片機(jī)硬件資源的觀察、修改及仿真等2.3 程序的運(yùn)行并觀察結(jié)果三. 實(shí)驗(yàn)步驟1. 打開wave6000軟件,新建一個(gè)文件,輸入代碼后并保存為.ASM的文件2. 點(diǎn)擊打開復(fù)位按鈕然后,觀察SFR,DATA,CODE,XDATA,XCODE在系統(tǒng)復(fù)位時(shí)值的情況如下所示: 3. 輸入一個(gè)小程序代碼,在wave6000環(huán)境下運(yùn)行,查看結(jié)果ORG 0000H ORG 8000HMAIN:MOV R0,#20H MOV R1,#30H MOV R2,#10HLOOP:MOV A,@R0 ANL A,#0F0H SWAP A ADD A,#30H MOV @R1,A MOV A,@R0 ANL A,#0FH ADD A,#30H INC R1 MOV @R1,A INC R0 INC R1 DJNZ R2,LOOP LJMP MAIN四. 實(shí)驗(yàn)思考題4.1通過本次實(shí)驗(yàn)熟悉了wave6000軟件的各種操作,有幾種方法可以運(yùn)行程序?4.2 在實(shí)際操作中,主要碰到哪些問題使程序不能順利執(zhí)行?實(shí)驗(yàn)二 查表法實(shí)現(xiàn)字符的轉(zhuǎn)換程序設(shè)計(jì)一. 實(shí)驗(yàn)?zāi)康?.1 學(xué)習(xí)簡單程序的編寫和調(diào)試方法。

    1.2運(yùn)用仿真軟件wave6000對程序進(jìn)行調(diào)式和運(yùn)行1.3檢查程序運(yùn)行結(jié)果是否正確二. 實(shí)驗(yàn)內(nèi)容編寫查表法實(shí)現(xiàn)字符的轉(zhuǎn)換程序并調(diào)試,查看運(yùn)行過程及結(jié)果三. 實(shí)驗(yàn)步驟(參考)1. 編寫程序,編譯通過,并運(yùn)行得以下結(jié)果運(yùn)行一下可以看到程序存儲器中0060H—0069H中存放表運(yùn)行結(jié)果如下:3.采用單步運(yùn)行查看程序的運(yùn)行過程,先設(shè)置pc的值,然后單擊單步運(yùn)行圖標(biāo)即可通過實(shí)驗(yàn),我們可以知道單步運(yùn)行與全速執(zhí)行的結(jié)果是一樣的四.實(shí)驗(yàn)思考題4.1 在實(shí)際操作中,主要碰到哪些問題使程序不能順利執(zhí)行?4.2 若結(jié)果不正確,可能的問題是什么或使程序不能順利執(zhí)行?實(shí)驗(yàn)三將兩個(gè)字節(jié)的十六進(jìn)制轉(zhuǎn)換成十進(jìn)制一、實(shí)驗(yàn)?zāi)康?. 1熟悉程序的編寫和調(diào)試方法 1.2熟悉仿真軟件wave6000對程序進(jìn)行調(diào)式和運(yùn)行 1.3檢查程序運(yùn)行結(jié)果是否正確二、實(shí)驗(yàn)內(nèi)容編程實(shí)現(xiàn)將(10H)(11H)單元的兩個(gè)字節(jié)的十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制存放在(20H)(21H)(22H)里面三、實(shí)驗(yàn)步驟及參考程序1. 編寫源程序,如下: ORG 0000HLJMP MAINORG 8000HMAIN:CLR A MOV 20H,A MOV 21H,A MOV 22H,A MOV R7,#16LOOP:CLR C MOV 10H,#0FFH MOV 11H,#0FFH MOV A,11H RLC A MOV 11H,A MOV A,10H RLC A MOV 10H,A MOV A,22H ADDC A,22H DA A MOV 22H,A MOV A,21H ADDC A,21H DA A MOV 21H,AMOV A,20HADDC A,20HDA AMOV 20H,ADJNZ R7,LOOPRET2.調(diào)試編譯,并運(yùn)行得以下結(jié)果: 四、實(shí)驗(yàn)思考題4.1 在實(shí)際操作中,主要碰到哪些問題使程序不能順利執(zhí)行?4.2 若結(jié)果不正確,可能的問題是什么或使程序不能順利執(zhí)行? 實(shí)驗(yàn)四 程序查詢實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘的設(shè)計(jì) 一、 實(shí)驗(yàn)?zāi)康? 通過本次實(shí)驗(yàn)學(xué)習(xí)使用程序查詢實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘的設(shè)計(jì)二、 實(shí)驗(yàn)內(nèi)容編程實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘的功能三、 實(shí)驗(yàn)步驟及參考程序1.編寫源程序,如下:ORG 0000HLJMP MAINORG 8000H MAIN:MOV TMOD,#01H MOV 23H,#0AH CLR A MOV 20H,A MOV 21H,A MOV 22H,ALOOP:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 JNB TF0,$ CLR TF0 DEC 23H MOV TH0,#3CH MOV TL0,#0B0H MOV A,23H CJNE A,#00H,LOOP MOV 23H,#0AH MOV A,#01H ADD A,22H DA A MOV 22H,A CJNE A,#60H,LOOP MOV 22H,#00H MOV A,#01H ADD A,21H DA A MOV 21H,A CJNE A,#60H,LOOP MOV 21H,#00H MOV A,#01H ADD A,20H DA A MOV 20H,A CJNE A,#24H,LOOP MOV 20H,#00H END2.通過調(diào)試,編譯并運(yùn)行得如下結(jié)果20H,21H,22H單元分別存放著時(shí)分秒的值。

    四、實(shí)驗(yàn)思考題4.1 在實(shí)際操作中,主要碰到哪些問題使程序不能順利執(zhí)行?4.2 若時(shí)間和實(shí)際時(shí)間不一致,可能的問題是什么?4.3 還有什么辦法可以實(shí)現(xiàn)時(shí)鐘的功能?實(shí)驗(yàn)五 Keil C51集成開發(fā)環(huán)境的使用一、【實(shí)驗(yàn)?zāi)康摹?、熟悉Keil C51集成開發(fā)環(huán)境的使用方法2、熟悉DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀的使用3、掌握基于Keil C51的硬件仿真功能的使用二、【實(shí)驗(yàn)儀器】1、IBM PC機(jī)一臺 2、DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀一臺三、【實(shí)驗(yàn)內(nèi)容】一、Keil C51的使用在Keil 軟件中是以項(xiàng)目(Project)方式來組織管理所有相關(guān)的源碼,和源碼所處的文件夾沒有太大關(guān)系1、 熟悉uVision3集成開發(fā)環(huán)境菜單欄,工程項(xiàng)目窗口,編輯窗口,信息輸出窗口等;2、 創(chuàng)建一個(gè)新的項(xiàng)目:Project -> New uVision Project ,設(shè)置好工程存放路徑、工程名稱如:led3、 為這個(gè)項(xiàng)目選擇一個(gè)相應(yīng)的設(shè)備,即目標(biāo)單片機(jī)型號:NXP (Philips) -> P80/P87C52X2此設(shè)備型號也可以在屬性中更改)4、 提示如下: 選擇否當(dāng)用C語言開發(fā)時(shí),可選是)。

    5、 新建一個(gè)文本文檔File -> New,輸入實(shí)驗(yàn)源碼: ORG 8000H ;偽指令,指定程序從8000H開始存放 AJMP MAIN ;跳轉(zhuǎn)指令,程序跳轉(zhuǎn)到MAIN處 ORG 8100H ;偽指令,指定以下程序從8100H開始存放MAIN: MOV SP,#60 ;給堆棧指針賦初值LIGHT: CPL P1.0 ;取反P1.0,改變L9的亮滅狀態(tài) CPL P1.1 ;取反P1.1,改變L10的亮滅狀態(tài) CPL P1.2 ;取反P1.2,改變L11的亮滅狀態(tài) ACALL DELAY ;調(diào)延時(shí)子程序 AJMP LIGHT ;跳轉(zhuǎn),程序繼續(xù);延時(shí)子程序DELAY: MOV R7,#10HDELAY0: MOV R6,#7FHDELAY1: MOV R5,#7FHDELAY2: DJNZ R5,DELAY2 DJNZ R6,DELAY1 DJNZ R7,DELAY0 RET END保存為:led.asm (后綴.asm表示此源代碼是用匯編語言編的)6、 在工程項(xiàng)目窗口中,右鍵點(diǎn)擊Source Group 1, 點(diǎn)擊Add Files to Group “Source Group 1”, 把剛剛編寫的源文件加入工程中。

    7、 編譯鏈接程序Project -> Build Target 如出錯(cuò)改正后再執(zhí)行此命令直到鏈接成功二、仿真調(diào)試功能的使用1、 在前面已編譯好的基礎(chǔ)上,對項(xiàng)目的屬性做些特殊設(shè)置,即可進(jìn)行硬件仿真在工程項(xiàng)目窗口中點(diǎn)擊選擇Target 1, 而后Project -> Options for Target ‘Target 1’, 彈出項(xiàng)目屬性設(shè)置頁面設(shè)置如下:1) Target頁:Off-chip Code memory 和Off-chip Xdata memory 如下設(shè)置2) Output頁:勾選Create HEX File, 編譯連接生成HEX標(biāo)準(zhǔn)格式下載文件3) Debug頁:選擇右邊的Use: Keil Monitor-51 Driver, 即選擇將進(jìn)行硬件仿真方式,如下圖:左邊的Use Simulator為軟件仿真4) 再點(diǎn)擊Settings按鈕,彈出下圖:選擇相應(yīng)的串口,波特率為9600其它選項(xiàng)如圖設(shè)置屬性設(shè)置后,點(diǎn)擊“確定”保存后,仿真調(diào)試的軟件設(shè)置部分即完成, 需再對項(xiàng)目編譯:Project -> Build all Target files2、 實(shí)驗(yàn)儀的設(shè)置:1) 實(shí)驗(yàn)儀硬件仿真狀態(tài)設(shè)置:在A1區(qū),JP13中的SRAM_E和FLASH_E斷開不短接,JP14斷開不短接;JP15的TXD,RXD短接。

    MOD_SW1開關(guān)撥到RUN模式按一下復(fù)位按鍵 RST 按本實(shí)驗(yàn)的所實(shí)現(xiàn)的功能:使用導(dǎo)線把A2區(qū)的J61接口與D1區(qū)的J52接口相連2) 運(yùn)行 Keil C 的 Debug -> Start/Stop Debug Session 命令,即把程序下載到單片機(jī)的SRAM中,開始仿真調(diào)試,在調(diào)試過程中,注意觀察調(diào)試中實(shí)驗(yàn)儀器的變化進(jìn)入調(diào)試界面如下:3) 在Output windows 選擇Command頁,在>后輸入:g, 程序?qū)⑻D(zhuǎn)到Main開始調(diào)試, 而后即可進(jìn)行單步、斷點(diǎn)調(diào)試等:跳轉(zhuǎn)后的頁面:4)單步調(diào)試:點(diǎn)擊快捷工具: 體會(huì)這幾種工具的不同之處5)斷點(diǎn)調(diào)試:點(diǎn)擊快捷工具: 前者為設(shè)斷點(diǎn),后者為清除斷點(diǎn);或雙擊相應(yīng)行即可設(shè)置/清除斷點(diǎn),然后點(diǎn)擊: 執(zhí)行如圖為設(shè)置了一個(gè)斷點(diǎn):6)查看內(nèi)存: 如沒顯示如下窗口,選擇View -> Memory Window 打開該窗口在Address:輸入框中,輸入字符格式為:“存儲器標(biāo)識符:地址”, 如上圖c表示程序存儲器,0x8109是地址(0x表示是16進(jìn)制)還有d表示內(nèi)部數(shù)據(jù)存儲器,x表示外部數(shù)據(jù)存器7)點(diǎn)擊這個(gè)圖標(biāo): 退出調(diào)試實(shí)現(xiàn)流水燈循環(huán)點(diǎn)亮: 程序如下:具體步驟如前所述。

    實(shí)驗(yàn)六 數(shù)據(jù)的冒泡排序一、實(shí)驗(yàn)?zāi)康? 通過本次實(shí)驗(yàn)學(xué)習(xí)使用冒泡排序的單片機(jī)實(shí)現(xiàn)二、 實(shí)驗(yàn)內(nèi)容使用冒泡排序?qū)崿F(xiàn)20H-2FH單元的數(shù)據(jù)從小到大排列,并把正確的排序結(jié)果仍存放在20H-2FH單元三、 實(shí)驗(yàn)步驟及參考程序1. 編寫源程序,并編譯ORG 0000H LJMP MAIN ORG 4000HMAIN: MOV R3,#00HLOOP:MOV R0,#20H MOV R1,#21H MOV R2,#0FHLOOP1:MOV A,@R0 CLR C SUBB A,@R1 JC LOOP2 MOV A,@R0 XCH A,@R1 MOV @R0,A INC R0 INC R1 LJMP LOOP3LOOP2:INC R0 INC R1LOOP3:DJNZ R2,LOOP1 INC R3 CJNE R3,#0FH,LOOP END2. 運(yùn)行可執(zhí)行文件,得到最后結(jié)果:(1) 運(yùn)行前20H-2FH單元的內(nèi)容如下:(2) 運(yùn)行后20H-2FH單元的內(nèi)容如下:四、實(shí)驗(yàn)思考題4.1 還有什么辦法可以實(shí)現(xiàn)數(shù)據(jù)排序的功能?實(shí)驗(yàn)七 單片機(jī)的I/O實(shí)驗(yàn)(電子琴)一、實(shí)驗(yàn)?zāi)康?、學(xué)會(huì)利用單片機(jī)的輸入輸出口, 熟悉定時(shí)器的使用;2、了解計(jì)算機(jī)(蜂鳴器)發(fā)聲原理;3、了解鍵盤掃描電路的工作原理及編程方法;二、實(shí)驗(yàn)原理在單片機(jī)的開發(fā)使用中,經(jīng)常會(huì)用到IO口來輸入數(shù)據(jù)或輸出控制信號,利用IO口是單片機(jī)編程的最基礎(chǔ)技能。

    定時(shí)器常常用在要求比較精確計(jì)時(shí)的場合,能實(shí)時(shí)的處理一些特定的操作實(shí)驗(yàn)原理圖利用實(shí)驗(yàn)儀上提供的按鍵K1-K7作為電子琴按鍵,控制蜂鳴器發(fā)聲,了解計(jì)算機(jī)發(fā)聲原理,熟悉定時(shí)器和鍵盤掃描電路的工作原理及編程方法三、實(shí)驗(yàn)儀器1、IBM PC機(jī)一臺2、DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀一臺四、實(shí)驗(yàn)內(nèi)容編寫一段程序來檢測按鍵的狀態(tài),當(dāng)某一按鍵按下時(shí),蜂鳴器發(fā)出對應(yīng)的音調(diào);用P3.3口控制(輸出7種音階標(biāo)稱頻率的方波),使D4區(qū)的蜂鳴器發(fā)出不同的音調(diào)1、認(rèn)真理解程序控制流程,弄懂兩個(gè)問題:如何掃描鍵盤及每個(gè)按鍵閉合時(shí)對定時(shí)器的影響2、創(chuàng)建一個(gè)工程,編寫按鍵的動(dòng)態(tài)掃描程序,根據(jù)不同音階的頻率編寫蜂鳴器的音調(diào)控制程序,完成編譯、鏈接并按實(shí)驗(yàn)一配置好工程屬性,把實(shí)驗(yàn)儀設(shè)置為仿真狀態(tài)3、用導(dǎo)線將A2區(qū)J58接口P3.3口(INT1)和D4區(qū)的J8接口相連,然后將D1區(qū)的J53接口和A2區(qū)的J61接口一一對應(yīng)相連4、仿真調(diào)試程序,測試每個(gè)按鍵的音調(diào)程序如下:BUZZ EQU P3.3ORG 8000HLJMP MAINORG 800BHLJMP INT_T0ORG 8100HMAIN: MOV SP,#60H MOV P1,#0FFH MOV TMOD,#01H SETB ET0 SETB EA CLR TR0START: MOV R0,P1 CJNE R0,#0FFH,KEY1 CLR TR0 SJMP STARTKEY1: CJNE R0,#0FEH,KEY2 MOV 30H,#0FBH MOV 31H,#0E9H LJMP SET_TIMERKEY2: CJNE R0,#0FDH,KEY3 MOV 30H,#0FCH MOV 31H,#5CH LJMP SET_TIMERKEY3: CJNE R0,#0FBH,KEY4 MOV 30H,#0FCH MOV 31H,#0C1H LJMP SET_TIMERKEY4: CJNE R0,#0F7H,KEY5 MOV 30H,#0FCH MOV 31H,#0EFH LJMP SET_TIMERKEY5: CJNE R0,#0EFH,KEY6 MOV 30H,#0FDH MOV 31H,#045H LJMP SET_TIMERKEY6: CJNE R0,#0DFH,KEY7 MOV 30H,#0FDH MOV 31H,#92H LJMP SET_TIMERKEY7: CJNE R0,#0BFH,NOKEY MOV 30H,#0FDH MOV 31H,#0D6HSET_TIMER: SETB TR0 SJMP STARTNOKEY: CLR TR0 SJMP STARTINT_T0: MOV TH0,30H MOV TL0,31H CPL BUZZ RETI ; END五、實(shí)驗(yàn)思考題5.1 若發(fā)出的音調(diào)和實(shí)際不一致,可能的問題是什么?5.2 用什么辦法可以改變音準(zhǔn)、節(jié)奏和演奏速度?實(shí)驗(yàn)八 單片機(jī)的I/O實(shí)驗(yàn)(串口/并口轉(zhuǎn)換)一、實(shí)驗(yàn)?zāi)康氖煜げ⒄莆沾D(zhuǎn)并的I/O口擴(kuò)展方法二、實(shí)驗(yàn)設(shè)備及器件IBM PC機(jī)、DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀三、實(shí)驗(yàn)內(nèi)容1、寫程序,通過單片機(jī)的P1口控制74HC164的串行輸入端口,實(shí)現(xiàn)串并轉(zhuǎn)換2、驗(yàn)證串并轉(zhuǎn)換數(shù)據(jù)的正確性四、實(shí)驗(yàn)要求熟悉串并轉(zhuǎn)換芯片的工作原理,學(xué)會(huì)使用串并轉(zhuǎn)換芯片擴(kuò)展單片機(jī)的I/O口資源。

    五、實(shí)驗(yàn)步驟1、短接C5區(qū)JP10接口,將C5區(qū)J43接口與A2區(qū)J61接口的P10~P13對應(yīng)相連(clk對P10等等)2、運(yùn)行編寫好的軟件程序,完成一次串并轉(zhuǎn)換3、使用C2區(qū)的邏輯筆或D1區(qū)的J52接口(LED指示燈)測試并行輸出數(shù)據(jù)Q0~Q7數(shù)據(jù)的正確性六、實(shí)驗(yàn)參考程序 CLK EQU P1.0DINA EQU P1.1DINB EQU P1.2CLR164 EQU P1.3ORG 8000HLJMP MAINORG 8100HMAIN:MOV SP,#60H NOP CLR CLK SETB DINB CLR CLR164 MOV A,# 0AAH MOV R4,#08HSLCHG: RLC A MOV DINA,C SETB CLK NOP CLR CLK NOP DJNZ R4,SLCHG SJMP $ ; END七、實(shí)驗(yàn)思考題7.1 還有哪些辦法可以實(shí)現(xiàn)I/O的擴(kuò)展和轉(zhuǎn)換?實(shí)驗(yàn)九 單片機(jī)與譯碼器的接口實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康氖煜ぷg碼器的使用方法,靈活應(yīng)用74HC138譯碼器電路設(shè)計(jì)二、實(shí)驗(yàn)設(shè)備及器件IBM PC機(jī) 一臺DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀 一臺三、實(shí)驗(yàn)內(nèi)容(1)編寫程序,通過單片機(jī)的P1口控制74HC138的數(shù)據(jù)輸入端,從而選通相應(yīng)的數(shù)據(jù)輸出位。

    2)將譯碼器數(shù)據(jù)輸出端口連接到8個(gè)LED指示燈,驗(yàn)證譯碼器的正確性四、實(shí)驗(yàn)要求通過實(shí)驗(yàn)掌握譯碼器的工作原理和實(shí)際應(yīng)用方法五、實(shí)驗(yàn)步驟(1)短接C6區(qū)JP4接口上的短路帽,將C6區(qū)J20,J22接口與A2區(qū)J61接口的P10~P15相連實(shí)驗(yàn)原理圖如下圖所示(2)將D1區(qū)的J52接口連接到C6區(qū)J51譯碼數(shù)據(jù)輸出接口3)打開程序調(diào)試軟件,下載運(yùn)行編寫好的軟件程序,查看程序運(yùn)行結(jié)果是否正確六、實(shí)驗(yàn)參考程序ORG 8000HLJMP MAINORG 8100HMAIN:MOV SP,#60HMOV R4,#0DJNZ R4,$CLR P1.5CLR P1.4SETB P1.3CLR P1.0CLR P1.1SETB P1.2SJMP $;END七、實(shí)驗(yàn)思考題7.1如何利用單片機(jī)實(shí)現(xiàn)編碼器的功能?實(shí)驗(yàn)十:單片機(jī)的串口通信實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?、學(xué)會(huì)單片機(jī)的串行口的使用2、掌握單片機(jī)燒寫程序的方法和步驟二、實(shí)驗(yàn)原理1、通過串口實(shí)現(xiàn)一個(gè)單片機(jī)與PC機(jī)的簡單握手通信的程序2、利用單片機(jī)的TXD、RXD口向PC機(jī)發(fā)送三、實(shí)驗(yàn)儀器1、IBM PC機(jī)一臺2、DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀一臺四、實(shí)驗(yàn)內(nèi)容由于使用硬件仿真功能將占用串口,所以本次實(shí)驗(yàn)不能在實(shí)驗(yàn)儀上進(jìn)行仿真,只能把程序下載到片上運(yùn)行驗(yàn)證。

    1、實(shí)驗(yàn)編程 按以下要求編寫兩個(gè)程序,特別是在項(xiàng)目屬性的設(shè)置中要勾選Create HEX File這一選項(xiàng),才能編譯生成DPFlash下載所需要的.HEX文件,按第二節(jié)介紹的下載流程步驟把程序下載到片上驗(yàn)證1)編寫一段程序,利用串行口向PC機(jī)發(fā)送數(shù)據(jù)0x55第二節(jié)的截圖為本實(shí)驗(yàn)的實(shí)驗(yàn)結(jié)果)2)編寫一段程序,實(shí)現(xiàn)一個(gè)單片機(jī)與PC機(jī)的簡單握手通信的程序通信流程: PC機(jī)串口發(fā)送數(shù)據(jù)0x55(ASCII碼為字母U),在單片機(jī)接收到0x55時(shí)返回一個(gè)數(shù)據(jù)0x41(ASCII碼為字母A)即完成通信流程程序如下:程序1:發(fā)送程序2:接收與發(fā)送2、下載流程1)安裝燒寫軟件DPFlash2)運(yùn)行DPFlash下載程序,如圖13)設(shè)置實(shí)驗(yàn)儀為下載模式(即把A1區(qū)的MOD_SW1撥到load方向,再按RST按鈕復(fù)位實(shí)驗(yàn)儀)4)點(diǎn)擊左側(cè)工具欄的擦除按鈕,把單片機(jī)片內(nèi)ram清空,如圖2 5)文件->裝載,載入待下載的.HEX文件,如:rs232.hex,如圖36)點(diǎn)擊左側(cè)工具欄的編程按鈕,把裝載的.hex文件燒寫入單片機(jī)如圖47)退出編程窗口,把實(shí)驗(yàn)儀設(shè)置為運(yùn)行(RUN)模式后,單片機(jī)即已運(yùn)行片內(nèi)程序。

    按需要調(diào)試、觀察實(shí)驗(yàn)儀的運(yùn)行表現(xiàn) 本實(shí)驗(yàn)是調(diào)試RS232串口,我們可以使用DPFlash軟件自帶的一個(gè)串口調(diào)試工具點(diǎn)擊串口調(diào)試器,彈出一個(gè)界面,如圖5,按本實(shí)驗(yàn)通信要求設(shè)置波特率等參數(shù),即可觀察到單片機(jī)發(fā)送的數(shù)據(jù)8)采用同樣的方法可觀察到單片機(jī)接收與發(fā)送3、本次實(shí)驗(yàn)結(jié)束后需把硬件仿真程序重新燒寫回單片機(jī)運(yùn)行DPFlash,點(diǎn)擊左邊工具欄“編程(P)”按鈕,然后選擇“編程MON51”,點(diǎn)擊“編程”,即把仿真接口程序重新燒入單片機(jī)中界面如下:五、思考題5.1 如何進(jìn)行單片機(jī)與單片機(jī)之間的串行通信5.2 如何使用中斷方法編寫程序5.3 如何實(shí)現(xiàn)單片機(jī)的多機(jī)通訊?5.4 哪些方法可以實(shí)現(xiàn)單片機(jī)通訊中的數(shù)據(jù)校驗(yàn)?實(shí)驗(yàn)十一 Keil C51集成開發(fā)環(huán)境的使用一、【實(shí)驗(yàn)?zāi)康摹?、熟悉Keil C51集成開發(fā)環(huán)境的使用方法2、熟悉DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀的使用3、掌握基于Keil C51的硬件仿真功能的使用二、【實(shí)驗(yàn)儀器】1、IBM PC機(jī)一臺 2、DP-51PRO單片機(jī)綜合仿真實(shí)驗(yàn)儀一臺三、【實(shí)驗(yàn)內(nèi)容】1、Keil C51的使用2、仿真調(diào)試功能的使用四、【實(shí)驗(yàn)步驟】1、 新建一個(gè)工程iso,并為工程選用相應(yīng)的cpu型號。

    2、 如果程序沒有編好,新建一個(gè)文件,編寫相關(guān)的程序,用iso.asm文件名保存ORG 8000HLJMP MainORG 80F0HMain: MOV R7, #0 Loop: MOV R6, #0DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R7, LoopCPL P1.0 ; P 1 .0 取反CPL P1.1 ; P 1 .1 取反CPL P1.2 ; P 1 .2 取反CPL P1.3 ; P 1 .3 取反CPL P1.4 ; P 1 .4 取反CPL P1.5 ; P 1 .5 取反CPL P1.6 ; P 1 .6 取反CPL P1.7 ; P 1 .7 取反SJMP MainEND3、 將編寫好的程序添加到工程的Target中4、設(shè)置iso工程編譯連接環(huán)境為硬件仿真并選擇相應(yīng)的驅(qū)動(dòng)程序庫 5、進(jìn)行源程序的編譯連接,直到程序編譯連接成功為止6、將程序載人到51單片機(jī)中,并運(yùn)行查看結(jié)果五、【實(shí)驗(yàn)結(jié)果】p1的8個(gè)輸出端口連接顯示燈上,8個(gè)顯示燈實(shí)現(xiàn)流水燈循環(huán)點(diǎn)亮實(shí)驗(yàn)十二 定時(shí)器的設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康? 通過本次實(shí)驗(yàn)學(xué)習(xí)使用定時(shí)器功能。

    二、實(shí)驗(yàn)內(nèi)容利用定時(shí)器T0編程實(shí)現(xiàn)定時(shí)1秒,假設(shè)系統(tǒng)時(shí)鐘采用6MHZ三、實(shí)驗(yàn)步驟及參考程序(1)定時(shí)器T0工作方式的確定方式0最長可定時(shí)16.384ms,方式1最長可定時(shí)131.072ms,方式2最長可定時(shí)512us終上可得,可選方式1,每隔100ms中斷一次,中斷10次為1s2)計(jì)算初值 因?yàn)椋海?16-X)*2*10-6=10-1 所以:X=15536=3CB0H 因此:TH0=3CH,TL0=B0H(3)編寫程序ORG 0000HLJMP MAINORG 000BHAJMP IT0PORG 0100HMAIN:MOV SP,#60H MOV B,#0AH MOV TMOD,#01H MOV TL0,#0B0H MOV TH0,#3CH SETB TR0 SETB ET0 SETB EAHERE:SJMP HEREIT0P:MOV TL0,#0B0H MOV TH0,#3CH DJNZ B,LOOP CLR TR0LOOP:RETIEND四、運(yùn)行結(jié)果 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。

    點(diǎn)擊閱讀更多內(nèi)容
    賣家[上傳人]:仙人指路
    資質(zhì):實(shí)名認(rèn)證