MCS單片機系統(tǒng)學習平臺V實驗講義_第1頁
MCS單片機系統(tǒng)學習平臺V實驗講義_第2頁
MCS單片機系統(tǒng)學習平臺V實驗講義_第3頁
MCS單片機系統(tǒng)學習平臺V實驗講義_第4頁
MCS單片機系統(tǒng)學習平臺V實驗講義_第5頁
已閱讀5頁,還剩71頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

電子系統(tǒng)綜合設(shè)計課程教材

電子設(shè)計競賽培訓(xùn)講義

MCS51單片機系統(tǒng)設(shè)計教程

——基于“MCS51單片機系統(tǒng)學習板VL1”的試驗教學

周立青等匯編

(內(nèi)部匯編資料,內(nèi)容正在修正完善,請勿在網(wǎng)上傳播)

武漢大學電子信息學院試驗中心

武漢大學電工電子試驗教學基地

目錄

目錄..................................................2

第一章MCS51單片機系統(tǒng)學習板VL1資源介紹..........4

1.1"MCS51單片機系統(tǒng)學習板VL1”基本配置與功能介紹4

1.2"MCS51單片機系統(tǒng)學習板VL1”最小系統(tǒng)電路????6

1.3"MCS51單片機系統(tǒng)學習板VL1”套件配置.......7

第二章SST單片機系統(tǒng)仿真調(diào)試和下載..................9

2.1SST單片機功能簡介...........................9

2.2ICE仿真與ISP編程燒寫功能....................10

2.3通過BOOTLOADER將SSTBoot-StrapLoader替換為

SoftICE.........................................12

2.4用Keil新建工程并在SoftICE監(jiān)控程序下仿真....13

2.5SoftICE監(jiān)控程序替換回SSTBoot-StrapLoader監(jiān)控

程序..............................................14

2.6通過SUPERR0編輯器將SoftICE監(jiān)控程序下載入SST單

片機..............................................14

2.7通過SSTEasylAP下載程序....................15

2.8STC單片機的燒寫;............................16

第三章單片機系統(tǒng)學習平臺VL1試驗設(shè)計...............17

3.1試驗一,獨立I/O試驗.........................17

3.2試驗二,按鍵中斷試驗.......................20

3.3試驗三,RAM試驗...........................21

3.4試驗四,段式LED試驗..........................23

3.5試驗五,矩陣鍵盤試驗.........................25

第四章綜合試驗要求................................28

4.1試驗一,數(shù)字鐘系統(tǒng).........................28

4.2試驗二,數(shù)字溫度計..........................28

4.3數(shù)字電壓表設(shè)計................................29

4.4數(shù)字化語音存儲與回放系統(tǒng).....................29

4.5數(shù)字頻率計設(shè)計...............................30

4.6A題波形發(fā)生器................................31

第五章單片機C51講義................................33

5.1C語言概述...................................33

5.2C51語言.....................................34

5.3C51中的存儲系統(tǒng).............................43

5.4C51中的數(shù)據(jù)結(jié)構(gòu).............................46

5.5C51中的硬件接口系統(tǒng).........................58

5.6C51中的中斷系統(tǒng).............................65

5.7C51中程序架構(gòu)設(shè)計方法.........................67

5.8關(guān)于優(yōu)化......................................70

5.9仿真機的運用.................................71

5.10程序的調(diào)試與測試............................74

5.11其它.........................................74

第一章MCS51單片機系統(tǒng)學習板VL1資源介紹

“MCS51單片機系統(tǒng)學習板VL1"PCB尺寸圖

“MCS51單片機系統(tǒng)學習板VI.1"是武漢大學電子創(chuàng)新平臺

中的單片機學習和開發(fā)平臺,目前主要應(yīng)用于電子設(shè)計競賽培訓(xùn)

和大學生創(chuàng)新設(shè)計。它兼容DIP40封裝的51系列單片機,板上

配備SST公司的sst89E516RD高性能單片機,可利用串口進行在

線下載,硬件仿真和斷點調(diào)試,從而使學生在不須要仿真器的

狀況下可進行獨立的軟硬件調(diào)試。系統(tǒng)采納基于總線結(jié)構(gòu)的設(shè)

計,板上既具有一般的10試驗,更多的采納總線方式擴展板上

資源,使學生對基于處理器的系統(tǒng)設(shè)計概念有著更深化的理解,

是大學生進行單片機學習,創(chuàng)新設(shè)計和電子設(shè)計競賽的基礎(chǔ)工

具。

1.1"MCS51單片機系統(tǒng)學習板VI.1"基本配置及功能介紹

128*64

7.5V11178位8段1602液晶

液晶顯示

數(shù)碼管顯示接口

直流供電電源芯片接口

|232串行|

|通信口

D.O.D.O,

、

PSENEA蜂鳴器

信號選擇

40PIN單片溫度傳感

機鎖緊座器18B20

紅外一體

接收頭

皿大??工電子?拿點布點XP0QT2P9PWT3

系統(tǒng)EEPROM

時鐘24C02

擴展借口

PORT2

“MCS51單片機系統(tǒng)學習板VI.1”功能框圖

1、USB及適配器電源接口,可運用USB延長線供電;

2、DC7.5-9V獨立供電接口,最大電流1A;

3、自鎖開關(guān)及電源指示燈,操作更加便利;

4、獨立10口限制的8路發(fā)光二極管LED流水燈,可實現(xiàn)發(fā)光二

極管各種試驗(跑馬燈,指示燈等);

5、總線擴展8位高亮數(shù)碼管(數(shù)字和字母顯示,可以和液晶同

時運用);

6、LCD1602(可顯示兩行字符)/中文LCD12864(可顯示隨意漢

字及圖形)液晶顯示模塊接口,可接各種兼容液晶模塊;

7、主芯片緊鎖座設(shè)計,便利芯片取放;

8、1路串口RS-232通信,實現(xiàn)和PC或其他設(shè)備232通信(可兼

容交叉和串行數(shù)據(jù)線的跳線選擇);

9、1路蜂鳴器,實現(xiàn)報警和演奏音樂;

io,4路獨立按鍵,獨立按鍵調(diào)試;

11、4X4矩陣鍵盤,總線接口,用于學習矩陣鍵盤原理和運用方

法;

12、板載32KRAM62256,用于外部數(shù)據(jù)存儲;

