![C8051F340單片機應(yīng)用試驗_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/17/7adbf647-e032-498f-973b-dace9323318a/7adbf647-e032-498f-973b-dace9323318a1.gif)
![C8051F340單片機應(yīng)用試驗_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/17/7adbf647-e032-498f-973b-dace9323318a/7adbf647-e032-498f-973b-dace9323318a2.gif)
![C8051F340單片機應(yīng)用試驗_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/17/7adbf647-e032-498f-973b-dace9323318a/7adbf647-e032-498f-973b-dace9323318a3.gif)
![C8051F340單片機應(yīng)用試驗_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/17/7adbf647-e032-498f-973b-dace9323318a/7adbf647-e032-498f-973b-dace9323318a4.gif)
![C8051F340單片機應(yīng)用試驗_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/17/7adbf647-e032-498f-973b-dace9323318a/7adbf647-e032-498f-973b-dace9323318a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、C8051F340單片機應(yīng)用實驗作者:游小俠 原創(chuàng),實際調(diào)試通過1實驗內(nèi)容用C8051F340單片機開發(fā)板完成下述實驗:定時器T0以固定周期產(chǎn)生中斷, 中斷處理程序控制I/O 口輸出,使P2.3腳所接發(fā)光二極管閃爍。對 P2.5腳的輸 入模擬電壓進行A/D轉(zhuǎn)換,由A/D轉(zhuǎn)換結(jié)果控制發(fā)光二極管的閃爍頻率。2實驗原理1)I/O 口輸出C8051F340有5組8位I/O端口,通過配置交義開關(guān),可以定義每個端口為 通用I/O端口或連接到特殊功能模塊。作為通用 I/O時,所有端口 I/O都耐5V 電壓,兼有模擬輸入功能,Pn (n=04,下同)是端口數(shù)據(jù)鎖存器,端口輸入方 式寄存器PnMDIN選擇相應(yīng)端
2、口為數(shù)字輸入或模擬輸入方式,端口輸出方式寄 存器PnMDOUT選擇相應(yīng)端口為漏極開路或推挽輸出方式。通過交義開關(guān)可將片內(nèi)的計數(shù)器/定時器、申行總線、硬件中斷、比較器輸 出等資源連接到I/O端口,這一特性允許用戶根據(jù)自己的特定應(yīng)用選擇通用I/O端口和所需數(shù)字資源的組合。交義開關(guān)配置寄存器XBR0、XBR1、XBR2選擇哪些內(nèi)部資源需要連接到I/O端口,端口跳過寄存器 P0SKIP、P1SKIP、P2SKIP 選擇哪些I/O端口不參與交義開關(guān)的配置。這些寄存器的值確定后,交義開關(guān)就 按固定的優(yōu)先級順序依次將單片機內(nèi)部資源配置到I/O端口。端口初始化可按以下步驟進行:用端口輸入方式寄存器(PnMDI
3、N )選擇端口輸入方式(模擬或數(shù)字);用端口輸出方式寄存器(PnMDOUT )選擇端口輸出方式(漏極開路或推挽);用端口跳過寄存器(PnSKIP)選擇需被交叉開關(guān)跳過的那些引腳;用交叉開關(guān)配置寄存器 XBR0、XBR1、XBR2選擇需要連接到I/O引腳的資源; 使能交叉開關(guān): XBARE = 1 (XBRE1.6 )。2)定時器C8051F340內(nèi)部有4個計數(shù)器/定時器T0、T1、T2、T3,還有一個可編程計 數(shù)陣列(PCA)。T0、T1的使用方法與傳統(tǒng) MCS-51相同,T2、T3是16位自動 重裝載計數(shù)器/定時器,可用于ADC、SMBus、USB或作為普通計數(shù)器/定時器 使用。PCA由1個
4、16位計數(shù)器和6個捕捉/比較模塊組成,每個捕捉/比較模塊 都可通過交義開關(guān)配置到I/O 口。T0有4種工作方式:13位計數(shù)/定時器、16位計數(shù)器/定時器、8位自動重 裝載的計數(shù)器/定時器、兩個8位計數(shù)器/定時器。本實驗使用T0的工作方式1 即16位計數(shù)器/定時器方式。與T0有關(guān)的控制寄存器有工作方式控制寄存器 TMOD、定時器控制寄存器 TCON、時鐘控制寄存器CKCON、計數(shù)值低字節(jié)寄存器 TL0、計數(shù)值高字節(jié)寄 存器TH0。TMOD中的方式選擇位T1M1-T0M0用來選擇工作方式,如下表所 列。TCON用丁使能定時器0和定時器1以及指示它們的狀態(tài)。CKCON用來選 擇計數(shù)器的輸入時鐘。TL
5、0保存計數(shù)值低字節(jié),TH0保存計數(shù)值高字節(jié),兩字節(jié) 需分開寫。T1M1T1M0方式說明00方式013位計數(shù)器/定時器01方式116位計數(shù)器/定時器10方式2:自動重裝載的8位計數(shù)器/定時器11方式3:兩個8為計數(shù)器/定時器3)中斷除復(fù)位外有17個中斷向量,優(yōu)先級對應(yīng)為016級。與中斷有關(guān)的寄存器有:3個中斷使能寄存器IE、EIE1、EIE2, 3個中斷優(yōu)先級控制寄存器IP、EIP1、EIP2。 IE、EIE1、EIE2可以控制允許或禁止相應(yīng)的中斷,IP、EIP1、EIP2可以定義相 應(yīng)中斷為低優(yōu)先級或高優(yōu)先級。EA位(EI.7)是中斷允許或禁止的總開關(guān),EA=0 時,禁止所有中斷,EA= 1時
6、,某項中斷允許與否由中斷使能寄存器中的對應(yīng)位 決定。T0溢出中斷編號為1,中斷向量地址為0X000B。通過將IE寄存器中的ET0 位置1來允許定時器0中斷,當(dāng)T0的計數(shù)值溢出(從全1變?yōu)槿?)時,TF0 位(TCON.5)被硬件置1,若中斷被允許,則引起T0溢出中斷。TF0可以軟件 活0,當(dāng)T0中斷服務(wù)程序被執(zhí)行時,TF0自動活0。4)A/D轉(zhuǎn)換ADC子系統(tǒng)有1個最高速度達200ksps的10位逐次逼近型ADC和1個溫 度傳感器。ADC有兩個輸入端口,可編程配置為單端輸入或差分輸入方式,由 模擬通道選擇寄存器 AMX0P、AMX0N控制,AMX0P選擇模擬輸入的正端, AMX0N選擇模擬輸入的
7、負端。將AMX0N的低5為置為全1,即選擇負端接地,ADC工作在單端輸入方式;當(dāng)負端選擇其他端口時,ADC工作在差分輸入方式其他與AD轉(zhuǎn)換有關(guān)的寄存器還有配置寄存器 ADC0CF、高位數(shù)據(jù)寄存器 ADC0H、低位數(shù)據(jù)寄存器 ADC0L、控制寄存器 ADC0CN。ADC0CF的高5位 用丁選擇AD轉(zhuǎn)換的時鐘,ADC0CN用丁控制A/D轉(zhuǎn)換,包括使能ADC模塊、 選擇啟動轉(zhuǎn)換的方法、啟動轉(zhuǎn)換、指示轉(zhuǎn)換狀態(tài)等。向AD0BUSY (ADC0CN.4) 寫1可以啟動轉(zhuǎn)換,轉(zhuǎn)換過程中AD0BUSY=1 ,轉(zhuǎn)換結(jié)束時,AD0BUSY變?yōu)?, 同時中斷標志位 ADC0INT被置1。ADC0H、ADC0L合起來
8、保存10位A/D轉(zhuǎn)換 結(jié)果,轉(zhuǎn)換結(jié)果在兩個寄存器中的存放可以有左對齊和右對齊兩種方式,由 AD0LJST (ADC0CF.2)決定。A/D轉(zhuǎn)換啟動方法有6種,除向AD0BUSY寫1可以啟動外,T0、T1、T2、 T3的溢出都可啟動,還有CNVSTR的上升沿觸發(fā)啟動。本實驗A/D轉(zhuǎn)換過程是: 向AD0BUSY寫1啟動轉(zhuǎn)換,讀AD0INT狀態(tài)等待轉(zhuǎn)換結(jié)束,當(dāng)AD0INT=1時, 讀取結(jié)果,處理結(jié)果并啟動下一次轉(zhuǎn)換。3實驗程序本實驗程序包括主程序和 T0中斷服務(wù)程序。主程序完成系統(tǒng)初始化、A/D轉(zhuǎn)換和結(jié)果計算處理等功能,中斷服務(wù)程序控制P2.2腳發(fā)光二極管亮滅和閃爍8的時間間隔。程序流程圖如下圖所示
9、0源程序如下:#include <c8051F340.h>/ 寄存器定義unsigned int ti,tn;/ 定時參數(shù)sbit LED2 = P2A2;/P2.2 口發(fā)光二極管sbit LED3 = P2A3;/P2.3 口發(fā)光二極管unsigned char h,l;/AD 轉(zhuǎn)換中間值 unsigned int r,rh;unsigned int x20;/20 次 AD 轉(zhuǎn)換結(jié)果 unsigned int sum;/20次AD轉(zhuǎn)換結(jié)果之和 unsigned int adr;/20次AD轉(zhuǎn)換結(jié)果平均值void AD_Init()( /AD初始化,單端輸入方式AMX0P = 0
10、x04;/ADC 正端選 P2.5AMX0N = 0xFF;/ADC 負端選 GND ADC0CF = 0x40;/選擇轉(zhuǎn)換時鐘 AD0EN = 1;/使能AD模塊 AD0BUSY = 1;/啟動轉(zhuǎn)換 unsigned int AD_RW()(/讀取AD轉(zhuǎn)換結(jié)果并啟動下一次轉(zhuǎn)換h = ADC0H;/AD 轉(zhuǎn)換結(jié)果高 2位l = ADC0L;/AD 轉(zhuǎn)換結(jié)果低 8位 rh = (h & 3);r = rh * 256;r = r + l;AD0INT = 0;/中斷標志位置 0AD0BUSY = 1;/啟動下一次AD轉(zhuǎn)換 return r;void T0_Init()(/T0初始化TMO
11、D = 0x01;/ 方式 1TH0 = 0xF4;/ 計數(shù)值TL0 = 0x47;TCON |= 0x10;/ 開始計數(shù) void P2_Init()(/P2 口初始化P2MDOUT |= 0x0C;/P2.2、P2.3 推挽輸出P2MDIN = 0xDF;/P2.5 模擬輸入P2SKIP = 0x2C;/P2.2、P2.3、P2.5 不參與交叉開關(guān)分配XBR1 = 0x40;/使能交叉開關(guān)void ISR_Init()(/中斷初始化IE |= 0x82;/ 使能 T0 中斷void T0_ISR() interrupt 1(/T0中斷服務(wù)程序ti +;if(ti >= tn)(ti
12、= 0;LED2 = LED2;/發(fā)光二極管狀態(tài)改變T0_Init();/ 重新啟動 T0void main()(unsigned char adn = 0;PCA0MD &= 0x40;/ 關(guān)閉看門狗/變量初始化ti = 0;tn = 5;sum = 0;P2_Init();/P2 口初始化AD_Init();/AD 初始化T0_Init();/T0 初始化ISR_Init();/中斷初始化while(1)(if(AD0INT = 1)/ 轉(zhuǎn)換完畢(EA = 0;/關(guān)中斷xadn = AD_RW();/讀取AD轉(zhuǎn)換結(jié)果并啟動下一次轉(zhuǎn)換 EA = 1;/開中斷 sum = sum + xadn; adn +;if(adn > 19)/ 讀取了 20 個值(adn = 0;adr = sum / 20;/ 求平均值sum = 0;tn = adr /10;/確定發(fā)光二極管閃爍周期LED3 = 1;/P2.3 口發(fā)光二極管一直亮 4實驗結(jié)果P2.3 口發(fā)光二極管一直為點亮狀態(tài)。P2.2 口發(fā)光二極管閃爍,調(diào)節(jié)電位器,可發(fā)現(xiàn)其閃爍頻率與P2.5端口輸入電壓成反比。附:C8051F340單片機開發(fā)板電路原理圖oooaxw=,Lfl E amuudum
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度績效合同簽訂與履行指南
- 二零二五年度未簽合同員工勞動仲裁應(yīng)對措施及賠償協(xié)議
- 二零二五年度物業(yè)與業(yè)主之間綠化賠償合作協(xié)議
- 2025年度煙酒店員工培訓(xùn)與職業(yè)發(fā)展合同
- 柴油發(fā)電機組技術(shù)協(xié)議
- 施工日志填寫樣本防雷工程施工
- 小學(xué)語文人教一年級上冊識字2《日月明》教學(xué)設(shè)計
- DB4415T 52-2025竹薯種植技術(shù)規(guī)程
- 臨時舞臺搭建合同范本
- 個人向個人貸款合作協(xié)議合同
- 充電樁知識培訓(xùn)課件
- 2025年七年級下冊道德與法治主要知識點
- 2025年交通運輸部長江口航道管理局招聘4人歷年高頻重點提升(共500題)附帶答案詳解
- 老年髖部骨折患者圍術(shù)期下肢深靜脈血栓基礎(chǔ)預(yù)防專家共識(2024版)解讀
- 廣東省廣州市2025屆高三上學(xué)期12月調(diào)研測試(零模)英語 含解析
- 偏癱足內(nèi)翻的治療
- 藥企質(zhì)量主管競聘
- 信息對抗與認知戰(zhàn)研究-洞察分析
- 心腦血管疾病預(yù)防課件
- 手術(shù)室??谱o士工作總結(jié)匯報
- 2025屆高三聽力技巧指導(dǎo)-預(yù)讀、預(yù)測
評論
0/150
提交評論