復習單片機原理與應用-汪霖_第1頁
復習單片機原理與應用-汪霖_第2頁
復習單片機原理與應用-汪霖_第3頁
復習單片機原理與應用-汪霖_第4頁
復習單片機原理與應用-汪霖_第5頁
已閱讀5頁,還剩283頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

汪霖西北大學信息學院Email:wanglin@單片機原理與應用復習第一章計算機基礎知識第二章80C51單片機的硬件結構第三章80C51單片機指令系統(tǒng)第四章80C51單片機匯編語言程序設計第五章80C51單片機的中斷和定時1復習第六章單片機并行存儲器擴展第七章單片機并行IO擴展第八章單片機串行通信第九章單片機串行擴展第十章單片機A/D及D/A轉換接口2第一章計算機基礎知識1.1二進制數及其在計算機中的使用1.2二進制數的算術運算和邏輯運算1.3供程序設計使用的其他進制數1.4

計算機中使用的編碼1.5

微型計算機概述3常用數制(十進制/二進制/十六進制)及其相互轉換符號數/無符號數,原碼/反碼/補碼二進制的算術運算(加/減/乘/除)和邏輯運算(或/與/非/異或)計算機中使用的編碼:BCD碼/ASCII碼第一章計算機基礎知識4常用的進位計數制第一章計算機基礎知識進制符號集基數及規(guī)則一般表達式十進制ND{0,1,2,3,4,5,6,7,8,9}10(逢十進一)二進制NB{0,1}2(逢二進一)十六進制NH{0~9,A,B,C,D,E,F}16(逢十六進一)5不同數制間的轉換6

二進制/十六進制→十進制規(guī)則:先按權展開后,再按照十進制運算法則求和

二進制→十六進制(十六進制→二進制)規(guī)則:24=16,4位二進制數對應1位十六進制數第一章計算機基礎知識7十進制→二進制/十六進制(1)整數轉換法:“除基取余”,將十進制整數不斷除以轉換進制基數(2或16),直至商為0。每除一次取一個余數,從低位排向高位。25=11001B將25轉換為二進制數將156轉換為十六進制數156=9CH第一章計算機基礎知識8十進制→二進制/十六進制(2)小數轉換法:“乘基取整”:用轉換進制的基數(2或16)乘以小數部分,直至小數為0或達到轉換精度要求的位數。每乘一次取一次整數,從最高位排到最低位。將0.625轉換為二進制數將0.359375轉換為十六進制數0.625=0.101B0.359375=0.5CH第一章計算機基礎知識帶符號數的表示方法9

機器中,數的符號用“0”、“1”表示。最高位作符號位,“0”表示“+”,“1”表示“-”。在計算機中,所有有符號數都是以補碼形式存放的。第一章計算機基礎知識

無符號的8位二進制數沒有符號位,從D7~D0皆為數值位,所以8位無符號二進制數的表示范圍是0~+255。無符號數的表示方法原碼、反碼和補碼第一章計算機基礎知識表示方法符號數(最高位)數值位表示范圍(8位)正數負數正數負數原碼01與真值數值位相同與真值數值位相同-127~+127反碼原碼數值位逐位求反-127~+127補碼原碼數值求反加1-128~+12710二進制算術運算

加法、減法、乘法、除法

11第一章計算機基礎知識二進制邏輯運算

邏輯“或”運算

邏輯“與”運算

邏輯“非”運算

邏輯“異或”運算上述二進制邏輯運算均可按位進行,不同位之間不發(fā)生任何聯系。BCD碼(二-十進制編碼)12

BCD(BinaryCodedDecimal)碼是一種二進制形式的十進制碼,它用4位二進制數表示1位十進制數,最常用的是8421BCD碼。第一章計算機基礎知識ASCII碼美國信息交換標準代碼(ASCII碼)由7位二進制數碼構成,共有128個字符,它主要用于微機與外設通信?!癆”=41H“0”=30H“a”=61H第二章80C51單片機的硬件結構2.1單片機的概念2.280C51單片機的邏輯結構及信號引腳2.380C51單片機的內部存儲器2.480C51單片機的并行I/O口2.580C51單片機的時鐘與定時2.6

80C51單片機的系統(tǒng)復位2.7

單片機低功耗工作模式1380C51邏輯結構80C51的信號引腳及功能內部存儲器:RAM/ROM并行I/O口(P0~P3)時鐘電路和定時單位復位方式和復位電路低功耗工作模式:待機模式、掉電模式14第二章80C51單片機的硬件結構80C51單片機的內部邏輯結構15運算電路控制電路控制電路內部數據存儲器內部程序存儲器第二章80C51單片機的硬件結構16第二章80C51單片機的硬件結構

CPU:運算電路、控制電路

內部數據存儲器(256B):低128位(寄存器區(qū)、位尋址區(qū)、用戶RAM區(qū))+高128位(專用寄存器區(qū))

內部程序存儲器(4KB)

定時器/計數器(2個16位):工作方式

并行I/O口(4個):P0~P3

串行口(1個):工作方式

中斷控制電路:5個中斷源、中斷優(yōu)先級、中斷嵌套

時鐘電路、位處理器

內部總線:地址總線、數據總線、控制總線80C51單片機的引腳及其功能1780C51芯片引腳及芯片邏輯符號(40腳DIP封裝)第二章80C51單片機的硬件結構第二章80C51單片機的硬件結構控制信號名稱功能描述RST復位信號用于單片機的復位操作ALE地址鎖存控制信號作為地址鎖存的選通信號,實現低8位地址鎖存PSEN外部程序存儲器讀選通信號=0:外部ROM讀操作EA訪問程序存儲器控制信號=0:外部ROM=1:內部(0~4KB)外部RD外部RAM讀選通=0:讀外部RAMWR外部RAM寫選通=0:寫入外部RAM80C51單片機的控制信號1819單片程序存儲器擴展存儲器擴展:地址線、數據線和控制信號線連接存儲單元地址分析:8000H~87FFH(P2.6~P2.3均為0)P2.6~P2.3從0000~1111,則2716對應著16個地址區(qū)間線選法存在地址重疊問題第二章80C51單片機的硬件結構20數據存儲器擴展連接6116:2KB的數據存儲器芯片OE:數據輸出允許信號WE:寫選通信號第二章80C51單片機的硬件結構80C51存儲器配置2180C51程序存儲器和數據存儲器配置圖第二章80C51單片機的硬件結構內部數據存儲器低128單元區(qū)2280C51內部數據存儲器配置圖

通用寄存器區(qū)4組,每組8個寄存器(R7~R0)

位尋址區(qū)

用戶RAM區(qū)

