單片機原理及接口技術(shù)-第一章_第1頁
單片機原理及接口技術(shù)-第一章_第2頁
單片機原理及接口技術(shù)-第一章_第3頁
單片機原理及接口技術(shù)-第一章_第4頁
單片機原理及接口技術(shù)-第一章_第5頁
已閱讀5頁,還剩59頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

有關(guān)本課程學習的幾點建議

本課程是一門實踐性、應(yīng)用性很強的學科僅僅聽懂還不夠,重在培養(yǎng)動手能力硬件/軟件同樣重要、不可偏廢

硬件是骨架,軟件是皮肉器臟及思想本課程的前期基礎(chǔ)課程是數(shù)字電路與微機原理這方面知識掌握得不夠好的請自己補上預習、聽課、復習、作業(yè)、實驗環(huán)環(huán)都重要用科學的方法學習.第1章微型計算機系統(tǒng)基礎(chǔ)知識本章要點:微型計算機和單片機的發(fā)展概況單片機系統(tǒng)組成概述(CPU、總線、存儲器和I/O口等)二進制、十進制和十六進制數(shù)(數(shù)制轉(zhuǎn)換和運算)計算機中數(shù)的表示(原碼、反碼和補碼)單片機常用編碼(BCD碼、ASCII碼).第1章微型計算機系統(tǒng)基本知識

微型計算機具有體積小,功耗低重量輕,價格低,可靠性高,開發(fā)使用簡便等一系列優(yōu)點,自問世以來得到了非常廣泛的應(yīng)用?!?-1概念1.1.1微型計算機.圖1-2微處理器、微計算機和微計算機系統(tǒng)的關(guān)系.微處理器加上同樣采用大規(guī)模集成電路制成的用于存儲程序和數(shù)據(jù)的存儲器,以及與輸入輸出設(shè)備相銜接的輸入輸出接口電路就構(gòu)成了微型計算機(Microcomputer)什么是單片機?如果將微處理器、存儲器和輸入輸出接口電路集成在一塊集成電路芯片上,稱為單片微型計算機,簡稱單片機。

.幾種單片機封裝形式返回.1.1.2微型計算機的發(fā)展概況1、PC機:PC機系統(tǒng)全力實現(xiàn)海量高速數(shù)據(jù)處理,兼顧控制功能。2、單片機:單片機系統(tǒng)全力滿足測控對象的測控功能,兼顧數(shù)據(jù)處理能力。形成兩大分支:.組成:

CPU(進行運算、控制)RAM(數(shù)據(jù)存儲器)I/O口(串口、并口等)ROM(程序存儲器)PC機:上述部件以芯片形式安裝在主板上。單片機:上述部件被集成到單芯片中。通用PC包括:鍵盤、顯示器、鼠標、硬/軟/光驅(qū)、音箱、打印機、掃描儀…等外設(shè)。單片機則只是一片集成電路。(……100、48、40、32、28、20、16、8條引腳)。單片機與PC機之異同(1).功能:PC機:數(shù)據(jù)運算、采集、處理、存儲、傳輸;單片機:控制(或受控于)外設(shè)。通用計算機擅長于數(shù)據(jù)運算、采集、處理、存儲和傳輸;單片機的專長則是測控,往往嵌入某個儀器/設(shè)備/系統(tǒng)中,使其達到智能化的效果。單片機與PC機之異同(2).應(yīng)用特點:個人計算機(微機):體積大,功耗大,價格高,用途較固定,屬通用計算機。易于學習掌握和使用,但用于控制時必須制作或購買專用的接口卡,并編制專門的應(yīng)用軟件。單片機:體積小,功耗小,價格低,用途靈活,無處不在,屬專用計算機。是一種特殊器件,需經(jīng)過專門學習方能掌握應(yīng)用,應(yīng)用中要設(shè)計專業(yè)的硬件和軟件。單片機與PC機之異同(3).1.1.3單片機的發(fā)展概況可分為四個階段:目前,應(yīng)用廣泛的主流機型是89C51系列單片機。

第一階段:單片機探索階段。

第二階段:單片機完善階段。

第三階段:8位機和16位機爭艷階段,也是單片機向微控制器發(fā)展的階段。

