重慶大學(xué)電工電子綜合設(shè)計(jì)1_第1頁(yè)
重慶大學(xué)電工電子綜合設(shè)計(jì)1_第2頁(yè)
重慶大學(xué)電工電子綜合設(shè)計(jì)1_第3頁(yè)
重慶大學(xué)電工電子綜合設(shè)計(jì)1_第4頁(yè)
重慶大學(xué)電工電子綜合設(shè)計(jì)1_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程安排課程安排1、七次實(shí)驗(yàn)課程,共、七次實(shí)驗(yàn)課程,共32學(xué)時(shí)學(xué)時(shí)2、C51應(yīng)用基礎(chǔ)應(yīng)用基礎(chǔ) 圖形點(diǎn)陣液晶顯示圖形點(diǎn)陣液晶顯示 開關(guān)量、模擬量數(shù)據(jù)的采集開關(guān)量、模擬量數(shù)據(jù)的采集 直流電機(jī)的控制直流電機(jī)的控制 步進(jìn)電機(jī)的控制步進(jìn)電機(jī)的控制3、不超過(guò)、不超過(guò)6人一組人一組4、最后完成交實(shí)驗(yàn)報(bào)告!、最后完成交實(shí)驗(yàn)報(bào)告! 1、設(shè)計(jì)目的和功能要求、設(shè)計(jì)目的和功能要求2、設(shè)備硬件結(jié)構(gòu)、工作原理、設(shè)備硬件結(jié)構(gòu)、工作原理3、軟件設(shè)計(jì)流程和功能介紹、軟件設(shè)計(jì)流程和功能介紹4、設(shè)計(jì)成果和體會(huì)、設(shè)計(jì)成果和體會(huì)5、小組成員分工情況、小組成員分工情況(要求:字?jǐn)?shù)不少于要求:字?jǐn)?shù)不少于3000字)字)KeilKeil C

2、51 C51集成開發(fā)環(huán)境的使用集成開發(fā)環(huán)境的使用 目前世界上最優(yōu)秀、最強(qiáng)大的目前世界上最優(yōu)秀、最強(qiáng)大的51單單片機(jī)開發(fā)應(yīng)用平臺(tái)之一。它集編輯、片機(jī)開發(fā)應(yīng)用平臺(tái)之一。它集編輯、編譯、仿真于一體,支持匯編、編譯、仿真于一體,支持匯編、PL/M語(yǔ)言和語(yǔ)言和C語(yǔ)言的程序設(shè)計(jì),界面友好,語(yǔ)言的程序設(shè)計(jì),界面友好,易學(xué)易用。它內(nèi)嵌的仿真調(diào)試軟件可易學(xué)易用。它內(nèi)嵌的仿真調(diào)試軟件可以讓用戶采用模擬仿真和實(shí)時(shí)在線仿以讓用戶采用模擬仿真和實(shí)時(shí)在線仿真兩種方式對(duì)目標(biāo)系統(tǒng)進(jìn)行開發(fā)。軟真兩種方式對(duì)目標(biāo)系統(tǒng)進(jìn)行開發(fā)。軟件仿真時(shí),除了可以模擬單片機(jī)的件仿真時(shí),除了可以模擬單片機(jī)的I/O口、定時(shí)器、中斷外,甚至可以仿真口、定

3、時(shí)器、中斷外,甚至可以仿真單片機(jī)的串口通信。單片機(jī)的串口通信。KeilKeil C51 C51集成開發(fā)環(huán)境界面集成開發(fā)環(huán)境界面Keil C51的開發(fā)過(guò)程的開發(fā)過(guò)程 (1) 建立一個(gè)工程項(xiàng)目,選擇芯片,確定選項(xiàng)。建立一個(gè)工程項(xiàng)目,選擇芯片,確定選項(xiàng)。(2) 建立匯編源文件或建立匯編源文件或C源文件。源文件。(3) 用項(xiàng)目管理器生成各種應(yīng)用文件。用項(xiàng)目管理器生成各種應(yīng)用文件。(4) 檢查并修改源文件中的錯(cuò)誤。檢查并修改源文件中的錯(cuò)誤。(5) 編譯連接通過(guò)后,進(jìn)行軟件模擬仿真。編譯連接通過(guò)后,進(jìn)行軟件模擬仿真。(6) 編譯連接通過(guò)后,進(jìn)行硬件模擬仿真。編譯連接通過(guò)后,進(jìn)行硬件模擬仿真。(7) 編程操