13、非易失存儲器EEPROMAT24co2,掉電不丟失數(shù)據(jù)(HC總線

數(shù)據(jù)存儲元件原理試驗);

14、溫度傳感器模塊18B20接口,可測量外界溫度(精密溫度檢

測,配有測試當前溫度程序);

15、一體化紅外接收芯片HS0038,可以做紅外線解碼試驗,紅外

線遙控器等;

16、1路按鍵復(fù)位;

17、3組擴展接口,接口功能劃分合理,1,2號擴展口包含了

數(shù)據(jù)總線和譯碼后的片選信號線,3號總線包含全地址空間,

便利用戶進行自由擴展,可以外接AD,DA等資源。

謳擴展接口元器件采納軍品直插封裝,便利測試和修理。

19、光盤中含本試驗板全部原理圖,運用教程,程序下載教

程,各種好用軟件,好用工具及試驗例程,

1.2"MCS51單片機系統(tǒng)學習板V1.1”最小系統(tǒng)電路

“MCS51單片機系統(tǒng)學習板VI.1”實物圖

1.2.1電源供電

“MCS51單片機系統(tǒng)學習板VI.1"主芯片工作電壓為5V,在5V

電源的輸入端自帶防反接電路,防止錯誤接反電源損壞系統(tǒng)板。

整個系統(tǒng)可采納兩種供電模式:

?USB供電。計算機的USB接口可供應(yīng)5V,1A的直流電流,

系統(tǒng)可采納板載的USB接口直接供應(yīng)5V電源,。

電源接口

電路原理圖

?7.5V穩(wěn)壓電源供電。系統(tǒng)也可以采納單獨供電模式,單獨

供電采納7.5-9V電源輸入,經(jīng)LM1117位系統(tǒng)供應(yīng)穩(wěn)定的

5V電壓

留意:系統(tǒng)工作是同時只能連接一種電源輸入。

1.3"MCS51單片機系統(tǒng)學習板VL1”套件配置

標準配置清單

序號配置數(shù)量

1MCS51單片機學習開發(fā)板1

2可單步仿真單片機sst89E516RD1

3溫度傳感器18B201

4紅外集成接收頭18381

51602液晶顯示器/128*64液晶屏1

6USB雙扁頭線1

7RS232串口通信線1

87.5V1A直流電源1

9產(chǎn)品配套資料光盤1

第二章SST單片機系統(tǒng)仿真調(diào)試和下載

2.1SST單片機功能簡介

SST的MCU除了具備和一般單片機一樣,可以通過專用編程器

將程序代碼燒寫到片內(nèi)ROM中,然后裝入系統(tǒng)運行程序以外,還

具備另外兩種特別的下載和仿真功能。

1)程序下載功能。SST單片機可以不須要編程器,直接通過

串行通信口,將程序下載到單片機ROM中,且下載的程序

在單片機斷電后仍會保存,不會丟失。程序下載后,直接

復(fù)位或者重新上電單片機就可以工作。

2)在線仿真功能。SST單片機還具有在線仿真功能,同樣通

過單片機的串口,通過在keil軟件中設(shè)置可以實現(xiàn)在線

仿真,具有單步執(zhí)行,全速執(zhí)行,設(shè)置端點等調(diào)試功

能。

SST單片機的以上兩種功能的實現(xiàn)方法是通過其內(nèi)部的監(jiān)控

程序?qū)崿F(xiàn)的,SST廠家供應(yīng)了兩種監(jiān)控程序BOOTLOADER和

SoftICE,其中單片機的監(jiān)控程序假如是BOOTLOADER,則對應(yīng)

以上兩種功能中的第一項,即程序下載功能。此時,只可以通過

串口下載程序,不能進行在線仿真。假如單片機的監(jiān)控程序假如

是SoftICE,則對應(yīng)以上兩種功能中的第二項,即在線仿真功能。

此時,只可以通過串口在線仿真,不能進行下載程序。即一種監(jiān)

控程序?qū)?yīng)一種功能,實現(xiàn)方法是將對應(yīng)功能的監(jiān)控程序下載到

單片機中即可,具體下載監(jiān)控程序以及在兩種監(jiān)控程序之間切換

的操作請參考“2.3通過BOOTLOADER將SSTBoot-Strap

Loader替換為SoftICE”,“2.5SoftICE監(jiān)控程序替換回SST

Boot-StrapLoader監(jiān)控程序”,“2.6通過SUPERRO編輯器

將SoftICE監(jiān)控程序下載入SST單片機”等章節(jié)

出廠時廠家已將BOOTLOADER監(jiān)控程序?qū)懭胄酒?,因此無

需編程器就可通過SSTBOOT-STRAPLOADER軟件工具將用戶程序

下載到SST的MCU中。對于兩種監(jiān)控程序,SST公司供應(yīng)了相應(yīng)

的方法,用戶可以自己將其中的監(jiān)控程序進行替換,從而在兩種

不同的功能上進行轉(zhuǎn)換。

更加具體芯片資料請參考datasheet:

SST89E516RD.pdf或者89E516RD中文.pdf

2.2ICE仿真及ISP編程燒寫功能

SoftICE的英文是SoftwareInCircuitEmulator的簡稱,

其翻譯成中文就是在線的軟件仿真器的意思,它是SST公司為便

利SST用戶在運用SST單片機(包括

SST89C5xSST89x564RD/554RC/516RD2/5XRD2)調(diào)試程序所開發(fā)

的開發(fā)工具,這個SST的仿真器功能可以代替大部分的專用仿真

器的功能,使單片機工程師在開發(fā)單片機時省卻了價格昂貴的仿

真器和編程器,使得51單片機的開發(fā)更加簡單和普及并且SST

的單片機價格便宜,出廠時就包含了在線下載和在線仿真的功

能。

最新的SST軟件和文件請訪問SST網(wǎng)頁。

最新的KEIL軟件和文件請訪問KEIL網(wǎng)頁。

SoftICE的特點:

SST的MCUSoftICE通過PC的一個COM口及KEILuVision2

Debugger通訊,它可以實時地調(diào)試目標程序,因此供應(yīng)運用SST

單片機的工程師簡單有效和簡單運用在板上調(diào)試程序,盡管小而

緊湊,SoftICE卻供應(yīng)高級仿真器的大部分功能及KEIL

uVision2Debugger一起運用。

SoftICE供應(yīng)以下特性:

?源代碼調(diào)試支持匯編語言和C51高級語言

