版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)踐2AVR基本原理及應(yīng)用
實(shí)踐2.G.1
實(shí)踐2.G.2
實(shí)踐2.G.3
實(shí)踐2.G.4
實(shí)踐2.G.1
“IAR-AVR”集成開發(fā)環(huán)境的安裝。
【分析】
IAREmbeddedWorkbenchforAVR是IARSystems公司為AVR微處理器開發(fā)的一個(gè)集成開發(fā)環(huán)境,包括項(xiàng)目管理器、編輯器、C/C++編譯器、匯編器、連接器和調(diào)試器,具有入門容易、使用方便和代碼緊湊等特點(diǎn)。圖S2-1存放目錄
【參考解決方案】
找到安裝文件的存放目錄,雙擊安裝文件“autorun.exe”,如圖S2-1所示。在安裝界面下,點(diǎn)擊“InstallIAREmbeddedWorkbench”,開始安裝,界面如圖S2-2所示。圖S2-2安裝界面在彈出的歡迎界面中點(diǎn)擊下一步(Next)按鈕,如圖S2-3所示。圖S2-3安裝界面在彈出的許可界面中,點(diǎn)擊“Accept”按鈕,如圖S2-4所示。圖S2-4許可界面在彈出的界面中,填寫好姓名、公司和序列號(hào),點(diǎn)擊“Next”按鈕,如圖S2-5所示。圖S2-5用戶信息在彈出的界面中輸入密鑰,點(diǎn)擊“Next”按鈕,如圖S2-6所示。圖S2-6密鑰更改安裝路徑為D盤,其他不變,點(diǎn)擊“Next”按鈕,如圖S2-7所示。圖S2-7安裝路徑選在接下來(lái)的安裝類型界面中,選擇完整版,點(diǎn)擊“Next”按鈕,如圖S2-8所示。圖S2-8安裝類型選擇在彈出的界面中,保持默認(rèn)的程序位置不變,如圖S2-9所示。圖S2-9程序位置選擇確認(rèn)安裝信息后,點(diǎn)擊下一步(Next)按鈕繼續(xù)安裝,如圖S2-10所示。圖S2-10確認(rèn)參數(shù)彈出的安裝進(jìn)度圖如圖S2-11所示。圖S2-11安裝進(jìn)度圖彈出的安裝進(jìn)度圖如圖S2-11所示。安裝完成后的界面如圖S2-12所示,點(diǎn)擊“Finish”按鈕,完成安裝。圖S2-12完成界面
實(shí)踐2.G.2
IAR集成開發(fā)環(huán)境簡(jiǎn)介。
【分析】
為了盡快了解和熟悉IAR集成開發(fā)環(huán)境的使用,本實(shí)踐按下述步驟執(zhí)行:
(1)認(rèn)識(shí)IAR的啟動(dòng)界面、軟件界面。
(2)掌握工程文件的建立、編輯和修改。
【參考解決方案】
1.啟動(dòng)“IAR-AVR”
打開“開始”菜單,選擇“程序”,如圖S2-13所示,選擇“IAREmbeddedWorkbench”,啟動(dòng)IAR;或直接雙擊桌面上的“IAREmbeddedWorkbench”快捷方式圖標(biāo)。圖S2-13啟動(dòng)IAR
IAR啟動(dòng)后,顯示如圖S2-14所示的起始窗口。在起始窗口中可選擇新建或者打開工作組,本例中選擇“Openexistingworkspace”打開一個(gè)工程。圖S2-14起始窗口
2.認(rèn)識(shí)軟件界面
IAR的常用功能模塊有菜單、按鍵資源、工程窗口、編輯窗口和信息窗口等,如圖S2-15所示。圖S2-15開發(fā)環(huán)境界面各個(gè)功能模塊的功能簡(jiǎn)介如下:
菜單:包含IAR支持的菜單操作。
按鍵資源:包含編譯、調(diào)試等常用按鍵,可以提高操作速度。
工程窗口:工程信息和結(jié)構(gòu)的顯示窗口,用于工程管理。
編輯窗口:代碼的編輯區(qū)域。
信息窗口:顯示各種編譯和操作信息。
3.工程文件的建立、編輯和修改
1)新建
在圖S2-14中選擇“Creatnewprojectincurrentworkspace”新建一個(gè)工程,則會(huì)彈出如圖S2-16所示的界面,選擇包含一個(gè)空的main.c文件的工程,點(diǎn)擊“OK”按鈕。圖S2-16新建工程彈出如圖S2-17所示的“另存為”對(duì)話框,根據(jù)用戶需要可以自行更改工程名和保存位置;然后點(diǎn)擊“保存”按鈕。圖S2-17“另存為”對(duì)話框彈出如圖S2-18所示的新建工程窗口。此時(shí)項(xiàng)目中有IAR自動(dòng)生成的一個(gè)名為“test”的工程,并且自動(dòng)添加了main.c和main()函數(shù)。圖S2-18工程界面
2)保存
選擇菜單上的“File”,在彈出的下拉菜單中選擇“SaveWorkspace”,如圖S2-19所示。圖S2-19選擇“SaveWorkspace”在彈出的“SaveWorkspaceAs”對(duì)話框中選擇保存位置,輸入文件名,保存Workspace如圖S2-20所示。圖S2-20保存Workspace
3)編輯
選擇File→New→File,新建源文件到該項(xiàng)目,如圖
S2-21所示。圖S2-21新建源文件將新建的“Untitled1”文件保存,如圖S2-22所示。圖S2-22保存源文件彈出如圖S2-23所示的對(duì)話框,輸入文件名,將源文件Untitled1保存為“Led.c”。圖S2-23保存源文件將上述源文件添加到項(xiàng)目中,選擇“Project→AddFiles”,添加源文件如圖S2-24所示。圖S2-24添加源文件在彈出的對(duì)話框中選擇“Led.c”,如圖S2-25所示。圖S2-25選擇“Led.c”此時(shí),項(xiàng)目左邊的工作區(qū)已經(jīng)發(fā)生了變化,如圖S2-26所示。圖S2-26工作區(qū)欄按照同樣的方法,可以向工程中添加“Led.h”文件,得到的Test工程文件布局如圖S2-27所示。圖S2-27Test工程文件布局實(shí)踐2.G.3
使用IAR集成開發(fā)環(huán)境,編寫一個(gè)USART異步通信測(cè)試程序,實(shí)現(xiàn)單片機(jī)和PC之間密碼驗(yàn)證通信,驗(yàn)證通過(guò)時(shí)點(diǎn)亮LED燈。編譯通過(guò)后,使用AVRJTAG調(diào)試器下載驗(yàn)證。
【分析】本實(shí)踐基于USART串口通信的基本原理編寫相關(guān)代碼,然后使用JTAG仿真器將程序下載至實(shí)驗(yàn)開發(fā)板進(jìn)行結(jié)果驗(yàn)證,具體操作步驟如下:
(1)創(chuàng)建一個(gè)包含空的main.c文件的IAR工程。
(2)在main.c文件中編寫相關(guān)程序。
(3)將JTAG仿真器和串口線連接至實(shí)驗(yàn)開發(fā)板,確定仿真器和串口線的端口號(hào)。
(4)工程設(shè)置。
(5)編譯,將程序下載到實(shí)驗(yàn)開發(fā)板進(jìn)行測(cè)試。
【參考解決方案】
1.創(chuàng)建一個(gè)新工程
新建一個(gè)IAR工程,包含空的main.c文件,保存為code。
2.編寫程序源代碼
在main.c中輸入以下程序代碼:上述程序包含了一個(gè)重要的頭文件<iom16.h>。該頭文件將ATmega16的所有寄存器映射為同名的變量,還將寄存器的各個(gè)位映射成為相應(yīng)的變量,并對(duì)這些位變量進(jìn)行了定義。對(duì)這些變量的操作和訪問(wèn)就是對(duì)寄存器及其相應(yīng)位的操作和訪問(wèn)。<iom16.h>中還有對(duì)中斷源和中斷向量的定義。
上述程序代碼中,聲明串口中斷處理函數(shù)的方法為:
#pragmavector=USART_RXC_vect
__interruptvoidreceiv_server(void)
{
...//此處根據(jù)自身需要添加中斷處理內(nèi)容
}
其中,加粗部分為固定格式,不加粗部分為可替換部分。receiv_server為自定義的中斷處理函數(shù)名稱;USART_RXC_vect為串口接收中斷向量,由<iom16.h>定義。若需編寫其他中斷處理函數(shù),相應(yīng)的中斷向量也必須查詢<iom16.h>中關(guān)于中斷向量的定義。
3.確定JTAG仿真器和串口線的端口號(hào)
將JTAG仿真器和串口線連接至主板上的對(duì)應(yīng)接口。
在桌面上右鍵單擊“我的電腦”,在彈出的菜單中選擇“管理”,彈出“計(jì)算機(jī)管理”的界面,如圖S2-28所示。圖S2-28打開計(jì)算機(jī)管理界面單擊“設(shè)備管理器”,在端口一欄中可查看到兩個(gè)端口號(hào),分別為JTAG仿真器和串口線的端口號(hào),如圖S2-29所示。其中COM12和COM14分別為JTAG仿真器和串口線的端口號(hào)。圖S2-29查看端口號(hào)
4.工程設(shè)置
右鍵點(diǎn)擊工程窗口中的工程名稱,在彈出的菜單中選擇“Options”,如圖S2-30所示。圖S2-30選擇“Options”彈出“Optionsfornode‘code’”對(duì)話框,在“GeneralOptions”選項(xiàng)的“Target”標(biāo)簽下,處理器設(shè)置欄的下拉菜
單選擇ATmega16單片機(jī),如圖S2-31所示。圖S2-31彈出的“Optionsfornode‘code’”對(duì)話框在“C/C++Compiler”選項(xiàng)的“Rreprocessor”標(biāo)簽下,在“Definedsymbols”框中輸ENABLE_BIT_DEFINATIONS(可在頭文件中查找),如圖S2-32所示。圖S2-32“Rreprocessor”標(biāo)簽的設(shè)置在“Debugger”選項(xiàng)的“Setup”標(biāo)簽中,“Driver”欄的下拉菜單中選擇“JTAGICE”,如圖S2-33所示。圖S2-33“Setup”標(biāo)簽的設(shè)置
在“JTAGICE”選項(xiàng)的“JTAGICE1”標(biāo)簽中選擇端口號(hào)為“COM12”,端口頻率設(shè)置為540kHz,如圖S2-34所示。圖S2-34設(shè)置仿真器端口號(hào)和頻率
5.編譯、下載測(cè)試
點(diǎn)擊編譯按鍵如圖S2-35所示,或在菜單“Project”下選擇“Make”對(duì)代碼進(jìn)行編譯。圖S2-35編譯按鈕如果沒(méi)有錯(cuò)誤和警告,則出現(xiàn)提示,如圖S2-36所示。圖S2-36Message窗口點(diǎn)擊圖S2-35中最右側(cè)的“Debug”按鈕,彈出仿真調(diào)試按鈕,點(diǎn)擊全速執(zhí)行按鈕,如圖S2-37所示。圖S2-37仿真調(diào)試快捷按鈕
6.結(jié)果查看
對(duì)于本例的串口通信,采用本公司自主研發(fā)的上位機(jī)軟件“超級(jí)串口”實(shí)現(xiàn),其界面如圖S2-38所示。
在串口設(shè)置中選擇串口號(hào)為COM14,波特率設(shè)置為“9600”(依據(jù)代碼中的初始化波特率而定),然后點(diǎn)擊“打開串口”。在發(fā)送區(qū)輸入123+回車,點(diǎn)擊“發(fā)送”按鈕,接收區(qū)收到的內(nèi)容如圖S2-39所示。
輸入其他兩種情況,也能在接收區(qū)分別收到預(yù)期的結(jié)果,在此不再一一展現(xiàn)。圖S2-38超級(jí)串口界面圖S2-39串口收/發(fā)測(cè)試實(shí)踐2.G.4
LCD12864液晶顯示屏驅(qū)動(dòng)程序編寫。
【分析】LCD12864為單色液晶屏,分辨率為128×64。本書配套LCD12864帶中文字庫(kù),內(nèi)部含有國(guó)標(biāo)一級(jí)、二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模塊,內(nèi)置8192個(gè)16×16點(diǎn)漢字和128個(gè)16×8點(diǎn)ASCII字符集。
LCD12864有串行和并行兩種連接方式,利用其靈活的接口方式和簡(jiǎn)單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面。本書配套LCD12864為串行接口,相關(guān)接口定義如圖S2-40所示。圖S2-40LCD12864接口原理圖
【參考解決方案】
1.?LCD12864.h的編寫
12864液晶屏的相關(guān)引腳定義封裝成為宏定義,存放在文件“LCD12864.h”中,以便進(jìn)行封裝和快速調(diào)用,具體源程序代碼如下:
2.主函數(shù)main.c的編寫
在主函數(shù)中首先對(duì)LCD12864進(jìn)行初始化,然后調(diào)用測(cè)試函數(shù)顯示相關(guān)字符,其源程序代碼如下:
#include<iom16.h>
#include<intrinsics.h>
#include“LCD12864.h”
intmain(void)
{
3.?12864液晶屏初始化
液晶屏初始化函數(shù)LCD_init()的詳細(xì)程序代碼實(shí)現(xiàn)如下:其中,delay()為延時(shí)函數(shù),其源程序代碼實(shí)現(xiàn)如下:
wr_com()函數(shù)為寫指令函數(shù),參數(shù)為寄存器地址,其源程序代碼如下:其中,sendbyte()為SPI串口通信發(fā)送一個(gè)字節(jié)函數(shù),具體實(shí)現(xiàn)如下:
4.漢字顯示
由于LCD12864自帶漢字字庫(kù),只需要將漢字的編碼寫入相應(yīng)寄存器,便可進(jìn)行顯示。本例中使用TEST()函數(shù)顯示所需的內(nèi)容,其具體程序代碼實(shí)現(xiàn)如下: delay(10000);
loc(3,0);
LCD_display(“”);
delay(10000);
loc(4,0);
LCD_display(“-------------
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年大班保育員個(gè)人工作計(jì)劃模版(七篇)
- 【《湖南酒鬼酒基層員工激勵(lì)制度的問(wèn)題及完善建議》8100字論文】
- 【《海信家居公司投資價(jià)值及投資探究實(shí)例》7500字論文】
- 2024年因病缺課登記制度模版(三篇)
- 新媒體運(yùn)營(yíng)實(shí)習(xí)證明模板(6篇)
- 2024年員工個(gè)人下半年工作計(jì)劃(二篇)
- 2024年工程機(jī)械設(shè)備租賃合同例文(四篇)
- 2024年學(xué)校藝體工作計(jì)劃例文(五篇)
- 2024年學(xué)校衛(wèi)生防疫管理制度例文(五篇)
- 2024年實(shí)驗(yàn)室人員管理制度模版(二篇)
- 投資項(xiàng)目經(jīng)濟(jì)評(píng)價(jià)管理辦法
- 2023-2023年江蘇省徐州市九年級(jí)數(shù)學(xué)上期中試題含答案
- 平菇栽培技術(shù)課件
- 人教版數(shù)學(xué)一年級(jí)上冊(cè)《6和7解決問(wèn)題(加法)》教案
- 高考復(fù)習(xí):探究文言文閱讀主觀題 課件(23張PPT)
- 不良事件報(bào)告與分析課件
- 柴油發(fā)電機(jī)煙囪計(jì)算
- 三重一大實(shí)施細(xì)則解讀專題培訓(xùn)課件
- 三年級(jí)數(shù)學(xué)上冊(cè)課件-5.倍的認(rèn)識(shí)(23)- 人教版 20張
- 五年級(jí)上冊(cè)數(shù)學(xué)教案-平行四邊形的認(rèn)識(shí)- 滬教版
- 水下混凝土灌注記錄(含計(jì)算公式新表格)
評(píng)論
0/150
提交評(píng)論