供用戶使用的一般RAM區(qū),共80個單元。一般應用中常把堆棧開辟在此區(qū)中。第二章80C51單片機的硬件結構內部數據存儲器高128單元區(qū)23

高128單元區(qū)供專用寄存器SFR使用,單元地址為80H~0FFH,用于存放相應功能部件的控制命令、狀態(tài)或數據等。80C51共有21個專用寄存器。

累加器A(E0H):8位寄存器,最常用的專用寄存器B寄存器(F0H)8位寄存器,主要用于乘除運算;也可作為一般的數據寄存器使用。例如:(1)乘運算(MULAB):A與B相乘,高字節(jié)放在B中,低字節(jié)放在A中;(2)除運算(DIVAB):A除以B,商放在A中,余數放在B中。第二章80C51單片機的硬件結構24

程序狀態(tài)字PSW(D0H)位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標志CYACF0RS1RS0OV/P定義進位標志輔助進位用戶標志通用寄存器組選擇位溢出標志奇偶用于寄存指令執(zhí)行的狀態(tài)信息。PSW的各位定義如下:

數據指針DPTR(83H:82H)16位寄存器,在訪問外部64K數據存儲器時作地址指針用。DPH和DPL分別為DPTR的高8位和低8位字節(jié)。例:假定(A)=80H,執(zhí)行指令“ADDA,#0F3H”后,(CY)=?(AC)=?(OV)=?(P)=?第二章80C51單片機的硬件結構堆棧操作25

堆棧的功能堆棧主要是為子程序調用和中斷操作而設立的,對應有兩項功能:保護斷點和保護現場。

堆棧的特點:后進先出

堆棧的定義及初始化堆棧指示器SP是一個8位寄存器,用來指示堆棧頂部在內部RAM中的位置。系統(tǒng)復位后,SP的初始值為07H,使得堆棧實際上是從08H開始的。但08H~1FH隸屬1~3通用寄存器區(qū),因此必須對堆棧指針SP進行初始化,一般設在30H—1FH之間較為適宜。第二章80C51單片機的硬件結構26

堆棧類型及使用方式兩種類型:向上生長型和向下生長型。80C51使用向上生長型堆棧。進棧操作:先SP加1,后寫入數據;出棧操作:先讀出數據,后SP減1。

堆棧使用方式:自動方式和指令方式。第二章80C51單片機的硬件結構內部程序存儲器27

功能:用于存放編好的程序和表格常數。

如何工作:程序計數器(PC),也叫PC指針,是取指地址。上電復位后PC內容為0000H,即從0000H地址的指令順序執(zhí)行,最大為FFFFH,所以程序空間為64K。

程序存儲器配置:64K空間分為片內ROM和片外ROM,但統(tǒng)一編址。第二章80C51單片機的硬件結構并行口的分工80C51單片機共有4個8位雙向并行輸入/輸出(I/O)口,分別為:P0、P1、P2、P3。這4個口可以并行輸入或輸出8位數據;也可以按位使用,即每一根輸入/輸出線都能獨立的用作輸入或輸出。

P0口:分時送出8位數據和低八位地址、I/O口28

P1口:I/O口

P2口:高八位地址、I/O口

P3口:I/O口、第二功能輸入輸出第二章80C51單片機的硬件結構時鐘電路

為保證同步工作方式的實現,單片機必須有時鐘信號,以使其系統(tǒng)在時鐘信號的控制下按時序協(xié)調工作。時鐘信號由時鐘電路產生,其中時鐘電路由振蕩電路和分頻電路兩部分所組成。29

振蕩電路

石英晶體作為感性元件,與電容構成振蕩回路,為片內放大器提供正反饋和振蕩所需的相移條件,從而構成一個穩(wěn)定的自激振蕩器。第二章80C51單片機的硬件結構30

分頻電路振蕩電路產生的振蕩信號并不直接為單片機所用,而要進行分頻,以得到單片機各種相關的時鐘信號。

時鐘信號;ALE;機器周期信號第二章80C51單片機的硬件結構定時單位31拍節(jié)與狀態(tài)將振蕩脈沖的周期定義為拍節(jié)(P);將振蕩脈沖經二分頻后的單片機時鐘信號的周期定義為狀態(tài)(S)。1S=2P機器周期規(guī)定一個機器周期的寬度為6個狀態(tài),S1~S6。指令周期執(zhí)行一條指令所需要的時間,可包含1個、2個或4個機器周期。第二章80C51單片機的硬件結構復位方式32復位是單片機的硬件初始化操作,經復位操作后,單片機系統(tǒng)才能開始正常工作。當復位信號引腳RST保持2個機器周期以上的高電平輸入時,就可完成復位操作。加電復位開機加電時,通過專用的復位電路自動產生復位信號。手動復位若單片機遇到死機、死循環(huán)或程序“跑飛”等情況時,通過手動按鍵操作,使專用的復位電路產生復位信號。第二章80C51單片機的硬件結構80C51基本復位電路33上電復位:通過電容充電來實現按鍵電平復位:復位端經R1電阻與Vcc接通按鍵脈沖復位:RC微分電路產生正脈沖第二章80C51單片機的硬件結構待機和掉電方式控制電路與門待機模式(IdleMode)34如何設置待機模式?電源控制寄存器PCON使用指令將電源控制寄存器PCON的IDL位(PCON.0)置1,80C51單片機就進入待機模式。

進入待機模式指令:MOVPCON#01H;IDL←1第二章80C51單片機的硬件結構35待機模式主要特點(1)片內振蕩器仍振蕩,但不向CPU提供時鐘;(2)工作電流降低;(3)與CPU有關的如SP、PC、PSW、ACC以及全部通用寄存器也都被“凍結”在原狀態(tài)。如何退出待機模式?(1)中斷——結束待機,IDL自動被硬件清除(2)復位——使RST保持兩個機器周期,“復位”也自動清除IDL第二章80C51單片機的硬件結構掉電模式(PowerDownMode)36如何設置掉電模式?掉電模式主要特點(1)片內振蕩器停振,單片機停止工作;(2)工作電流大大降低;(3)內部RAM單元的內容被保存。

PCON寄存器中的PD位置1,則進入掉電模式。

進入掉電模式指令:MOVPCON#02H;PD←1如何退出掉電模式?

只能通過硬件復位來退出掉電模式,并將重新定義所有的SFR,但不改變片內RAM的值。第二章80C51單片機的硬件結構第三章80C51單片機指令系統(tǒng)3.1單片機指令系統(tǒng)概述3.280C51單片機指令尋址方式3.380C51單片機指令分類介紹3780C51單片機的7種尋址方式80C51指令系統(tǒng)中各指令的格式及功能38第三章80C51單片機指令系統(tǒng)指令格式39標號:程序員根據編程需要給指令設定的符號地址[標號:]操作碼