?單步執(zhí)行STEP和STEPOVER

?斷點調(diào)試做多到10個固定和1個臨時斷點

?全速運行

?顯示修改變量

?讀/寫數(shù)據(jù)存儲器

?讀/寫代碼存儲器

?讀/寫SFR特別功能寄存器

?讀/寫P0-P3端口

?下載INTELHEX文件

?對8051程序存儲區(qū)的反匯編

?在線匯編

?SSTMCU產(chǎn)品特有的IAP功能InApplication

Programming

SST51開發(fā)系統(tǒng)除了支持ICE仿真功能外,還支持AtmelISP

編程燒寫的功能。

2.3通過BOOTLOADER將SSTBoot-StrapLoader替換為SoftICE

執(zhí)行SSTEasylAPHF.exe(、單片機在線仿真工具\sst51

單片機在線仿真\SoftICE_564\SSTEasyIAPllF.exe),軟件運行

SSTBoot-StrapLoader在內(nèi)部模式下檢測到對應(yīng)器件的型號

后,SoftICE固件通過按SoftICE菜單下DownloadSoftICE選

項下載,便將SoftICE固件下載到MCUo在BL0CK1的SST

Boot-StrapLoader會被SoftICE固件代替(下載SoftICE勝利

后,不能重復(fù)再次下載SoftICE,必需下載BOOTLOADER監(jiān)控程

序后,才能重新下載SoftICE)。具體操作步驟如下:

1,打開SSTEasylAPHF.exe程序,選擇串口;

2.選擇芯片型號和內(nèi)部程序存儲器;

3.選擇PC串口,MCU晶振和波特率;

C0M1為當前連接單片機的串口。晶振頻率指當前系統(tǒng)板上

接的晶振頻率。確定后點擊"DetectMCU”檢測單片機。

4.先選擇確定在復(fù)位MCU;

5.通訊勝利后窗口右上角顯示芯片信息和版本信息;

6.點擊DownloadSoftICE選項,將MCU中的BOOTLOADER監(jiān)控

程序替換為SoftICE監(jiān)控程序;

7.選擇確認更換;

8.程序替換勝利;

2.4用Keil新建工程并在SoftICE監(jiān)控程序下仿真

1.打開KeilC51程序,新建一個工程;

一般建議新建工程的名稱及文件夾名稱相同,部分版本在編譯時

可能會提示“Targetnotcreated

2,保存在自己新建的文件夾中;

3.點擊保存出現(xiàn)CPU選擇對話框,選擇SST系列的89X516RD2;

4.出現(xiàn)是否添加標準51初始代碼對話框,選“否”;

5.工程建立之后新建源程序文件,點擊"File”菜單下“New”

選項;

6.保存在工程文件夾內(nèi),C程序文件后綴為”.C",匯編程序文

件后綴為ASM”;

7.在文本編輯區(qū)編寫源程序并保存;在SourceGroup上右擊選

擇"AddFilesToGroup…”選項添加源文件至工程;

&選擇編寫好的源程序文件,點擊Add添加所選文件;

9.點擊編譯按鈕,編譯工程;

io.進入目標板調(diào)試選項設(shè)置,點擊“Project”菜單下“Options

forTarget…”選項;

ii.選擇為硬件仿真功能;

12.點擊Setting進入通訊參數(shù)設(shè)定菜單,去掉全部Cache選項。

至此設(shè)置完畢,進入仿真調(diào)試階段;

13.點擊DEBUG下的“Start/StopDebugSession”選項進入DEBUG

界面;

14.進入后可以看到信息欄中由顯示連接勝利信息。在此仿真界

面可以進行單步,全速,斷點等調(diào)試方式。

進入DEBUG界面后用戶可以在線進行單步,連續(xù),執(zhí)行到,

斷點等功能的調(diào)試;

2.5SoftICE監(jiān)控程序替換回SSTBoot-StrapLoader監(jiān)控程序

1.由SoftICE監(jiān)控程序轉(zhuǎn)換回SSTBoot-StrapLoader監(jiān)控程

序:

在keil輸入以下命令。

圖中“Convert_to_BSLx564.txt”文件保存在

“\SoftICE_564”路徑下。執(zhí)行完上圖命令后,若出現(xiàn)如下界面

表示轉(zhuǎn)換勝利,BSL監(jiān)控程序下載入了單片機:

2.6通過SUPERR0編輯器將SoftICE監(jiān)控程序下載入SST單片機

下面介紹通過編程器將SoftICE監(jiān)控程序下載到SST的MCU

芯片中的方法:SST89E516ED單片機有兩塊程序存儲區(qū)BlockO

(64Kb)和Blockl(8Kb),監(jiān)控存儲在8Kb的Blockl中,單片

機上電從Blockl開始執(zhí)行,當沒有接收到相應(yīng)的串口命令時,

再從主程序區(qū)BlockO開始執(zhí)行指令;具體操作步驟如下:

1.打開編輯器SUPERPR0程序,圖標為

2,進入SUPERPR0程序界面,單擊“選擇器件選項”;

3.進入器件選擇對話框,在器件類型處選擇"MCU/MPU”在查找

處輸入要器件名稱,找到之后選擇“確定”;

4,單擊“裝入文件”選項;

5.進入下載文件選擇對話框,選擇要下載的SoftICE監(jiān)控程序,

文件格式一般為".hex"或".bin”格式;

6.因為SST單片機的監(jiān)控程序存儲在Blockl中,Blockl的地址

為lOOOOh,故數(shù)據(jù)緩沖區(qū)起始地址改為“10000”,下載一般

執(zhí)行程序則直接默認;

7.左邊是下載文件的操作選項,具體步驟為:Erase二》Program二》

Verify;

執(zhí)行完上述三個步驟后,SoftICE監(jiān)控程序已被下載入SST

的MCU中了,可以運用Keil軟件進行在線硬件仿真調(diào)試了。

2.7通過SSTEasylAP下載程序

SST單片機中最初始的是BSL監(jiān)控程序,可以通過SST

BOOT-STRAPLOADER軟件工具將用戶程序下載入單片機中,具體

操作步驟如下:

1.打開SSTBOOT-STRAPLOADER軟件工具,并按之前的步驟及

單片機通訊連接勝利。在界面的右下方IAPFunction菜單中

有下載選項,選擇"Download"選項下載程序。

2.進入了下載文件選擇界面;

