單片機原理應用_第1頁
單片機原理應用_第2頁
單片機原理應用_第3頁
單片機原理應用_第4頁
單片機原理應用_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

單片機原理應用2023/4/27單片機原理應用1第1頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用2IC引腳圖第2頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用3

1.12700A特性.存儲器配置.8個中斷源OTPROM:4K*16位5個內(nèi)部中斷源:T0,TC0,TC1,SIO,ADCRAM:256*8位(bank0和bank1)3個外部中斷源:INT0,INT1,INT2.8層堆棧緩存器.3個8位定時/計數(shù)器.I/O引腳配置(共36pins)T0:基本定時器雙向輸入/輸出:P0,P1,P2,P3,P4,P5TC0:自動裝載定時/計數(shù)器/PWM0/Buzzer輸出喚醒功能:P0,P1TC1:自動裝載定時/計數(shù)器/PWM1/Buzzer輸出外部中斷:P0.內(nèi)置看門狗計數(shù)器上拉電阻:P0,P1,P2,P3,P4,P5P4引腳和ADC輸入共享.雙時鐘系統(tǒng)提供4種操作模式外部高速時鐘:RC,最大10MHz.8通道12位AD轉換外部高速時鐘:晶體,最大16MHz.普通模式:高/低速時鐘同時運行.1通道7位DA轉換低速模式:只有低速時鐘運行.睡眠模式:高/低速時鐘都停止.串行通信SIO綠色模式:定時器T0周期性喚醒.60條功能強大的指令.封裝(支持的芯片格式)

產(chǎn)品性能

第3頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用4引腳說明第4頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用5外部復位女鞋、女用皮包用戶必須確保VDD先于外部復位電壓達到穩(wěn)定狀態(tài)(圖6-2),否則復位無效。外部復位電路是一個簡單的RC電路,如下圖所示﹕注:使用R2可以避免外部干擾對MCU復位的影響,建議R2的值為100~200?。

第5頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用6復位電路改善掉特性少女服飾在某些情況下,通過在VCC和復位引腳之間放置一個二極管可以改善掉電復位。

第6頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用7系統(tǒng)振蕩器電路

外部振蕩器的電源端和接地端必須和微控器的VDD和VSS相連,以提高整個系統(tǒng)的性能。

第7頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用8基本定時器基本定時器T0是一個8位二進制加一計數(shù)器,由寄存器T0M選擇T0C的輸入時鐘。當T0溢出(從FFH至00)時,產(chǎn)生一個信號觸發(fā)T0中斷。T0基本定時器的功能如下:8位可編程定時器:根據(jù)所選的時鐘頻率,定時發(fā)出中斷請求信號。T0M寄存器T0M是一個8位可讀寫的基本定時器模式控制寄存器。通過載入不同的值,用戶可以在執(zhí)行程序的過程中調整基本定時器的時鐘。通過設置T0的T0RATE0~T0RATE2,定時器T0提供了8種可選擇的時鐘源頻率,從fcpu/2到fcpu/256。T0M的初始值為0,對應的時鐘源頻率為fcpu/256。T0M的bit7位T0ENB位是T0的啟動控制位。它們共同決定了T0定時器的時鐘源頻率和定時間隔。

第8頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用9T0M寄存器廚房用品浴室用品家飾擺設第9頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用10定時器初值計算T0C是一個8位定時計數(shù)器,只要T0ENB置“1”就開啟定時器。T0C是加1計數(shù)器,時鐘源頻率由T0RATE0~T0RATE2決定。當T0C計數(shù)到“0FFH”后,若再加1就會回到“00H”,產(chǎn)生溢出信號,T0中斷請求標志被置為“1”,如果T0中斷又同時被使能(T0IEN=1),那么系統(tǒng)將執(zhí)行T0的中斷服務程序。T0沒有自動加載功能,T0C溢出后,仍會繼續(xù)計數(shù),因此要得到精確的時鐘,用戶應該對T0C重新賦值。第10頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用11對T0控制的流程1置T0C初始值,設置定時器中斷間隔時間;2T0ENB置為“1”,T0計數(shù)開始;3根據(jù)T0M選擇時鐘源頻率,每個周期T0C加1;4如果T0從“FFH”

增至“00H”,T0溢出;5當T0發(fā)生溢出,T0IRQ通過硬件設為“1”;6執(zhí)行中斷服務程序;7用戶復位T0C,重新開始T0C定時器操作。第11頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用12初始化T0C和T0M例:初始化T0C和T0MB0BCLRFT0IEN;禁止T0中斷B0BCLRFT0ENB;停止T0計數(shù)MOVA,#00H;B0MOVT0M,A;設置T0定時模式Fcpu/64MOVA,#74HB0MOVT0C,A;設置T0初始值=74H(定時中斷為10ms)B0BCLRFT0IRQ;清T0中斷請求標志B0BSETFT0IEN;使能T0中斷B0BSETFT0ENB;開始T0計數(shù)

第12頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用13ADC電路的連接注:模擬輸入電壓必須在AVREFH和AVREFL之間。注:ADC設計時應注意:

設ADC的輸入引腳為輸入模式。

禁止ADC輸入引腳的上拉電阻。

使能ADC(ADENB=1)后延遲100us等待ADC電路準備好轉換。