[目的操作數][,源操作數][;注釋]例:LOOP:MOVA,#40H;取參數操作碼:表示指令的操作種類,如MOV為數據傳送操作操作數:參加運算的數據或數據的有效地址注釋:對指令的解釋說明,用以提高程序的可讀性無操作數項:操作數隱含在操作碼中,如RET指令1個操作數:如INCA2個操作數:如MOVA,#00H3個操作數:如CJNEA,#00H,rel第三章80C51單片機指令系統(tǒng)80C51的7種尋址方式40第三章80C51單片機指令系統(tǒng)寄存器尋址方式41特點:操作數在寄存器中,由指令指出的某個寄存器的內容作為操作數;尋址范圍:四組通用寄存器Rn(R0~R7)、部分專用寄存器(A,B,DPTR,CY)。例:INCR3;R3←(R3)+1第三章80C51單片機指令系統(tǒng)直接尋址方式42特點:指令中操作數直接以存儲單元地址的形式給出,該地址指出操作數所在的字節(jié)單元地址或位地址;尋址范圍:片內RAM區(qū)(低128字節(jié))、專用寄存器。例:MOVA,70H

;A←(70H)第三章80C51單片機指令系統(tǒng)寄存器間接尋址方式43特點:指令給出的寄存器中存放的是操作數據的單元地址,寄存器前邊必須加前綴符號“@”;尋址范圍:內部RAM低128B(R0或R1);外部RAM(DPTR);外部低256單元RAM(DPTR或R0或R1)例:MOVA,@R0;A←((R0))第三章80C51單片機指令系統(tǒng)立即尋址方式44特點:操作數在指令中直接給出,該操作數是8位立即數(#data)或16位立即數(#data16),在立即數前面加“#”標志。例:MOVA,#20H

;A←20H第三章80C51單片機指令系統(tǒng)變址尋址方式45特點:操作數存放在變址寄存器(累加器A)和基址寄存器(DPTR或PC)相加形成的16位地址單元中;尋址范圍:程序存儲器(64K)例:MOVCA,@A+DPTR;A←((A)+(DPTR))第三章80C51單片機指令系統(tǒng)位尋址方式46特點:操作數為一個可單獨尋址的位地址;尋址范圍:片內RAM低128B中位尋址區(qū)(20H~2FH,位地址為00H~7FH)、部分SFR(共83位可位尋址)。例:MOVC,P1.0

;進位位CY←(P1.0)第三章80C51單片機指令系統(tǒng)相對尋址方式47特點:目的地址=轉移指令地址+轉移指令字節(jié)數+地址偏移量(rel);尋址范圍:只能對程序存儲器ROM進行尋址,rel由帶符號的8位二進制補碼(-128~+127)表示。例:JZrel;累加器判零轉移:若(A)=0,跳轉;否則,不跳轉轉移指令地址:1000H轉移指令字節(jié)數:2(JZ)地址偏移量:75H目的地址:1000H+2H+75H=1077H第三章80C51單片機指令系統(tǒng)4880C51指令分類(按功能分)數據傳送類(29條):MOV,MOVX,MOVC,XCH/XCHD/SWAP,PUSH/POP算術運算類(24條):ADD,ADDC,SUBB,INC,DEC,MUL/DIV,DA邏輯運算及移位類(24條):ANL,ORL,XRL,CLR/CPL,RL/RR/RLC/RRC控制轉移類(17條):LJMP/AJMP/SJMP/JMP,JZ/CJNE/DJNZ,ACALL/LCALL/RET/RETI,NOP位操作類(17條):MOV,SETB/CLR,ANL/ORL/CPL,JC/JNC/JB/JNB/JBC第三章80C51單片機指令系統(tǒng)49數據傳送類指令助記符:MOV,MOVX,MOVC,XCH/XCHD/SWAP,PUSH/POP指令格式:助記符<目的操作數>,<源操作數>源操作數尋址方式(5種):立即尋址,直接尋址,寄存器尋址,寄存器間接尋址,變址尋址目的操作數尋址方式(3種):寄存器尋址,寄存器間接尋址,直接尋址對標志位影響:除了目的操作數為ACC的指令影響奇偶標志P外,一般不影響標志位第三章80C51單片機指令系統(tǒng)50MOV/MOVX/MOVC指令MOV指令用于訪問片內RAM和SFR

MOVX指令用于訪問片外RAM和外部I/OMOVC指令用于讀取ROM中的常數例:把內(外)部RAM中起始地址為data,長度為N的數據串傳送到內(外)部RAM以buffer為首地址的區(qū)域。如何編程實現?第三章80C51單片機指令系統(tǒng)51堆棧操作指令進棧指令,將內部RAM單元內容送入棧頂單元PUSHdirect;SP←(SP)+l,(SP)←(direct)出棧指令,將棧頂單元內容取出傳送到內部RAM單元POPdirect;direct←((SP))

,SP←(SP)-l例:MOVA,#20H

MOVB,#30H

PUSHA

PUSHB

POPA

POPB

執(zhí)行完上述指令后,(A)=?,(B)=?第三章80C51單片機指令系統(tǒng)52算術運算類指令助記符:ADD,ADDC,SUBB,INC,DEC,MUL/DIV,DA源操作數尋址方式(4種):立即尋址,直接尋址,寄存器間接尋址,寄存器尋址目的操作數主要尋址方式:寄存器尋址(累加器A)對標志位影響:加、減、乘、除、加1、減1、十進制調整等運算指令影響PSW有關位(P,OV,AC,CY)第三章80C51單片機指令系統(tǒng)53乘除指令乘法指令MULAB;BA←(A)×(B),即乘積低8位→A,高8位→B除法指令DIVAB;A←(A)/(B)的商

,B←(A)/(B)的余數乘除指令執(zhí)行后,進位標志位CY總是被清0乘法指令執(zhí)行后,若乘積大于255(FFH),則溢出標志位OV置1,乘積分別存放在B與A中;否則OV=0,(B)=0除法指令執(zhí)行后,若除數為0,則OV置1,表明除法無意義;否則OV清0,除法可正常進行第三章80C51單片機指令系統(tǒng)54邏輯運算及移位類指令助記符:ANL,ORL,XRL,CLR/CPL,RL/RR/RLC/RRC指令格式:助記符<目的操作數>,<源操作數>源操作數尋址方式(4種):立即尋址,直接尋址,寄存器尋址,寄存器間接尋址目的操作數尋址方式(2種):直接尋址,寄存器尋址(累加器A)對標志位影響:當A作目的操作數時,影響P位;帶進位的移位指令影響CY位,其余都不影響PSW第三章80C51單片機指令系統(tǒng)55控制轉移類指令助記符:LJMP/AJMP/SJMP/JMP,JZ/CJNE/DJNZ,ACALL/LCALL/RET/RETI,NOP基本功能:利用控制轉移類指令可強迫修改PC值,從而改變程序的執(zhí)行順序對標志位影響:此類指令不影響PSW種類:無條件轉移指令(4條)+條件轉移指令(8條)+子程序調用和返回指令(4條)+空操作指令(1條)第三章80C51單片機指令系統(tǒng)56控制轉移類指令無條件轉移指令條件轉移指令子程序調用和返回指令空指令第三章80C51單片機指令系統(tǒng)57位操作類指令助記符:MOV,SETB/CLR,ANL/ORL/CPL,JC/JNC/JB/JNB/JBC基本功能:用于進行位的傳送、置1、清0、取反、位狀態(tài)判斷轉移、位邏輯運算及位輸入/輸出等供用戶使用的位處理硬件資源有:1)位累加器CY;2)內部RAM位尋址區(qū)的128個可尋址位;3)專用寄存器的可尋址位(累加器位的表示應使用ACC,而不能用A,如:ACC.0);4)I/O口的可尋址位第三章80C51單片機指令系統(tǒng)第四章80C51匯編語言程序設計4.1