4、作。編程操作。(8) 應(yīng)用。應(yīng)用。建立工程項(xiàng)目建立工程項(xiàng)目輸入工程項(xiàng)目名稱輸入工程項(xiàng)目名稱確定單片機(jī)型號(hào)確定單片機(jī)型號(hào)請(qǐng)選擇:請(qǐng)選擇:PhilipsPhilips885252 工程的詳細(xì)設(shè)置工程的詳細(xì)設(shè)置 Output頁(yè)和頁(yè)和Debug頁(yè)設(shè)置頁(yè)設(shè)置源程序文件的建立源程序文件的建立文件的保存文件的保存源程序擴(kuò)展名源程序擴(kuò)展名 .C添加文件到當(dāng)前項(xiàng)目組中添加文件到當(dāng)前項(xiàng)目組中 用用編譯、連接編譯、連接生成各種應(yīng)用文件生成各種應(yīng)用文件 檢查并修改源文件中的錯(cuò)誤檢查并修改源文件中的錯(cuò)誤進(jìn)入調(diào)試狀態(tài)進(jìn)入調(diào)試狀態(tài)單步運(yùn)行、設(shè)置斷點(diǎn)調(diào)試程序單步運(yùn)行、設(shè)置斷點(diǎn)調(diào)試程序12864液晶顯示程序液晶顯示程序下載下載

5、Ftp服務(wù)器上:實(shí)驗(yàn)箱液晶顯示程序。在開發(fā)系統(tǒng)中服務(wù)器上:實(shí)驗(yàn)箱液晶顯示程序。在開發(fā)系統(tǒng)中 調(diào)入調(diào)入LCM_DISP.Uv2項(xiàng)目。項(xiàng)目。12864液晶顯示程序運(yùn)行結(jié)果液晶顯示程序運(yùn)行結(jié)果LCM_Disp.C 主程序主程序顯示顯示“l(fā)oad.”開開 始始顯示隨機(jī)字符顯示隨機(jī)字符顯示隨機(jī)直線顯示隨機(jī)直線顯示方框顯示方框模塊化程序結(jié)構(gòu)模塊化程序結(jié)構(gòu) 程序模塊程序模塊功能功能頭文件頭文件LCM_Driver.C圖形液晶驅(qū)動(dòng)子圖形液晶驅(qū)動(dòng)子程序程序Lcm_drive.hGraphics.C圖形操作子程序圖形操作子程序Graphics.hLab.c實(shí)驗(yàn)子程序?qū)嶒?yàn)子程序:交通燈、開關(guān)模交通燈、開關(guān)模擬、直流

6、機(jī)、步擬、直流機(jī)、步進(jìn)機(jī)進(jìn)機(jī)LCM_DRIVE.C 功能:圖形液晶驅(qū)動(dòng)程序功能:圖形液晶驅(qū)動(dòng)程序 函數(shù)函數(shù)功能功能LCM_Wr1Command()LCM_Wr1Command()寫命令子程序,所選屏為左半屏寫命令子程序,所選屏為左半屏LCM_Wr2Command()LCM_Wr2Command()寫命令子程序,所選屏為右半屏寫命令子程序,所選屏為右半屏LCM_Wr1Data()LCM_Wr1Data()寫數(shù)據(jù)子程序,所選屏為左半屏寫數(shù)據(jù)子程序,所選屏為左半屏LCM_Wr2Data()LCM_Wr2Data()寫數(shù)據(jù)子程序,所選屏為右半屏寫數(shù)據(jù)子程序,所選屏為右半屏LCM_DispIniLCM_

7、DispIni()()LCMLCM顯示初始化。使能顯示,設(shè)置顯示起始行為顯示初始化。使能顯示,設(shè)置顯示起始行為L(zhǎng)CM_WriteByteLCM_WriteByte()()向指定點(diǎn)寫數(shù)據(jù)(一字節(jié))向指定點(diǎn)寫數(shù)據(jù)(一字節(jié))LCM_DispFillLCM_DispFill()()向顯示屏填充數(shù)據(jù)向顯示屏填充數(shù)據(jù)LCM_DispCharLCM_DispChar()()指定地址顯示字符指定地址顯示字符LCM_DispStrLCM_DispStr()()字符串顯示輸出字符串顯示輸出screscre()()啟動(dòng)界面啟動(dòng)界面DelaySDelayS()()延時(shí)延時(shí)GRAPHICS.C 功能:圖形操作程序功能:

8、圖形操作程序 函數(shù)函數(shù)功能功能LCM_ReadByteLCM_ReadByte()()功能:讀取指定點(diǎn)上的數(shù)據(jù)功能:讀取指定點(diǎn)上的數(shù)據(jù)Point()Point()功能:在指定位置上畫點(diǎn)功能:在指定位置上畫點(diǎn)HLineHLine()()功能:畫水平線。功能:畫水平線。RLineRLine()()功能:畫垂直線。功能:畫垂直線。Rectangle()Rectangle()功能:畫矩形。功能:畫矩形。RectangleFillRectangleFill()()功能:填充矩形。畫一個(gè)填充的矩形,填功能:填充矩形。畫一個(gè)填充的矩形,填充色與邊充色與邊Line()Line()功能:畫任意兩點(diǎn)之間的直線功能