3.在文件查找對話框中找到要下載的用戶程序,一般為.Hex

或.bin格式文件;

4.選擇好用戶程序后,單擊步驟二中的0K選項開始下載,界面

最下面的狀態(tài)欄顯示下載進度,當顯示為Done時表示程序下

載已經(jīng)完成,單片機上電執(zhí)行用戶程序了。

2.8STC單片機的燒寫;

下面介紹另一款STC單片機的燒寫方法:

1.打開STC單片機的編輯器STC-ISP,進入STC-ISP的工作界面。

2.2.在ISP的界面左上方已經(jīng)有依據(jù)步驟排列的子單元,

3.依據(jù)界面上的步驟一步步執(zhí)行下載操作,步驟1的單元如下

圖,在MCUType下拉框中選擇目標單片機型號,APMemory

為程序存儲地址;

4.進入步驟2選擇下載文件,點擊右下方的OpeaFile選項查找

要下載的用戶程序;

5.找到要下載的用戶程序,多為.hex或.bin格式文件;

6.步驟3為串口設(shè)置,選擇通過哪個COM口下載,MaxBuad為

波特率設(shè)置;

7.步驟4為下載設(shè)置,一般默認即可;

8.步驟5為下載操作,先點擊"Download/下載”選項,再MCU

重新上電復(fù)位,則開始執(zhí)行下載操作;

9.步驟5單元下面為狀態(tài)欄,可以視察MCU的下載過程,下圖

為下載勝利信息顯示;

此時用戶程序已下載入STC的MCU中了,拔掉串口線,上電

復(fù)位用戶程序即可執(zhí)行。

第三章單片機系統(tǒng)學習平臺Vl.l試驗設(shè)計

基于“單片機系統(tǒng)學習平臺VI.1"可開展單片機系統(tǒng)及相

關(guān)擴展系統(tǒng)的試驗。主要包括以下部分:

試驗一,10口試驗

試驗二,按鍵中斷試驗

基礎(chǔ)試驗試驗三,RAM試驗

試驗四,段式LED試驗

試驗五,矩陣按鍵試驗

試驗一,語音采集及回放

試驗二,數(shù)字萬用表設(shè)計

綜合試驗

試驗三,水溫限制系統(tǒng)設(shè)計

試驗四,簡易數(shù)據(jù)傳輸系統(tǒng)

3.1試驗一,獨立I/O試驗

3.1.1LED跑馬燈試驗

試驗?zāi)康?/p>

1.熟識單片機的基本結(jié)構(gòu)和單片機系統(tǒng)學習平臺的資源配

2.熟識運用在線仿真技術(shù)進行單片機系統(tǒng)開發(fā)的一般方法

3.學會用示波器觀測現(xiàn)象,初步體會用儀器進行調(diào)試的思想

4.駕馭基本輸入輸出口的設(shè)計方法,LED燈的特性和運用方

二,試驗內(nèi)容

1.用匯編語言實現(xiàn)以下功能:

(1)編程點亮8個LED,測試接口電路無問題

(2)編程將8個LED按從LED1-LED8的順序依次點亮,點

亮一個LED后延時一段時間,延時時間考慮人眼能夠辨

別出,把它熄滅后,再接著點亮下一個了LED,形成LED

跑馬燈。要求當LED跑到邊緣之后返回,而不是再從第

一個LED開始。

2.當實現(xiàn)LED跑馬燈的功能后,用示波器探頭依次探測8

個獨立I/O口的現(xiàn)象。這時在每一個I/O口上應(yīng)當能檢

測到肯定頻率的方波信號。

四,試驗原理

1.LED原理:兩個半導(dǎo)體P型和N型半導(dǎo)體加中間由一個

有源層組成,當兩端加上正負電壓時電子開始移動和空穴(帶正

電的離子)結(jié)合產(chǎn)生輻射光。一般LED在正常發(fā)光的狀況下,消

耗電流在mA級別,為保證其正常發(fā)光,同時也不會過流,一般

在LED回路中串聯(lián)一個300歐-1K歐的電阻。

2.LED硬件連接圖,如下

3.1.2蜂鳴器試驗

一、試驗?zāi)康?/p>

1.了解蜂鳴器原理和類型

2.駕馭單片機指令周期的計算方法

二、試驗內(nèi)容

利用單片機讓蜂鳴器發(fā)出一個固定頻率(300~3400Hz)的

響聲

三、試驗原理

1、蜂鳴器:蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采納直

流電壓(有源蜂鳴器)或溝通電壓(無源蜂鳴器)供電,有源蜂

鳴器內(nèi)部已經(jīng)帶有振蕩源,因此只要供應(yīng)直流電壓就可以發(fā)音,

發(fā)音的頻率由內(nèi)部振蕩源確定,頻率固定,不能更改,無源蜂鳴

器內(nèi)部沒有振蕩源,因此必需供應(yīng)溝通電壓使其發(fā)音,發(fā)音的頻

率及溝通電壓的頻率始終,依據(jù)音樂節(jié)奏調(diào)整發(fā)音的頻率可以實

現(xiàn)簡單的音樂播放。廣泛應(yīng)用于計算機,打印機,復(fù)印機,

報警器,電子玩具,汽車電子設(shè)備,機,定時器等電子

產(chǎn)品中作發(fā)聲器件。蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴

器兩種類型。

2、聽覺范圍:人耳一般對300~3400Hz范圍內(nèi)的聲音比較敏

感,調(diào)整單片機管腳波形輸出,使得產(chǎn)生頻率在該范圍內(nèi)才可以

聽到聲音。假如頻率過高或過低都很難聽到聲音。

3、硬件連接:

四、試驗步驟

編程:限制單片機管腳,產(chǎn)生一個電平之后延時一段時間

1/2T0,對該管腳電平取反,如此反復(fù),就能夠產(chǎn)生一個頻率的

方波,方波周期為T0,頻率f0=l/T0,當f0在300~3400Hz之間

時,可以聽到蜂鳴器的發(fā)音。

3.2試驗二,按鍵中斷試驗

一,試驗?zāi)康?/p>

1,了解中斷的基本概念

2,了解按鍵軟件消抖的方法

3,了解定時器的基本概念

二,試驗設(shè)備

單片機試驗板vl」

三,試驗內(nèi)容

1,通過按鍵中斷實現(xiàn)對LED的限制:每按鍵一次LED燈右