單片機程序設計語言概述4.2

匯編語言程序的基本結構形式4.380C51單片機匯編語言程序設計舉例4.4

單片機匯編語言源程序的編輯和匯編4.580C51單片機匯編語言偽指令58程序設計基本概念標號、操作碼、操作數、注解偽指令:ORG、DB、DW、EQU等程序狀態(tài)字PSW常用程序結構:順序結構、分支結構、循環(huán)結構順序程序:直線程序分支程序:單重分支;多重分支(多次使用條件轉移指令,地址表法,轉移指令表法,通過堆棧操作)循環(huán)程序:由初始化、循環(huán)體、控制變量的修改、循環(huán)次數的控制4部分構成。其中循環(huán)次數有記數控制和特征標志控制兩種。59第四章80C51匯編語言程序設計順序結構程序是最簡單的程序結構,也稱直線程序。程序既無分支、循環(huán),也不調用子程序,程序執(zhí)行時一條接一條地按順序執(zhí)行指令,沒有流程的轉移。順序結構……MOVP1,#00HMOVP1,#0FFHMOVP1,#1CH60第四章80C51匯編語言程序設計程序的分支是通過條件轉移指令實現的。根據條件對程序執(zhí)行中的狀態(tài)進行判斷,滿足條件則進行轉移,否則按順序執(zhí)行。分支結構也稱為選擇結構,它可分為單分支結構和多分支結構。分支結構61多分支程序結構單分支程序結構第四章80C51匯編語言程序設計循環(huán)結構62包含多次重復執(zhí)行的程序段,循環(huán)結構使程序緊湊。程序循環(huán)是通過條件轉移指令進行控制的,根據條件是否成立控制循環(huán)是否進行。循環(huán)程序通常由四個部分組成:1)循環(huán)準備:設置循環(huán)次數等參數;2)循環(huán)體:是要求重復執(zhí)行的部分;3)循環(huán)修改:修改循環(huán)次數及有關變量參數等;4)循環(huán)控制部分:根據循環(huán)結束條件判斷是否結束循環(huán)。第四章80C51匯編語言程序設計63循環(huán)程序的兩種組織方式第四章80C51匯編語言程序設計64循環(huán)程序舉例(數據串傳送程序)把內部RAM中起始地址為data的數據串傳送到外部RAM以buffer為首地址的區(qū)域,直到發(fā)現“$”字符的ASCII碼為止;同時規(guī)定數據串的最大長度為32字節(jié)。 MOVR0,#data;data數據區(qū)起始地址

MOVDPTR,#buffer;buffer數據區(qū)起始地址 MOVR1,#20H;最大串長LOOP: MOVA,@R0;取數據 CLRC SUBBA,#24H;判斷是否為“$”字符 JZLOOP1 MOVA,@R0;重新取數據 MOVX@DPTR,A;數據存入 INCDPTR INCR0 DJNZR1,LOOP;循環(huán)控制,(R1)-1R1,(R1)不為0轉LOOP1:RET第四章80C51匯編語言程序設計65

MOVR5,#TIME

;單機器周期指令LOOP:NOP;單機器周期指令

NOP