9、:畫任意兩點(diǎn)之間的直線LCM_Disp.C 主程序中主程序中LCM_DispChar() 的定義格式的定義格式/LCM_Drive.c程序中程序中/* 名稱:名稱:LCM_DispChar()* 功能:指定地址顯示字符。功能:指定地址顯示字符。* 入口參數(shù):入口參數(shù):disp_cy顯示行值顯示行值(0-7)* disp_cx顯示列值顯示列值(0-15)* dispdata所要顯示的字符所要顯示的字符(ASCII碼碼)* 注:支持顯示字符注:支持顯示字符0-9、A-Z、a-z及空格,字符顯示格式為及空格,字符顯示格式為5*7,模為,模為8*8,所以,所以* 屏幕顯示為屏幕顯示為8*16(共共8行

10、,每行行,每行16個(gè)字符個(gè)字符)。*/void LCM_DispChar(uint8 disp_cy, uint8 disp_cx, char dispdata) uint8 code *pchardata; uint8 i; disp_cy = disp_cy&0 x07;/ 參數(shù)過(guò)濾 disp_cx = disp_cx&0 x0f; 12864顯示屏顯示屏字符:字符:168個(gè)個(gè) 漢字:漢字:84個(gè)個(gè)LCM_Dispchar( ) 指定地址顯示字符函數(shù)指定地址顯示字符函數(shù)傳遞參數(shù):傳遞參數(shù):disp_y,disp_x,dispdata查表求得查表求得字模地址字模地址*pcha

11、rdataDisp_x64:根據(jù)根據(jù)disp_y ,disp_x,*pchardata,將字符將字符的字模寫入左半屏的顯示的字模寫入左半屏的顯示緩存區(qū)緩存區(qū)DDRAM中中:根據(jù)根據(jù)disp_y ,disp_x,*pchardata,將字符將字符的字模寫入左半屏的顯示的字模寫入左半屏的顯示緩存區(qū)緩存區(qū)DDRAM中中返回返回NY88字模字模 ( ASCII_TAB3080 )字模查表字模查表在在LCM_DRIVE.C的的LCM_DispChar()函數(shù)中函數(shù)中DDRAM的結(jié)構(gòu)及其地址表的結(jié)構(gòu)及其地址表 指令表指令表左半屏寫顯示緩存區(qū)左半屏寫顯示緩存區(qū)LCM_Wr1Command(+i);/ 設(shè)置當(dāng)

12、前列地址,即列設(shè)置當(dāng)前列地址,即列LCM_Wr1Command(LCM_ADDRSTRY+disp_cy);/ 設(shè)置當(dāng)前頁(yè)地址,即行設(shè)置當(dāng)前頁(yè)地址,即行 . .LCM_Wr2Data(0 x00);for(i=0; i5; i+) LCM_Wr1Data(*pchardata);/ 發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)*/ pchardata+; LCM_Wr2Data(0 x00);LCM_Wr2Data(0 x00);定義定義LCM操作的命令字操作的命令字( Lcmdriver.h 頭文件中)頭文件中)LCM_ADDRSTRY 0 xb8 /* 頁(yè)起始地頁(yè)起始地LCM_ADDRSTRX 0 x40 /* 列起

13、始地址列起始地址LCM_Wr1Command和和LCM_Wr1Data的定義的定義( Lcmdriver.C 文件定義中)文件定義中)/* 名稱:名稱:LCM_Wr1Command()* 功能:寫命令子程序,所選屏為左半屏功能:寫命令子程序,所選屏為左半屏(CS1)。* 入口參數(shù):入口參數(shù):command 要寫入要寫入LCM的命令字的命令字*/#defineLCM_Wr1Command(command)LCMCS1W_COM = command/* 名稱:名稱:LCM_Wr1Data()* 功能:寫數(shù)據(jù)子程序,所選屏為左半屏功能:寫數(shù)據(jù)子程序,所選屏為左半屏(CS1)。* 入口參數(shù):入口參數(shù):

14、wrdata 要寫入要寫入LCM的數(shù)據(jù)的數(shù)據(jù)*/#define LCM_Wr1Data(wrdata) LCMCS1W_DAT = wrdata定義定義LCM操作地址操作地址( Lcmdriver.h 頭文件中)頭文件中)LCMCS1W_COM 0 x2004 左半屏控制命令地址左半屏控制命令地址LCMCS1W_DAT 0 x2005 左半屏左半屏DDRAM數(shù)據(jù)地址數(shù)據(jù)地址LCMCS2W_COM 0 x2000 右半屏控制命令地址右半屏控制命令地址LCMCS2W_DAT 0 x2001 右半屏右半屏DDRAM數(shù)據(jù)地址數(shù)據(jù)地址定義定義LCM操作的命令字操作的命令字( Lcmdriver.h 頭文件中)頭文件中)LCM_DISPON 0 x3f /* 打開打開LCM顯示顯示 */LCM_STARTROW 0 xc0 /* 顯示起始行顯示起始行1616字模字模/*- 文字文字: 正正 -*/*- 宋體宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高高=16x16 -*/0 x00,0 x02,0 x02,0 xC2,0 x02,0 x02,

溫馨提示

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

評(píng)論

0/150

提交評(píng)論