第四階段:微控制器全面發(fā)展階段。.1.1.4單片機的特點和應(yīng)用

⑴有優(yōu)異的性能價格比。

⑵集成度高,體積小,可靠性好。

⑶控制能力強。

⑷低功耗,低電壓,便于生產(chǎn)便攜式產(chǎn)品。⑸易擴展。

1、單片機特點.2、單片機的應(yīng)用

⑴智能化家用電器。

⑵辦公自動化設(shè)備。

⑶商業(yè)營銷設(shè)備。

⑷工業(yè)自動化控制。

⑹智能化通信產(chǎn)品。

⑸智能化儀表。

⑺汽車電子產(chǎn)品。

⑻航空航天系統(tǒng)和國防軍事、尖端武器等。

.§1-2單片機系統(tǒng)的組成組成單片機系統(tǒng)的物理實體;有兩大部分組成:對硬件使用和管理的程序。⑴

硬件:⑵軟件:.CPU外部設(shè)備時鐘圖1-2單片機系統(tǒng)的硬件結(jié)構(gòu)框圖ROMRAM定時計數(shù)器中斷系統(tǒng)I/O接口復位(DB)(CB)(AB)硬件結(jié)構(gòu)框圖.

1.2.1微處理器運算器:累加器A,暫存寄存器TMP,標志寄存器F,算術(shù)邏輯單元ALU;

控制器:程序計數(shù)器PC,指令寄存器IR,

指令譯碼器ID,定時和控制邏輯電路。

.1.2.2總線:用于傳送信息的公共途徑??偩€分為:⑴數(shù)據(jù)總線DB(DataBus)⑵地址總線AB(AddressBus)⑶控制總線CB(ControlBus).1.2.3輸入/輸出設(shè)備及其接口電路

⑴輸入設(shè)備;

⑵輸出設(shè)備;

⑶I/O接口電路。輸入輸出設(shè)備一般不能與CPU直接相連,而是通過某種電路完成尋址、數(shù)據(jù)緩沖、輸入輸出控制、功率驅(qū)動、A/D、D/A等功能,這種電路稱為I/O接口電路。例如:8255、0809、0832等等。.1.2.5軟件

單片機程序設(shè)計語言可分為三類:⑴機器語言⑵匯編語言⑶高級語言本書介紹的MCS-51型單片機使用匯編語言。.§1-3計算機中數(shù)的表示方法及運算

引言:●

十進制數(shù)是人們習慣使用的進制?!?/p>

計算機只能“識別”二進制數(shù)。●

為了書寫和識讀方便,計算機程序需要用十六進制數(shù)表示?!?/p>

十進制數(shù)、二進制數(shù)、十六進制數(shù)之間的關(guān)系、相互轉(zhuǎn)換和

運算方法,是學習計算機必備的基礎(chǔ)知識。.一、二進制、十進制和十六進制數(shù)⒈十進制數(shù)主要特點:①基數(shù)是10。有10個數(shù)碼(數(shù)符)構(gòu)成:0、1、2、3、4、5、6、7、8、9。②進位規(guī)則是“逢十進一”。【例】

1234.56

=1×103+2×102+3×101+4×100+5×10-1+6×10-2

=1000+200+30+4+0.5+0.06

上述,103、102、101、100、10-1、10-2

稱為十進制數(shù)各數(shù)位的“權(quán)”。.⒉二進制數(shù)

主要特點:①基數(shù)是2。只有兩個數(shù)碼:0和1。②進位規(guī)則是“逢二進一”。每左移一位,數(shù)值增大一倍;右移一位,數(shù)值減小一半。

二進制數(shù)用尾綴B作為標識符?!纠?11.11B=1×22+1×21+1×20+1×2-1+1×2-2=7.75

其中,22、21、20、2-1、2-2稱為二進制數(shù)各數(shù)位的“權(quán)”

.⒊十六進制數(shù)

主要特點:①基數(shù)是16。共有16個數(shù)符構(gòu)成:0、1、…、9、A、B、C、D、E、F。其中,A、B、C、D、E、F代表的數(shù)值分別為10、11、12、13、14、15。②進位規(guī)則是“逢十六進一”。十六進制數(shù)用尾綴H表示?!纠緼3.4H