在進入睡眠模式前禁止ADC(設置ADENB=0)以省電。

第13頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用14例程(變量定義)

CHIPSN8P2708A;選擇IC型號;-------------------------------------------------------------------------------;常量定義;-------------------------------------------------------------------------------;ONEEQU1;-------------------------------------------------------------------------------;變量定義;-------------------------------------------------------------------------------.DATAorg0h;數(shù)據(jù)放在Bank0中從地址0x00開始的地址Wk00B0DS1;主循環(huán)用到的臨時變量Iwk00B0DS1;中斷中用到的臨時變量AccBufDS1;用來保存Acc數(shù)據(jù)的寄存器PflagBufDS1;用來保存PFLAG數(shù)據(jù)的寄存器org100h;Bank1數(shù)據(jù)區(qū)BufB1DS20;Bank1中的臨時變量;-------------------------------------------------------------------------------;標志位定義;-------------------------------------------------------------------------------Wk00B0_0EQUWk00B0.0;Wk00B0的第0位Iwk00B0_1EQUIwk00B0.1;Iwk00的第一位;-------------------------------------------------------------------------------

第14頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用15.CODEORG0;代碼開始位置jmpReset;復位向量地址;地址4到7系統(tǒng)保留ORG8jmpIsr;中斷向量地址ORG10hReset:movA,#07Fh;初始化堆棧指針b0movSTKP,A;禁止中斷clrRBANK;在bank0初始化RAMclrRFLAG;pflag=x,x,x,x,x,c,dc,zmovA,#00h;初始化系統(tǒng)模式,清看門狗b0movOSCM,AmovA,#0x5Ab0movWDTR,A;清看門狗callClrRAM;清RAMcallSysInit;系統(tǒng)初始化程序

b0bsetFGIE;使能總中斷

例程(初始化)第15頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用16例程(主程序);-------------------------------------------------------------------------------;主程序循環(huán)區(qū);-------------------------------------------------------------------------------Main:movA,#0x5A;清看門狗計數(shù)器b0movWDTR,AcallMnAppjmpMain;-------------------------------------------------------------------------------;主程序;-------------------------------------------------------------------------------MnApp:;在這里放置主程序ret

第16頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用17例程(主程序);-------------------------------------------------------------------------------;主程序循環(huán)區(qū);-------------------------------------------------------------------------------Main:movA,#0x5A;清看門狗計數(shù)器b0movWDTR,AcallMnAppjmpMain;-------------------------------------------------------------------------------;主程序;-------------------------------------------------------------------------------MnApp:;在這里放置主程序Call key_scan;舉列在此調用程式。。。。Call display_led;無內(nèi)容ret

第17頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用18例程(檢查中斷)Isr:;保存ACC和工作寄存器的值b0xchA,AccBuf;使用B0xch不會影響到C,Z標志push;;保存80h~87h的系統(tǒng)寄存器的值IntP00Chk:b0bts1FP00IEN;檢查是否有中斷發(fā)生jmpIntTc0Chk;b0bts0FP00IRQjmpP00isr;如果需要,可以在這里插入其它的中斷IntTc0Chk:b0bts1FTC0IENjmpIsrExit;b0bts0FTC0IRQ;jmpTC0isrIsrExit:;退出中斷pop;;恢復80h~87h的系統(tǒng)寄存器的值b0xchA,AccBuf;使用B0xch不會影響到C,Z標志reti;中斷返回

第18頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用19例程(中斷服務程序);-------------------------------------------------------------------------------;INT0中斷服務程序;-------------------------------------------------------------------------------P00isr:b0bclrFP00IRQ;在這里處理外部中斷jmpIsrExit;-------------------------------------------------------------------------------;TC0中斷服務程序;-------------------------------------------------------------------------------TC0isr:b0bclrFTC0IRQ;在這里處理TC0中斷jmpIsrExit第19頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用20例程(上電清RAM);系統(tǒng)初始化程序;初始化I/O,定時器,中斷等SysInit:ret;清RAM﹐使用@YZ寄存器清RAM(00h~7Fh)ClrRAM:;RAMBank0clrY;選擇bank0b0movZ,#0x7f;設置@YZ地址為7fhClrRAM10:clr@YZ;清@YZdecmsZ;z=z–1,若z=0則跳過下一條指令jmpClrRAM10clr@YZ;清0x00;RAMBank1movA,#1b0movY,A;選擇bank1b0movZ,#0x7f;設置@YZ地址為17fhClrRAM20:clr@YZ;清@YZdecmsZ;z=z–1,若z=0則跳過下一條指令jmpClrRAM20clr@YZ;清0x100RetENDP﹔代碼結束第20頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用21編譯器界面介紹第21頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用22指令集(轉移指令與算朮運算)第22頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用23指令集(邏輯運算與位處理)第23頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用24指令集第24頁,共25頁,2023年,2月20日,星期一2023/4/27單片機原理應用25指令集(舉列)L1key equ p1.0 ﹔P1.0腳為L1鍵L2key equ p2.0 ﹔P2.0腳為L2鍵button1 equ 0x10 ﹔變量button1地址為0x10button2 equ 0x11 ﹔變量button2地

溫馨提示

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

評論

0/150

提交評論