移一位

2,通過定時器中斷產(chǎn)生一個標準8KHz的方波

四,試驗原理

1,按鍵中斷:試驗板獨立式鍵盤每個按鍵都有一個信號線

及單片機電路相連。當其中中斷按鍵按下的時候,會產(chǎn)生一個中

斷信號,該信號使得CPU跳轉(zhuǎn)到中斷點執(zhí)行中斷服務(wù)程序。執(zhí)行

完中斷程序之后,CPU回到主程序原先斷點,接著往下執(zhí)行。

2,按鍵消抖:查詢單片機管腳,發(fā)覺有信號線出現(xiàn)低電平

表示可能出現(xiàn)鍵按下的狀況。按鍵按下過程中存在前后延抖動,

延時20ms之后查詢發(fā)覺管腳狀態(tài)和之前讀取一樣,判定按鍵按

下,依據(jù)讀取數(shù)值推斷按鍵編號并進行對應(yīng)操作。

3,定時器中斷:定時器開啟之后,計數(shù)器開始計數(shù)。當計

數(shù)器達到程序員設(shè)定值后,進入中斷。在中斷服務(wù)程序中,程序

員可自由發(fā)揮。

五,試驗步驟

1,硬件連接

2,實現(xiàn)功能

壹:S17或者S18按下,LEDO-LED3亮,再次按下LED0-LED3

滅。

貳:利用定時器實現(xiàn)LED的閃耀頻率定為1HZ。

叁:S17或者S18按下,LED4亮,定時器計數(shù),1秒后,

LED4滅

3,軟件流程圖

4、記錄試驗結(jié)果

3.3試驗三,RAM試驗

一、試驗?zāi)康?/p>

1、了解RAM讀寫原理

2、了解地址信號的產(chǎn)生原理

3、了解51單片機的限制總線信號ALE和nOE,nWE的產(chǎn)生原

二試驗設(shè)備

單片機試驗板vl」

三、試驗內(nèi)容

1,讀寫RAM數(shù)據(jù)并將讀寫錯誤數(shù)顯示在段式液晶上面

四、試驗原理

1、地址信號的產(chǎn)生:51單片機的P0口是數(shù)據(jù)和地址復(fù)用線,

可以利用一片74LS373

進行地址鎖存限制,將P0口產(chǎn)生出一組地址信號和數(shù)據(jù)信號在

時間上分開(見試驗板框圖)。

2、讀寫過程:51單片機的P3口是多功能復(fù)用口,其中P36

復(fù)用為nWR,P37復(fù)用為nRD,外部RAM的接口時序和這兩個新

號的生成時序相符合,可以直接進行RAM數(shù)據(jù)的讀寫。

3、片外RAM傳送指令:MOVXA,?Ri;MOVXA,@DPTR;MOVX

@Ri,A;

MOVX@DPTR,A;這四條指令(單字節(jié)雙周期指令)執(zhí)行時,尤

其要留意他們伴隨著51單片機讀寫限制信號線nOE或nWE的“額

外”置低。其中,第一條和第三條指令只能尋址256bit,而第

二條和第四條指令可以尋址64Kb(此次試驗中運用)。其讀寫時

序和執(zhí)行過程如下:

①將RAM的地址(存放在寄存器Ri或DPTR中)由地址總線

P0(此時身份是地址線低8位)及P2(地址線高8位A8~A15)

口輸出,即時序圖中的S5P1到S6P2階段。并在S4P2到S5P2階

段,發(fā)ALE信號將低8位地址鎖存。

②第二個機器周期S1P2到S2P2內(nèi)取消ALE及程序選通信號

PSEN(即取消取指操作),P0身份轉(zhuǎn)變?yōu)閿?shù)據(jù)總線。及此同時發(fā)

讀或?qū)懶盘?,通過P0口將RAM的數(shù)據(jù)傳送到累加器A中或?qū)⒗?/p>

加器A數(shù)據(jù)傳送到RAM中。即:時序圖的S6P2到S4Pl階段。

③由于鎖存的地址為外部數(shù)據(jù)存儲單元的地址,所以在第二

個機器周期S4取消取指令的操作,不再發(fā)程序選通信號PSENo

五、試驗步驟

1、硬件連接:

2、62256地址安排:62256的地址總線有15位(A0~A14),因

此它的地址空間大小是215(32Kb)。62256的片選信號由51單

片機地址線的最高位A15給出,且低電平有效,因此它的最低地

址是0000H,最高地址是7FFFH。

3、軟件設(shè)計:在RAM地址的1000H~10ffH空間中寫入0~255

數(shù)據(jù),讀出RAM的lOOOHlOffH空間數(shù)據(jù),記錄錯誤數(shù)據(jù)個數(shù),

將數(shù)據(jù)錯誤個數(shù)顯示在段式液晶上面。

4、記錄和視察試驗現(xiàn)象。

3.4試驗四,段式LED試驗

一、試驗?zāi)康?/p>

1.段式LED工作原理

2.動態(tài)掃描顯示原理

二、試驗設(shè)備

單片機試驗板VI」

三、試驗內(nèi)容

1,在LED上面動態(tài)顯示循環(huán)的數(shù)字8,到達邊緣之后重新回

到遠點,依次循環(huán)

四、試驗原理

1.段式LED原理:

一個段式液晶是由八段LED組成,如上圖所示,依據(jù)組成的

led種類不同,常用的段式液晶有共陰極和共陽極兩種類型,試

驗板上配置的為共陰極段式液晶。依據(jù)abcdefgh的電平狀況,

點亮或者熄滅對應(yīng)的LED,就可以看到對應(yīng)的數(shù)字或者字符,譬

如abcdef設(shè)為高,將gh設(shè)為低就可以形成數(shù)字0了。

2.動態(tài)掃描原理:利用人眼的視覺殘留現(xiàn)象,依次點亮每

個八段碼單元,只要掃描速度超過人眼可以識別的頻率,就

可以看到穩(wěn)定的信息輸出。

3.電路連接:

CS3及nWE同時置低時選中片選信號——CS_LED_SEL;

CS2及nWE同時置低時選中段選信號——CS_LED_SEG;

片選信號CS_LED_SEL選通鎖存器U13,通過P0口把某個SEL

選中,即選中某個數(shù)碼管。

段選信號CS_LED_SEG選通鎖存器U12,通過P0口的值對選中