DJNZR5,LOOP;雙機器周期指令總延時時間(不計“MOVR5,#TIME”指令):4T機器×TIME

MOVR5,#TIME1LOOP2:MOVR4,#TIME2LOOP1:NOP NOP DJNZR4,LOOP1 DJNZR5,LOOP2 RET;雙機器周期內循環(huán)LOOP1單次循環(huán)延時t1:4T機器外循環(huán)LOOP2單次循延時t2:T機器+

t1×TIME2+2T機器總延時(不計“MOVR5,#TIME1”):t2×TIME1+2T機器循環(huán)程序舉例2—定時程序第四章80C51匯編語言程序設計第五章80C51單片機的中斷與定時5.1

中斷概述5.280C51單片機的中斷系統(tǒng)5.380C51單片機的定時器/計數器665個中斷源及其對應入口地址2個外部中斷INT0、INT12個定時器溢出中斷T0、T1串行中斷RI/TI中斷優(yōu)先原則、中斷嵌套分兩個優(yōu)先級(高級/低級)同級:INT0→T0→INT1→T1→RI/TI定時器/記數器的工作原理、4種工作方式及其應用方式2能自動重裝初值方式0、1、3不能,必須需重裝67第五章80C51單片機的中斷與定時中斷源68外部中斷外部中斷請求0(INT0),由P3.2引腳引入外部中斷請求1(INT1),由P3.3引腳引入內部中斷定時器/計數器T0溢出中斷請求定時器/計數器T1溢出中斷請求串行口發(fā)送/接收中斷請求第五章80C51單片機的中斷與定時中斷向量69中斷源中斷向量外部中斷0定時器0溢出外部中斷1定時器1溢出串行發(fā)送中斷串行接收中斷0003H000BH0013H001BH

0023H0023H第五章80C51單片機的中斷與定時中斷控制的內容70(1)中斷允許控制(2)中斷請求控制(3)中斷優(yōu)先控制(4)外中斷觸發(fā)方式控制與中斷系統(tǒng)相關的SFR中斷允許控制寄存器IE:控制中斷是否被允許定時器控制寄存器TCON:控制外中斷的觸發(fā)方式、外中斷及定時器中斷的標志位設置串行口控制寄存器SCON:控制串行口中斷的工作方式及其標志設置中斷優(yōu)先級控制寄存器IP:控制各中斷源的中斷優(yōu)先級別第五章80C51單片機的中斷與定時中斷優(yōu)先級定義原則71(1)中斷的輕重緩急程序(2)中斷設備的工作速度(3)中斷處理的工作量(4)中斷請求發(fā)生的頻繁程度中斷響應的優(yōu)先原則(1)低級中斷可被高級中斷所中斷,反之不能(2)若某中斷請求已被響應,則同級的中斷服務將被禁止(3)相同級別的中斷同時到來時,CPU按其中斷入口地址的先后次序依次響應:外部中斷0定時器0中斷外部中斷1定時器中斷1串行中斷例如:若設置IP=12H,則CPU響應中斷的順序如何?第五章80C51單片機的中斷與定時二級中斷嵌套72高優(yōu)先級中斷請求可打斷低優(yōu)先級中斷服務,進行中斷嵌套同優(yōu)先級的中斷不能嵌套低優(yōu)先級中斷請求不能對高優(yōu)先級的中斷進行嵌套第五章80C51單片機的中斷與定時中斷響應條件73(1)有中斷請求;(2)CPU開放中斷,即EA=1;(3)對應的中斷源允許中斷,即IE中相應的中斷允許位為1;(4)無同級或高級中斷正在服務;(5)現行指令執(zhí)行結束;(6)當前執(zhí)行的不是RETI或訪問IE、IP的指令(這些指令執(zhí)行完后必須至少再執(zhí)行一條指令)。第五章80C51單片機的中斷與定時74定時器方式選擇寄存器TMOD(89H)

TMOD寄存器沒有位地址,不能進行位尋址,只能由字節(jié)傳送指令設置其內容。第五章80C51單片機的中斷與定時75M1M0工作方式功能描述00方式013位計數器01方式116位計數器10方式2自動再裝入8位計數器11方式3定時器0:TL0用于8位計數或8位定時,TH0只能作8位定時器定時器1:停止計數M1和M0控制的4種工作方式第五章80C51單片機的中斷與定時工作方式0的主要特點7613位方式的定時或計數;兩種啟??刂品椒ǎ海?)純軟件方法:GATE=0,由TRx控制運行;(2)軟硬件結合方法:GATE=1,由TRx和INTx引腳(高電平)共同控制運行;定時時間t、計數值N和計數初值X的關系:

N=213

-初值Xt=N×振蕩周期×12=N×機器周期Tcy

t=(213-初值X)×振蕩周期×12=(213-初值X)×機器周期Tcy最大計數值為:213=8192第五章80C51單片機的中斷與定時應用舉例77設單片機晶振頻率為6MHz,使用定時器1以方式0產生周期為500μs的等寬正方波連續(xù)脈沖,并由P1.0輸出。解:500μs等寬正方波脈沖P1.0端以250μs為周期交替輸出等寬高低,故定時周期取為250μs。(1)TMOD寄存器初始化把定時器1設為方式0,則M1M0=00;為實現定時功能,應使C/T=0;由TR1位控制定時的啟動和停止,應使GATE=0;故TMOD初始化為00H。(2)計算計數初值X

(213–X)×2μs=250μsX=8067=1111110000011B

將X高8位0FCH放入TH1,低5位03H放入TL1。第五章80C51單片機的中斷與定時78(3)程序實現(查詢方式)MOVTMOD,#00H;設置T1為工作方式0MOVTH1,#0FCH;設置計數初值MOVTL1,#03HMOVIE,#00H ;禁止中斷SETBTR1 ;啟動定時LOOP:JBCTF1,LOOP1;查詢計數溢出AJMPLOOPLOOP1:MOVTH1,#0FCH;重新設置計數初值MOVTL1,#03H

CPLP1.0 ;輸出取反AJMPLOOP ;重復循環(huán)

第五章80C51單片機的中斷與定時79(4)程序實現(中斷方式)

ORG0000HAJMPMAIN

ORG001BH

;定時器1中斷的中斷向量

AJMPT1PRO

ORG0030H ;主程序MAIN:MOVTMOD,#00H;設置T1為工作方式0MOVTH1,#0FCH;設置計數初值MOVTL1,#03HMOVIE,#88H;僅允許定時器1中斷MOVIP,#00H;各中斷均設為低優(yōu)先級SETBTR1;啟動定時SJMP$;等待中斷T1PRO:MOVTH1,#0FCH;中斷程序MOVTL1,#03H

CPLP1.0;輸出取反RETI主程序中斷服務程序第五章80C51單片機的中斷與定時80(5)查詢方式與中斷方式的比較主程序中斷服務程序查詢方式中斷方式第五章80C51單片機的中斷與定時定時器工作方式1的電路邏輯結構及功能81M1M0=01,16位定時/計數器(TH0的8位和TL0的8位)邏輯電路和工作情況與方式0完全相同計數值的范圍是1~65536(216)TL0(8位)第五章80C51單片機的中斷與定時定時器工作方式2的電路邏輯結構82M1M0=10,自動重裝8位定時/計數器TL作為計數器使用;TH作為預置寄存器,保存TL初值計數范圍1~256(28)第五章80C51單片機的中斷與定時循環(huán)定時應用83使用定時器0以工作方式2產生100μs定時,在P1.0輸出周期為200μs的連續(xù)正方波脈沖。已知晶振頻率為6MHz。(1)計算計數初值X

(28–X)×2μs=100μsX=206=0CEH

將0CEH分別裝入TH0和TL0。(2)TMOD寄存器初始化把定時器0設為方式2,則M1M0=10;為實現定時功能,應使C/T=0;由TR0位控制定時的啟動和停止,應使GATE=0;故TMOD初始化為02H。第五章80C51單片機的中斷與定時84(3)程序實現(查詢方式)MOVIE,#00H;禁止中斷MOVTMOD,#02H;設置定時器0為方式2MOVTH0,#0CEH;保存計數初值MOVTL1,#0CEH;預置計數初值SETBTR0 ;啟動定時LOOP:JBCTF0,LOOP1;查詢計數溢出AJMPLOOPLOOP1:CPLP1.0 ;輸出取反AJMPLOOP ;重復循環(huán)

第五章80C51單片機的中斷與定時工作方式3下的定時器/計數器085TL0即可計數也可定時,與其它方式完全相同TH0只能定時,不能用外部控制門,且占用T1的資源TR1和TF1,有運行控制和溢出中斷請求第五章80C51單片機的中斷與定時工作方式3下的定時器/計數器186T1可以模式0~2定時或計數,但溢出無中斷請求,且開關已經接通。常以模式2工作,作為串口的波特率發(fā)生器。第五章80C51單片機的中斷與定時第六章單片機并行存儲器擴展6.1單片機并行外擴展系統(tǒng)6.2

存儲器分類6.3

存儲器并行擴展6.480C51存儲器系統(tǒng)的特點和使用方法87單片機并行擴展總線:AB、DB、CB并行擴展系統(tǒng)的芯片選?。壕€選法;譯碼法存儲器并行擴展程序存儲器并行擴展數據存儲器并行擴展80C51存儲器系統(tǒng)的特點4個物理存儲空間3個邏輯存儲空間80C51存儲器的區(qū)分和銜接88第六章單片機并行存儲器擴展80C51單片機并行擴展總線8980C51單片機并行擴展總線結構圖以P0口的8位口線充當低8位地址線/數據線以P2口的口線作高8位地址線控制信號(ALE/PSEN/EA/RD/WR)16位地址總線第六章單片機并行存儲器擴展片選技術90線選法尋址直接以位地址信號作為芯片的片選信號結構簡單,但只適用于規(guī)模較小的單片機系統(tǒng)譯碼法尋址使用譯碼器對高位地址進行譯碼,以其譯碼輸出作為擴展芯片的片選信號有效利用存儲空間,適用于大容量、多芯片系統(tǒng)擴展第六章單片機并行存儲器擴展91存儲器擴展:地址線、數據線和控制信號線連接存儲單元地址分析:8000H~87FFH(P2.6~P2.3均為0)P2.6~P2.3從0000~1111,則2716對應著16個地址區(qū)間線選法存在地址重疊問題程序存儲器并行擴展第六章單片機并行存儲器擴展92兩片程序存儲器擴展80C51ALEPSEN74LS373GP2.2~P2.0CEA10~A8O7~O0OE2716P0CEA10~A8O7~O0OE2716P2.7A7~A0A7~A0第六章單片機并行存儲器擴展93數據存儲器并行擴展第六章單片機并行存儲器擴展80C51單片機存儲器系統(tǒng)的特點94程序存儲器和數據存儲器并存內外存儲器并存:4個物理存儲空間;3個邏輯存儲空間程序存儲器地址具有連續(xù)性要求80C51存儲器的4個物理存儲空間和3個邏輯存儲空間第六章單片機并行存儲器擴展80C51單片機存儲器的使用95存儲空間的區(qū)分內部ROM與內部RAM的區(qū)分(MOVC/MOV)外部ROM與外部RAM的區(qū)分(MOVC/MOVX)內外RAM的區(qū)分(MOV/MOVX)內外程序存儲器的銜接出于連續(xù)執(zhí)行程序的需要,內外ROM采用統(tǒng)一連續(xù)編址第六章單片機并行存儲器擴展第七章單片機并行I/O擴展7.1單片機I/O擴展基礎知識7.2可編程并行接口芯片82557.3鍵盤接口技術7.4

LED顯示器接口技術7.5打印機接口技術96接口的功能、編址方式、控制方式(無條件、查詢、中斷)通用并行接口芯片8255的結構、工作方式、編程內容和應用鍵盤接口技術LED顯示器接口技術打印機接口技術97第七章單片機并行I/O擴展I/O接口電路的功能98速度協(xié)調外設間速度差異大,單片機以異步方式進行I/O操作利用接口電路產生狀態(tài)信號或中斷請求信號輸出數據鎖存數據總線隔離接口電路提供具有三態(tài)緩沖功能的三態(tài)緩沖電路數據轉換信號的類型(數字/模擬)、電平(高/低)、格式(串行/并行)等的轉換增強驅動能力第七章單片機并行I/O擴展I/O編址技術99統(tǒng)一編址方式I/O接口的寄存器與外擴展RAM存儲器的存儲單元同等對待,共同使用一個64KB的外擴展地址空間I/O也采用16位地址編址,使用RAM讀/寫指令進行I/O操作,增強了I/O操作功能大部分單片機(如80C51)采用該方式獨立編址方式I/O與存儲器分開進行編址存儲器地址空間與I/O地址空間相互獨立,增加了系統(tǒng)開銷第七章單片機并行I/O擴展單片機I/O控制方式100無條件方式(同步程序傳送)無需測試設備的狀態(tài),可根據需要隨時進行I/O操作適用設備:1)具有常駐的或變化緩慢的數據信號的設備,如機械開關、指示燈等;2)工作速度非??欤阋院蛦纹瑱C同步工作的設備,如D/A轉換器查詢方式(有條件傳送方式)要檢測設備的狀態(tài),只有在確認設備已“準備好”的情況下,單片機才能執(zhí)行I/O操作中斷方式單片機等待通知(中斷請求)的被動行為第七章單片機并行I/O擴展101口電路(3個8位口)A/B口:數據口C口:數據/控制口總線接口電路數據總線緩沖器:D0~D7讀/寫控制邏輯:CS,RD,