=10×161+3×160+4×16-1

=160+3+0.25

=163.25

其中,163、162、161、160、16-1、16-2稱為十六進制數(shù)各數(shù)位的“權(quán)”。.十六進制數(shù)、二進制數(shù)和十進制數(shù)對應(yīng)關(guān)系表

十進制數(shù)十六進制數(shù)二進制數(shù)十進制數(shù)十六進制數(shù)二進制數(shù)000H0000B110BH1011B101H0001B120CH1100B202H0010B130DH1101B303H0011B140EH1110B404H0100B150FH1111B505H0101B1610H00010000B606H0110B1711H00010001B707H0111B1812H00010010B808H1000B1913H00010011B909H1001B2014H00010100B100AH1010B2115H00010101B.二、數(shù)制轉(zhuǎn)換

⒈二進制數(shù)與十六進制數(shù)相互轉(zhuǎn)換

⑴二進制數(shù)轉(zhuǎn)換成十六進制數(shù)

①整數(shù)部分:

自右向左,四位一組,不足四位,向左填零,各部分用相應(yīng)的十六進制數(shù)替代;

②小數(shù)部分:

自左向右,四位一組,不足四位,向右填零,各部分用相應(yīng)的十六進制數(shù)替代;

.二進制十六進制二進制十六進制00000100080001110019001021010100011310111101004110012010151101130110611101401117111115⑵十六進制數(shù)轉(zhuǎn)換成二進制數(shù)每位十六進制數(shù)分別用相應(yīng)4位二進制數(shù)替代。.②十進制數(shù)整數(shù)轉(zhuǎn)換成十六進制數(shù)的方法:

除16取余法

⒊十進制數(shù)轉(zhuǎn)換成二進制數(shù)、十六進制數(shù)①十進制小數(shù)轉(zhuǎn)換成二進制小數(shù)的方法:

乘2取整法⑴整數(shù)部分的轉(zhuǎn)換①十進制整數(shù)轉(zhuǎn)換成二進制整數(shù)的方法:

除2取余法⑵小數(shù)部分的轉(zhuǎn)換②十進制小數(shù)轉(zhuǎn)換成十六進制小數(shù)的方法:

乘16取整法.1.整數(shù)轉(zhuǎn)換法

“除基取余”:十進制整數(shù)不斷除以轉(zhuǎn)換進制基數(shù),直至商為0。每除一次取一個余數(shù),從低位排向高位。舉例:

(1)39轉(zhuǎn)換成二進制數(shù)

39=100111B 2 391(b0) 2 191(b1) 2 91(b2) 2 40(b3) 2 20(b4) 2 11(b5) 0(2)208轉(zhuǎn)換成十六進制數(shù)

208=D0H16208余01613余13=DH 0.2.小數(shù)轉(zhuǎn)換法

“乘基取整”:用轉(zhuǎn)換進制的基數(shù)乘以小數(shù)部分,直至小數(shù)為0或達到轉(zhuǎn)換精度要求的位數(shù)。每乘一次取一次整數(shù),從最高位排到最低位。舉例:

(1)0.625轉(zhuǎn)換成二進制數(shù)1) 0.625×2