的數(shù)碼管的A到DP賦值,以實現(xiàn)顯示功能。

五,試驗步驟

1,硬件連接:

2,軟件設(shè)計:依次點亮八段碼,設(shè)置較快的掃描頻率,在

段式液晶上面形成穩(wěn)定的輸出。將掃描頻率設(shè)置較低,使人眼可

以辨別各個八段碼點亮和熄滅的狀態(tài),形成數(shù)字8從左向右循環(huán)

的現(xiàn)象。

3,視察并記錄試驗現(xiàn)象。

3.5試驗五,矩陣鍵盤試驗

-、試驗?zāi)康?/p>

1.駕馭矩陣式鍵盤的原理

2.駕馭74HC245,74HC573的運用

3.理解單片機總線讀寫和片選信號的產(chǎn)生

4.駕馭矩陣鍵盤的編程方法

二、試驗設(shè)備

單片機試驗板vl_l

三、試驗內(nèi)容

1.采納行掃描法編程獲得矩陣式鍵盤的鍵值,并予以顯示

2.學習矩陣鍵盤的構(gòu)建方式

四、試驗原理

1.電路原理圖

1.4*4鍵盤:

KEY_H為4根行線,KEY_V為4根列線,均接了10k歐

姆上拉電阻

2.行線和列線

行線:運用74HC573鎖存P0口數(shù)據(jù),為單向輸出口

列線:運用74HC245鎖存P0口數(shù)據(jù)或鍵盤數(shù)據(jù),數(shù)據(jù)

讀寫方向由DIR確定

3.片選信號

1.當A15為高,A8-A10為低時C為為低電平,CSO地

址可設(shè)為0xf8ff,選中CSO時,單片機讀信號使nOE為

低,74HC245DIR為低電平,從74HC245讀數(shù)據(jù)。

2.選中CSO時,單片機寫信號使nWE為低,CS_KEY為

高電平,74HC573鎖存P0口上的數(shù)據(jù),即單片機向

74HC573寫數(shù)據(jù)。

2.原理圖分析

單片機通過寫數(shù)據(jù)到行線,從列線讀數(shù)據(jù)來推斷是否有按

鍵和鍵值。

1.推斷是否有按鍵按下:

將行線作為輸出,列線作為輸入。CPU首先向行接口輸

出一個為“全0”數(shù)據(jù),再從列接口讀入數(shù)據(jù),并判其是

否為“全1”。若是“全1”就表示鍵盤中沒有鍵被按下,

否則表示有鍵被按下,且列碼中“0”的位置就是所按按鍵

的列號。

2.獲得用戶按下的按鍵所對應(yīng)的鍵值:

為了獲得用戶按下的按鍵所對應(yīng)的鍵值,可先向行接

口輸出一個第0行為“0”,其它行均為“1”的行碼,然

后讀入列碼并判其是否為“全1”,若不是“全1”就表

示在第0行中有鍵被按下,且讀入的列碼中出現(xiàn)“0”的位

置代表該按鍵所處的列編號,輸出行碼中“0”的位置代表

該按鍵所處的行編號,據(jù)鍵值公式可獲得相應(yīng)的鍵值;若

讀入的列碼為“全1”,就再對下一行進行類似的處理,

如此逐行分析處理,直至全部行處理完畢。

3.消抖動:

“抖動”是指兩個機械電氣觸點在閉合或斷開的瞬間

時所產(chǎn)生的抖動,由于抖動的時間不超過20毫秒,所以通

常都是運用“延時”的方法來去抖動,即一旦檢測到按鍵

有“狀態(tài)改變”,就延時20毫秒,而后再去檢測該現(xiàn)象是

否仍舊存在,若存在就表示確實有鍵按下或松開,否則表

示檢測的是一種干擾信號。

五、矩陣鍵盤編程方法

1.程序流程:

2.軟件設(shè)計:編寫按鍵處理程序,并將得到的按鍵依據(jù)0~15

的數(shù)字進行編碼;編寫對應(yīng)的案件處理程序,將按鍵值顯示在段

式液晶上面。

3.示例代碼:見例程C51Pro,Lab5

第四章綜合試驗要求

?試驗一,數(shù)字鐘系統(tǒng)

?試驗二,數(shù)字溫度計設(shè)計

?試驗三,數(shù)字電壓表設(shè)計

?試驗四,語音采集及回放

?試驗五,數(shù)字頻率計

?試驗六,DDS信號源

4.1試驗一,數(shù)字鐘系統(tǒng)

一,基礎(chǔ)要求

1.設(shè)計一個精確的1秒定時器;

2,依據(jù)1秒定時器,設(shè)計一個帶小時,分鐘,秒的時鐘,

并將小時,分鐘,秒顯示在LED上;

3.設(shè)計小時,分鐘,秒的修改按鍵,可分別調(diào)整小時,分

鐘,秒(按鍵設(shè)計參考電子表);

二,擴展要求

1.增加小時,分鐘,秒的鍵盤直接修改功能;

2.設(shè)計鬧鐘功能,最多支持5個鬧鐘,可分別查看和修改鬧

鐘時間,可分別設(shè)置鬧鐘開關(guān)。

3.增加萬年歷功能。

4.2試驗二,數(shù)字溫度計

一,基礎(chǔ)要求

1.設(shè)計實現(xiàn)數(shù)字溫度計18B20的接口時序;

2.讀取18B20數(shù)據(jù),并將數(shù)據(jù)轉(zhuǎn)化為BCD碼顯示在LED上,

顯示精度為兩位小數(shù);

3.實現(xiàn)對溫度的修正;

4.3數(shù)字電壓表設(shè)計

基礎(chǔ)要求

1,設(shè)計實現(xiàn)AD0809接口電路,實現(xiàn)模擬電壓量0-5V轉(zhuǎn)化為

數(shù)字量;

2.編程實現(xiàn)AD0809的數(shù)據(jù)讀??;

3.設(shè)定固定的刷新速率,將讀取數(shù)據(jù)顯示在LED上,顯示精

度兩位小數(shù);

4.實現(xiàn)電壓采集值的分段函數(shù)修正。

二,擴展要求

1.擴展電壓表的測量范圍,實現(xiàn)0-IV,0-10的測量;

4.4數(shù)字化語音存儲及回放系統(tǒng)

設(shè)計并制作一個數(shù)字化語音存儲及回放系統(tǒng),其示意圖如下:

1.基本要求