WR,A0、A1,RESETA組和B組控制電路存放編程命令和實現各口操作控制中斷控制電路8255硬件邏輯結構第七章單片機并行I/O擴展102方式0(基本輸入/輸出方式)適用于無條件數據傳送兩個8位口(A/B口),兩個4位口(C口高/低位部分)均可分別或同時設置為方式0方式0下4個口共有16種輸入/輸出組合方式1(選通輸入/輸出方式)適用于以查詢或中斷方式進行控制A/B口是數據口控制口C口用于傳送和保存數據口所需要的聯絡信號8255工作方式第七章單片機并行I/O擴展103方式2(雙向數據傳送方式)適用于查詢或中斷方式的雙向數據傳送A口既能輸入數據,也能輸出數據A口為方式2,則B口只能工作于方式0C口位線方式1方式2輸入輸出輸入輸出PC7/OBFA/OBFAPC6/ACKA/ACKAPC5IBFAIBFAPC4/STBA/STBAPC3INTRAINTRAINTRAINTRAPC2/STBB/ACKBPC1IBFB/OBFBPC0INTRBINTRBC口聯絡信號定義第七章單片機并行I/O擴展鍵掃描和鍵碼生成1048行×4列的矩陣鍵盤舉例共有8條行線4條列線,在行線與列線交點處有1個鍵。鍵盤掃描示意圖第七章單片機并行I/O擴展105鍵盤掃描為了識別鍵盤上被按下的鍵(閉合鍵),有(行)掃描法和線反轉法兩種方法可供選用,單片機中常用前種方法。軟件方法鍵盤掃描是在掃描程序驅動下進行的,故掃描過程即掃描程序的執(zhí)行過程,具體過程如下:1)判斷有無閉合鍵:使行線輸出口輸出全0,若讀回列線狀態(tài)為全1,則沒鍵按下,否則,有鍵按下。2)鍵盤掃描過程:依次使行線中每一條輸出低電平,接著輸入列線狀態(tài)進行有無閉合鍵的判定。3)判斷有無多個鍵被同時按下第七章單片機并行I/O擴展第八章單片機串行通信8.1串行通信基礎知識8.280C51串行口8.380C51串行口工作方式8.4