2) 1.2501(b- × 23) 0.500(b- × 2 1.0 1(b-0.625=0.101B(2)0.625轉(zhuǎn)換成十六進制數(shù)0.625×16=10.0

0.625=0.AH(3)208.625轉(zhuǎn)換成十六進制數(shù)208.625=D0.AH.三、二進制數(shù)和十六進制數(shù)運算【例】 00110101B + 10011100B

⒈二進制數(shù)加法運算規(guī)則:0+0=0,0+1=1+0=1,1+1=0(向高位進1)。11010001B.【例】 10110101B - 10011100B

規(guī)則:0–0=0,1–0=0,1–1=0,

0–1=1(向高位借1)。⒉二進制數(shù)減法運算

00011001B.

1101

⒊二進制數(shù)乘法運算規(guī)則:0×0=0,1×0=0×1=0,1×1=1。【例】 1101B×1001B1110101B+1101

.⒋二進制數(shù)除法運算規(guī)則:0÷0=0,0÷1=0,1÷1=1。11110【例】

1101√11101101001-

1101-

1101.⒌二進制數(shù)“與”運算規(guī)則:0∧0=0,1∧0=0, 1∧0=0,1∧1=1?!纠? 10110101B ∧ 10011100B10010100B.規(guī)則:0∨0=0,1∨0=0,

1∨1=0,0∨1=1。⒍二進制數(shù)“或”運算【例】 10110101B ∨ 10011100B10111101B.⒎二進制數(shù)“異或”運算規(guī)則:0⊕0=0,0⊕1=1,1⊕0=1,1⊕1=0?!纠? 10110101B ⊕ 10011100B00101001B.8.十六進制數(shù)運算先將十六進制數(shù)轉(zhuǎn)換成二進制數(shù),然后根據(jù)二進制運算法則進行運算,再轉(zhuǎn)換成十六進制數(shù)。.四

帶符號數(shù)的表示方法

機器中,數(shù)的符號用“0”、“1”表示。最高位作符號位,“0”表示“+”,“1”表示“-”。1)機器數(shù)與真值

機器數(shù):機器中數(shù)的表示形式,其位數(shù)通常為8的倍數(shù)真值:機器數(shù)所代表的實際數(shù)值。舉例:一個8位機器數(shù)與它的真值對應(yīng)關(guān)系如下:真值: X1=+84=+1010100BX2=-84=-1010100B機器數(shù):[X1]機=01010100[X2]機=11010100.2)原碼、反碼和補碼數(shù)的正負表示形式:

D7=1表示負數(shù),D7=0表示正數(shù)。D7D6D5D4D3D2D1D0符號位數(shù)值位

.原碼(TrueForm)

最高位為符號位,0表示“+”,1表示“-”。數(shù)值位與真值數(shù)值位相同。例8位原碼機器數(shù):

真值: x1=+1010100B x2=-1010100B

機器數(shù):[x1]原=01010100

[x2]原=11010100原碼表示簡單直觀,但0的表示不唯一,加減運算復雜。.原碼的缺點:

l

“0”的原碼有兩種形式,這在運算中非常不方便。[+0]原=00000000B[-0]原=

10000000B,即分為+0和-0l

原碼在進行兩個異符號數(shù)相加或兩個同符號數(shù)相減時,需做減法運算,由于微機中一般只有加法器而無減法器,所以,為了把減法運算轉(zhuǎn)變?yōu)榧臃ㄟ\算就引入了反碼和補碼。原碼的用途:l

原碼做乘除法運算方便,兩數(shù)的符號和數(shù)值分別處理積的符號為兩數(shù)符號位的異或運算結(jié)果積的數(shù)值部分為兩數(shù)絕對值相乘的結(jié)果.反碼定義:正數(shù)的反碼表示與原碼相同;負數(shù)的反碼,可將負數(shù)原碼的符號位保持不變、數(shù)值位按位取反得到。缺點:“0”的反碼也有兩種表示法,即+0和-0。[+0]反=00000000B[-0]反=11111111B

n位反碼表示數(shù)的范圍與原碼相同,八位二進制反碼表示的范圍仍是-127至+127。.[+11]原=00001011B[+11]反=00001011B[-11]原=10001011B[-11]反=11110100B[-38]原=10100110B[-38]反=11011001B[+127]原=01111111B[+127]反=01111111B[-127]原=11111111B[-127]反=10000000B[+0]原=00000000B[+0]反=00000000B[-0]原=10000000B[-0]反=11111111B求真值:由反碼求得原碼,再由原碼求得真值,即可得到反碼的真值。例如:反碼11011001B,符號位為1,將數(shù)值位按位取反,得到原碼10100110B,其真值為-0100110B即十進制數(shù)-38。.補碼(Two’sComplement)正數(shù)的補碼表示與原碼相同。負數(shù)補碼的符號位為1,數(shù)值位等于求反加1。例:求8位補碼機器數(shù):

x=+4 [x]補=00000100 x=-4 10000100 x1111011 [x]補=11111100