(1)放大器1的增益為46dB,放大器2的增益為40dB,增

益均可調(diào);

(2)帶通濾波器:通帶為300Hz?3.4kHz;

(3)ADC:采樣頻率£=8kHz,字長二8位;

(4)語音存儲時間210秒;

(5)DAC:變換頻率上=8kHz,字長=8位;

(6)回放語音質(zhì)量良好。

2.發(fā)揮部分

在保證語音質(zhì)量的前提下:

(1)減少系統(tǒng)噪聲電平,增加自動音量限制功能;

(2)語音存儲時間增加至20秒以上;

(3)提高存儲器的利用率(在原有存儲容量不變的前提下,

提高語音存儲時間);

(4)其它(例如:校正等)。

4.5數(shù)字頻率計設(shè)計

一,任務(wù)

設(shè)計并制作一臺數(shù)字顯示的簡易頻率計。

二,要求

1.基本要求

(1)頻率測量

a.測量范圍信號:方波,正弦波;幅度:0.5V-5V;頻

率:1Hz?1MHz

b.測量誤差W0.遙

(2)周期測量

a.測量范圍信號:方波,正弦波;幅度:0.5V?5V;頻

率:1Hz?1MHz

b.測量誤差W0?1%

(3)脈沖寬度測量

a.測量范圍信號:脈沖波;幅度:0.5V?5V;脈沖寬度

2100us

b.測量誤差<1%

(4)顯示器

十進制數(shù)字顯示,顯示刷新時間1?10秒連續(xù)可調(diào),對上述

三種測量功能分別用不同顏色的發(fā)光二極管指示。

(5)具有自校功能,時標信號頻率為1MHz。

(6)自行設(shè)計并制作滿意本設(shè)計任務(wù)要求的穩(wěn)壓電源。

2.發(fā)揮部分

(1)擴展頻率測量范圍為0.1Hz?10MHz(信號幅度0.5V-

5V),測量誤差降低為0.01%(最大閘門時間WIOs)。

(2)測量并顯示周期脈沖信號(幅度0.5V?5V,頻率1Hz?

1kHz)的占空比,占空比變化范圍為10%?90%,測量誤差WKo

(3)在1Hz?1MHz范圍內(nèi)及測量誤差WK的條件下,進行

小信號的頻率測量,提出并實現(xiàn)抗干擾的措施。

4.6A題波形發(fā)生器

設(shè)計制作一個波形發(fā)生器,該波形發(fā)生器能產(chǎn)生正弦波,方

波,三角波和由用戶編輯的特定形態(tài)波形。示意圖如下:

1.基本要求

(1)具有產(chǎn)生正弦波,方波,三角波三種周期性波形的

功能。

(2)用鍵盤輸入編輯生成上述三種波形(同周期)的線性

組合波形,以及由基波及其諧波(5次以下)線性組合的波形。

(3)具有波形存儲功能。