串行通信數據傳輸速率8.5串行通信應用106串行通信的基本原理和基本方式(同步和異步)串行數據的傳送方向:單工、半雙工和全雙工串行口控制寄存器SCON串行通信4種工作方式:傳送位數、波特率串行通信的應用:雙機通信、多機通信107第八章單片機串行通信計算機的數據傳輸方式108并行數據傳輸串行數據傳輸(異步/同步)原理各數據位同時傳輸數據位按位順序進行優(yōu)點傳輸速度快,效率高最少只需一根傳輸線:成本低缺點數據位數傳輸線根數:成本高速度慢應用傳遞距離<30m,用于計算機內部遠距離數據傳輸并行通信串行通信第八章單片機串行通信串行通信線路形式109單工通信(數據單向傳送)半雙工通信(數據可分時雙向傳送)全雙工通信(可同時進行發(fā)送和接收)第八章單片機串行通信異步串行通信110定義:以字符為單位的間歇傳輸形式信息的兩種狀態(tài):mark(邏輯1)/space(邏輯0)字符格式(幀格式):起始位(space狀態(tài))+數據位(5~8位)+奇偶校驗位(奇/偶校驗)+停止位(mark狀態(tài))連續(xù)/斷續(xù)的異步串行通信第八章單片機串行通信同步串行通信111定義:以一串字符為一個傳送單位,字符間不加標識位,在一串字符開始用同步字符標識,硬件要求高,通訊雙方須嚴格同步數據格式:1)僅在數據塊傳輸開始時使用同步字符串;2)數據字符間不允許有間隔;3)數據塊內各字符的格式必須相同應用場合:數據量大、對速度要求比較高的串行通信場合第八章單片機串行通信串行口控制機制112串行口控制寄存器SCON(98H)第八章單片機串行通信80C51串行口的4種工作方式113SM0/SM1方式功能簡述發(fā)送端接收端波特率0008位同步移位寄存器方式:接移位寄存器,擴充并口RXDRXDfOSC/1201110位異步串行通信方式:雙機通信TXDRXD可變10211位異步串行通信方式:多機通信TXDRXDfOSC/32或fOSC/6411311位異步串行通信方式:多機通信TXDRXD可變第八章單片機串行通信串行口工作方式的幀格式114方式0(8位數據)方式1(1個起始位+8位數據+1個停止位)方式2和方式3(1個起始位+8位數據+1個附加第9位+1個停止位)第八章單片機串行通信傳輸速率的表示方法115與傳輸速率有關的術語波特(Baud):1波特=每秒1次的信號變化波特率(BaudRate):每秒事件發(fā)生的數目或信號變化次數比特率(BitRate):每秒傳輸的二進制數的位數單片機中使用的波特率

1波特=1b/s(位/秒)

RS-232-C中規(guī)定允許的波特率為50~19200b/s第八章單片機串行通信80C51的波特率設置116串行工作方式0的波特率=fOSC/12串行工作方式2的波特率=

fOSC×2smod/64

第八章單片機串行通信117串行工作方式1和方式3的波特率

假定定時器T1的計數初值為X,則計數器溢出周期(溢出率的倒數)為:(12/fOSC)

×(256

-X),故

第八章單片機串行通信第九章單片機串行擴展9.1單片機串行擴展概述9.2I2C總線9.3單片機8×C552的I2C總線9.4單片機8×C552的串行擴展9.5單片機80C51的串行擴展118單片機串行擴展實現方法專用串行標準總線方法串行通信口UART方法軟件模擬方式I2C總線的結構和數據傳輸方式(主發(fā)送方式、主接收方式、從發(fā)送方式、從接收方式)119第九章單片機串行擴展單片機串行擴展實現方法120專用串行標準總線方法SPI總線(Motorola)USB總線(Intel)ACCESS總線(DEC)I2C總線(Philips)串行通信口UART方法串行通信口UART的工作方式0軟件模擬方式通過對并行口線的軟件模擬第九章單片機串行擴展I2C總線結構121I2C總線是一種具有自動尋址、高低速設備同步和仲裁等功能的高性能串行總線由串行時鐘線(SerialClockLine,SCL)和串行數據線(SerialDataLine,SDA)構成的雙向數據傳輸通路第九章單片機串行擴展122基本數據傳輸格式(高位在前,低位在后)I2C總線數據傳輸方式總線空閑主控器件發(fā)出啟動信號啟動數據傳輸尋址字節(jié):7位從地址(SLA)+1位方向位(R/W)其他各器件比較從地址,若相同,則返回應答信號數據傳輸:8位數據+1個應答主控器件發(fā)出停止信號第九章單片機串行擴展123主發(fā)送方式主發(fā)送方式是指主控器件向被控的從器件發(fā)送數據。主發(fā)送方式的數據傳輸格式如下圖所示:第九章單片機串行擴展124主接收方式主接收方式是指主控器件接收被控從器件發(fā)送來的數據,其數據傳輸格式如下圖所示:第九章單片機串行擴展第十章單片機A/D及D/A轉換接口10.1單片機測控系統(tǒng)與模擬輸入通道10.2A/D轉換器接口10.3D/A轉換器接口10.4A/D與D/A轉換器芯片的串行接口125單片機測控系統(tǒng)的組成A/D轉換原理ADC0809的內部結構及管腳、轉換數據傳送方式及對應接口圖和程序DAC0832內部結構、管腳、3種數據輸入形式(雙鎖存、單級鎖存、直接輸入)126第十章單片機A/D及D/A轉換接口單片機測控系統(tǒng)12710.1單片機測控系統(tǒng)與模擬輸入通道“測”:實時采集被控對象的物理參量(溫度、壓力、流量、速度和轉速等)“控”:把采集的數據經單片機計算、比較等處理后得出結論,以對被控對象實施校正控制模擬輸入通道12810.1單片機測控系統(tǒng)與模擬輸入通道信號流程:采集信號放大采樣/保持濾波傳感器、放大器、采樣/保持電路、濾波器和多路開關的功能A/D轉換芯片類型(按轉換原理分)12910.2A/D轉換器接口積分型A/D轉換器(雙斜率或多斜率A/D轉換器)精度高、抗干擾能力強應用場合:轉換速度要求不高,環(huán)境惡劣逐次逼近型A/D轉換器原理簡單、便于實現,不存在時間延遲問題應用場合:中等速度,分辨率要求較高閃爍型A/D轉換器速度快、功耗大、電路復雜、芯片尺寸較大∑-△型A/D轉換器(過采樣A/D轉換器)分辨率高、價格便宜、抗干擾能力強輸入電壓信號形式13010.2A/D轉換器接口單極性電壓信號允許電壓變化范圍:0~+5V或0~+10V或0~+20V雙極性電壓信號輸入電壓可正可負差分信號(VIN+和VIN-)電壓變化范圍:±2V、±4V、±5V、±10V等A/D轉換器分辨率定義:對輸入電壓信號變化的分辨能力影響因素:A/D轉換器位數越多,分辨率越小,分辨能力越強輸出二進制代碼形式13110.2A/D轉換器接口二進制碼A/D轉換芯片位數:8位、10位、12位、14位、16位、20位、24位等BCD碼A/D轉換芯片典型應用:數字電壓表位數:3位半()、4位半()和5位半()等3位半的含義4組BCD碼(每組4位)分別表示十進制的千位、百位、十位和個位(百/十/個位能表示0~9)千位只用最低位二進制數表示數字(0或1),剩余的高3位用來表示正負或欠量程/過量程等標志轉換結束和數據讀取13210.2A/D轉換器接口定時等待方式某A/D轉換芯片,其轉換時間是已知且固定的用延時方法等待轉換結束查詢方式A/D轉換芯片提供表明轉換完成的狀態(tài)信號中斷方式表明轉換是否完成的狀態(tài)信號都可作為中斷請求信號使用8位A/D轉換芯片與80C51接口13310.2A/D轉換器接口ADC0809逐次逼近型A/D轉換芯片內部邏輯結構134ADC0809與80C51接口10.2A/D轉換器接口ADC0809與80C51的連接8路模擬通道選擇模擬通道選擇信號A、B、C分別接最低三位地址A0~A2(P0.0~P0.2),地址鎖存允許信號ALE由P2.0控制;8路模擬通道地址為FEF8H~FEFFH;通道地址選擇以WR作寫選通信號。13510.2A/D轉換器接口ADC0809信號的時間配合ADC0809信號的時間配合執(zhí)行一條“MOVX@DPTR,A”指令,產生WR信號;ALE信號與START信號連接在一起,前沿寫入(鎖存)通道地址,后沿就啟動轉換。轉換數據的傳送方式1)定時傳送方式