補碼表示的優(yōu)點: 0的表示唯一,加減運算方便.[+11]原=00001011B[+11]反=00001011B[+11]補=00001011B[-11]原=10001011B[-11]反=11110100B[-11]補=11110101B[+127]原=01111111B[+127]反=01111111B[+127]補=01111111B[-127]原=11111111B[-127]反=10000000B[-127]補=10000001B[+0]原=00000000B[+0]反=10000000B[0]補=00000000B[-0]原=10000000B[-0]反=11111111B[-128]補=10000000B.補碼的含義:

以時鐘對時為例來說明,現(xiàn)由7點鐘調(diào)到4點鐘。

順時針調(diào):7+9=4(mod12)逆時針調(diào):7-3=4(mod12)由于時鐘上超過12點時就會自動丟失一個數(shù)12,這個自動丟失的數(shù)叫做“?!保╩odule,簡寫為mod).數(shù)的補碼與“?!庇嘘P(guān)“?!奔从嫈?shù)系統(tǒng)的量程。

當X<0,[X]補=模-|X|

8位二進制數(shù)的模為:28=256

當X<0,[X]補=28-|X|

=256-|X|=255-|X|+1

=[X]反碼+1

規(guī)則:求反加1,符號位不變。

如:10001101B其補碼:11110010

規(guī)定:00000000B為0

10000000B不是-0,而是-128

.[X]反=[X]原數(shù)值位取反,符號位不變。在計算機中,機器數(shù)有三種表示方法:即原碼、反碼和補碼。采取補碼運算,可以將減法轉(zhuǎn)換成加法運算。①對于正數(shù):[X]原=[X]反=[X]補②對于負數(shù):[X]補=[X]反+136-16-52例:0010,01001111,0000+1100,1100(-52)的補碼為11001100B.原碼、反碼和補碼對應(yīng)關(guān)系表

無符號二進制數(shù)無符號十進制數(shù)原碼反碼補碼000000000+0+00000000011+1+1+1000000102+2+2+2……………01111101125+125+125+12501111110126+126+126+12601111111127+127+127+12710000000128-0-127-12810000001129-1-126-12710000010130-2-125-126……………11111101253-125-2-311111110254-126-1-211111111255-127-0-1.怎樣根據(jù)真值求補碼,或根據(jù)補碼求真值一求負數(shù)真值的補碼:用絕對值“取反加1”二求負數(shù)補碼的真值:先將該補碼數(shù)“取反加1”的方法得到其絕對值,再在絕對值前添加一負號例:求下列帶符號數(shù)補碼的真值。 1000,1110B取反 0111,0001B-0111,0010B+1-(64+32+16+2)=-114-0101,0000B 1011,0000B取反 0100,1111B+1-(64+32)=-96.§1-4常用編碼

8421BCD碼稱為二-十進制數(shù)或簡稱BCD碼(BinaryCodedDecimalCode),用標識符[……]BCD表示。

特點:保留了十進制的權(quán),每一位十進制數(shù)字則用二進制碼表示。一、8421BCD碼.⒈編碼方法

二-十進制數(shù)是十進制數(shù),逢十進一,只是數(shù)符0~9用4位二進制碼0000~1001表示而已;

每4位以內(nèi)按二進制進位;

4位與4位之間按十進制進位。

⒉轉(zhuǎn)換關(guān)系

⑴BCD碼與十進制數(shù)相互轉(zhuǎn)換關(guān)系

⑵BCD碼與二進制數(shù)相互轉(zhuǎn)換關(guān)系

BCD碼與二進制數(shù)之間不能直接相互轉(zhuǎn)換,通常要先轉(zhuǎn)換成十進制數(shù)。

.【例】將二進制數(shù)01000011B轉(zhuǎn)換成BCD碼。解:01000011B=67=[01100111]BCD

需要指出的是:

決不能把[01100111]BCD誤認為二進制碼01100111B,二進制碼01100111B的值為103,而[01100111]BCD的值為67,顯然兩者是不一樣的。.⒊BCD碼運算

BCD碼用4位二進制數(shù)表示,但4位二進制數(shù)最多可表示16種狀態(tài),余下6種狀態(tài),1010~1111在BCD編碼中稱為非法碼或冗余碼。在BCD碼的運算中將會出現(xiàn)冗余碼,需

溫馨提示

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

評論

0/150

提交評論