(4)輸出波形的頻率范圍為100Hz?20kHz(非正弦波頻率

按10次諧波計算);重復(fù)頻率可調(diào),頻率步進間隔(100Hz。

(5)輸出波形幅度范圍0?5V(峰-峰值),可按步進0.IV

(峰-峰值)調(diào)整。

(6)具有顯示輸出波形的類型,重復(fù)頻率(周期)和幅度

的功能。

2.發(fā)揮部分

(1)輸出波形頻率范圍擴展至100Hz?200kHz。

(2)用鍵盤或其他輸入裝置產(chǎn)生隨意波形。

(3)增加穩(wěn)幅輸出功能,當負載變化時,輸出電壓幅度變

化不大于±3%(負載電阻變化范圍:100Q?8)。

(4)具有掉電存儲功能,可存儲掉電前用戶編輯的波形和

設(shè)置。

(5)可產(chǎn)生單次或多次(1000次以下)特定波形(如產(chǎn)生

1個半周期三角波輸出)。

(6)其它(如增加頻譜分析,失真度分析,頻率擴

展>200kHz,掃頻輸出等功能)。

第五章單片機C51講義

(注:本文由張清恒編輯,本文中相應(yīng)的代碼片斷運行及測試結(jié)

果以Keil51的V6版編譯器為準)

5.1C語言概述

1.單片機及程序設(shè)計語言

(1)單片機在系統(tǒng)設(shè)計中的位置

圖一單片機在系統(tǒng)設(shè)計中的位置

(2)程序設(shè)計語言

A.機器指令集

面對具體的處理器:單片機,ARM處理器(精簡指

令RISC體系),通用處理器(困難指令CISC體系)。

B.匯編語言

運用助記符代替機器指令,須要轉(zhuǎn)換成機器指令后

才能被識別運行。

C.面對結(jié)構(gòu)的高級語言

C,PASCAL,Fortran,COBOL,BASIC...

2.C高級語言的編譯過程

C語言作為高級語言,其運用更高級的行為描述方法來

定義操作。一般編譯型的高級語言,其先經(jīng)預(yù)編譯,然后

再編譯轉(zhuǎn)換成匯編語言,然后加入相應(yīng)的庫函數(shù)實體并經(jīng)

過鏈接形成最終機器代碼。預(yù)編譯所做的工作為做宏替換,

有效代碼的選擇等工作。其示意圖如圖二所示。

圖二C語言源程序到達最終代碼的過程

留意,一,由于不同硬件的機器指令集不一樣,故編譯

及鏈接的針對不同目標機器的最終代碼不一樣;二,編譯的

過程更多的時候不是在目標機器上進行的,故編譯器本身有

一個運行環(huán)境(一般為DOS,Windows環(huán)境)。故須要運用適合

于目標機器平臺的能夠在指定的某一平臺上運行的編譯器及

鏈接器進行相應(yīng)的編譯及鏈接工作。

5.2C51語言

1.C51語言及C語言的關(guān)系

C51語言由C發(fā)展而來,其基本上繼承了C語言的特性。其

區(qū)分在于:

A.C語言程序建立在操作系統(tǒng)的基礎(chǔ)上,有操作系統(tǒng)為程

序操作很多基本的操作,如字符顯示,鍵盤讀取,文

件操作,用戶程序并不直接操作限制硬件;而C51語言

直接面對硬件,必需自己實現(xiàn)對硬件的限制。

B.C語言程序一般在存儲在外部存儲介質(zhì)上,在運行時由

操作系統(tǒng)裝載入內(nèi)存中進行重定位后,再運行;而C51

程序是直接在存儲的ROM或FLASH介質(zhì)上運行。

其區(qū)分示意圖如圖三所示。

圖四單片機上的用戶C51語言程序的運行環(huán)境示意圖

2.C51中繼承C中可運用的資源

現(xiàn)成的函數(shù)等資源包括兩個部分,一個是函數(shù)頭的聲明

文件(即.h文件),另一個是函數(shù)編譯后的目標代碼庫(即.lib

文件)。只要把用到的文件放到當前目錄或系統(tǒng)編譯器目錄,

在鏈接時系統(tǒng)會自動找尋并運用。

(1)Intrinsic,hC51內(nèi)部固定函數(shù)

externvoid_nop_(void);

externbit_testbit_(bit);

externunsignedchar_cror_(unsignedchar,

unsignedchar);

externunsignedint_iror_(unsignedint,

unsignedchar);

externunsignedlong_lror_(unsignedlong,

unsignedchar);

externunsignedchar_crol_(unsignedchar,

unsignedchar);

externunsignedint_irol_(unsignedint,

unsignedchar);

externunsignedlong_lrol_(unsignedlong,

unsignedchar);

externunsignedchar_chkfloat_(float);

⑵Absacc.h數(shù)據(jù)類型相關(guān)資源

#defineCBYTE((unsignedcharvolatilecode*)0)

#defineDBYTE((unsignedcharvolatiledata*)0)

#definePBYTE((unsignedcharvolatilepdata*)0)

#defineXBYTE((unsignedcharvolatilexdata*)0)

#defineCWORD((unsignedintvolatilecode*)0)

#defineDWORD((unsignedintvolatiledata*)0)

#definePWORD((unsignedintvolatilepdata*)0)

#defineXWORD((unsignedintvolatilexdata*)0)

⑶Float,h運算常數(shù)相關(guān)庫

SdefineFLT_RADIX2

#defineFLT_ROUNDS0

#defineFLTDIG6

#defineFLT_EPSILON5.96046e-8

SdefineFLT_MANT_DIG24

SdefineFLT_MAX3.40282e38

#defineFLT_MAX_EXP0x7F

SdefineFLT_MAX_10_EXP38

SdefineFLT_MIN1.17549e-38

SdefineFLT_MIN_EXP-125

#defineFLT_MIN_10_EXP-37

SdefineDBL_RADIXFLT_RADIX

#defineDBL_ROUNDSFLT_ROUNDS

#defineDBL_DIGFLT_DIG

#defineDBL_EPSILONFLT_EPSILON

SdefineDBL_MANT_DIGFLT_MANT_DIG

#defineDBL_MAXFLTJ1AX

#defineDBL_MAX_EXPFLT_MAX_EXP

SdefineDBL_MAX_10_EXPFLT_MAX_10_EXP

#defineDBL_MINFLTJ1IN

#defineDBL_MIN_EXPFLT_MIN_EXP

SdefineDBL_MIN_10_EXPFLT_MIN_10_EXP

#defineLDBL_RADIXFLT_RADIX

SdefineLDBL_ROUNDSFLT_ROUNDS

#defineLDBL_DIGFLT_DTG

#defineLDBL_EPSILONFLT_EPSILON

#defineLDBL_MANT_DIGFLT_MANT_DIG

#defineLDBL_MAXFLT_MAX

SdefineLDBL_MAX_EXPFLT_MAX_EXP

#defineLDBL_MAX_1O_EXPFLT_MAX_1O_EXP

SdefineLDBL_MINFLT_MIN

#defineLDBL_MIN_EXPFLT_MIN_EXP

#defineLDBL_MIN_10_EXPFLT_MIN_10_EXP

(4)Limits,h標準數(shù)據(jù)范圍定義

#defineCHAR_BIT8/*Numberof

bitsinany〃char〃*/

#defineCHAR_MAX127/*Max

〃char〃value*/

#defineCHAR_MIN(-128)/*Min

〃char〃value*/

#defineSCHAR_MAX127/*Max

signedcharvalue*/

SdefineSCHAR_MIN(-128)/*Min

signedcharvalue*/

#defineUCHAR_MAX255/*Max

unsignedcharvalue*/

SdefineSHRT_MAX32767/*Max

("signed")"short”value*/

#defineSHRT_MIN(-32768)/*Min

("signed")"short”value*/

SdefineUSHRT_MAXOxFFFF/*Max

unsignedshortvalue*/

#defineINT_MAX32767/*Max

(signed)intvalue*/

#defineINT_MIN(-32768)/*Min

(signed)intvalue*/

SdefineUINT_MAXOxFFFF/*Max

unsignedintvalue*/

SdefineL0NG_MAX2147483647/*Max

(signed)longvalue*/

#defineL0NG_MIN-2147483648/*Min

(signed)longvalue*/

#defineUL0NG_MAXOxFFFFFFFF/*Max

unsignedlongvalue*/

(5)Math,h數(shù)學庫

externcharcabs(charval);

externintabs(intval);

externlonglabs(longval);

externfloatfabs(floatval);

externfloatsqrt(floatval);

externfloatexp(floatval);

externfloatlog(floatval);

externfloatloglO(floatval);

externfloatsin(floatval);

externfloatcos(floatval);

externfloattan(floatval);

externfloatasin(floatval);

externfloatacos(floatval);

externfloatatan(floatval);

externfloatsinh(floatval);

externfloatcosh(floatval);

externfloattanh(floatval);

externfloatatan2(floaty,floatx);

structFPBUF(

unsignedcharsave[16];

externvoidfpsave(structFPBUF*);

externvoidfprestore(structFPBUF*);

externfloatceil(floatval);

externfloatfloor(floatval);

externfloatmodf(floatval,float*n);

externfloatfmod(floatx,floaty);

externfloatpow(floatx,floaty);

(6)Ctype.h字符處理函數(shù)庫

externbitisalpha(unsignedchar);

externbitisalnum(unsignedchar);

externbitiscntrl(unsignedchar);

externbitisdigit(unsignedchar);

externbitisgraph(unsignedchar);

externbitisprint(unsignedchar);

externbitispunct(unsignedchar);

externbitislower(unsignedchar);

externbitisupper(unsignedchar);

externbitisspace(unsignedchar);

externbitisxdigit(unsignedchar);

externunsignedchartolower(unsigned

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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

提交評論