2)查詢方式(查詢轉換結束信號EOC的狀態(tài))

3)中斷方式:以EOC作為中斷請求信號

汪霖西北大學信息學院Email:wanglin@單片機原理與應用復習第一章計算機基礎知識第二章80C51單片機的硬件結構第三章80C51單片機指令系統(tǒng)第四章80C51單片機匯編語言程序設計第五章80C51單片機的中斷和定時1復習第六章單片機并行存儲器擴展第七章單片機并行IO擴展第八章單片機串行通信第九章單片機串行擴展第十章單片機A/D及D/A轉換接口2第一章計算機基礎知識1.1二進制數及其在計算機中的使用1.2二進制數的算術運算和邏輯運算1.3供程序設計使用的其他進制數1.4

計算機中使用的編碼1.5

微型計算機概述3常用數制(十進制/二進制/十六進制)及其相互轉換符號數/無符號數,原碼/反碼/補碼二進制的算術運算(加/減/乘/除)和邏輯運算(或/與/非/異或)計算機中使用的編碼:BCD碼/ASCII碼第一章計算機基礎知識4常用的進位計數制第一章計算機基礎知識進制符號集基數及規(guī)則一般表達式十進制ND{0,1,2,3,4,5,6,7,8,9}10(逢十進一)二進制NB{0,1}2(逢二進一)十六進制NH{0~9,A,B,C,D,E,F}16(逢十六進一)5不同數制間的轉換6

二進制/十六進制→十進制規(guī)則:先按權展開后,再按照十進制運算法則求和

二進制→十六進制(十六進制→二進制)規(guī)則:24=16,4位二進制數對應1位十六進制數第一章計算機基礎知識7十進制→二進制/十六進制(1)整數轉換法:“除基取余”,將十進制整數不斷除以轉換進制基數(2或16),直至商為0。每除一次取一個余數,從低位排向高位。25=11001B將25轉換為二進制數將156轉換為十六進制數156=9CH第一章計算機基礎知識8十進制→二進制/十六進制(2)小數轉換法:“乘基取整”:用轉換進制的基數(2或16)乘以小數部分,直至小數為0或達到轉換精度要求的位數。每乘一次取一次整數,從最高位排到最低位。將0.625轉換為二進制數將0.359375轉換為十六進制數0.625=0.101B0.359375=0.5CH第一章計算機基礎知識帶符號數的表示方法9

機器中,數的符號用“0”、“1”表示。最高位作符號位,“0”表示“+”,“1”表示“-”。在計算機中,所有有符號數都是以補碼形式存放的。第一章計算機基礎知識

無符號的8位二進制數沒有符號位,從D7~D0皆為數值位,所以8位無符號二進制數的表示范圍是0~+255。無符號數的表示方法原碼、反碼和補碼第一章計算機基礎知識表示方法符號數(最高位)數值位表示范圍(8位)正數負數正數負數原碼01與真值數值位相同與真值數值位相同-127~+127反碼原碼數值位逐位求反-127~+127補碼原碼數值求反加1-128~+12710二進制算術運算

加法、減法、乘法、除法

11第一章計算機基礎知識二進制邏輯運算

邏輯“或”運算

邏輯“與”運算

邏輯“非”運算

邏輯“異或”運算上述二進制邏輯運算均可按位進行,不同位之間不發(fā)生任何聯系。BCD碼(二-十進制編碼)12

BCD(BinaryCodedDecimal)碼是一種二進制形式的十進制碼,它用4位二進制數表示1位十進制數,最常用的是8421BCD碼。第一章計算機基礎知識ASCII碼美國信息交換標準代碼(ASCII碼)由7位二進制數碼構成,共有128個字符,它主要用于微機與外設通信?!癆”=41H“0”=30H“a”=61H第二章80C51單片機的硬件結構2.1單片機的概念2.280C51單片機的邏輯結構及信號引腳2.380C51單片機的內部存儲器2.480C51單片機的并行I/O口2.580C51單片機的時鐘與定時2.6

80C51單片機的系統(tǒng)復位2.7

單片機

溫馨提示

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

最新文檔

評論

0/150

提交評論