下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、;本例通過編程,使ccp1模塊工作在脈寬調(diào)制pwm方式下從rc2口上輸出分辨率達(dá)10位的;pwm波形,波形的占空比可以通過鍵盤調(diào)節(jié),當(dāng)按下k1鍵時,輸出的pwm波形的占空比為25%,;當(dāng)按下k2鍵時,輸出的pwm波形的占空比為50%,當(dāng)按下k3鍵時,輸出的pwm波形的占空;比為75%,當(dāng)按下k4鍵時,輸出的pwm波形的占空比為100% ,默認(rèn)輸出波形的占空比為50%;為了強(qiáng)調(diào)編程技巧,鍵盤程序采用變位中斷方式listp=18f458 includep18f458.incdeyhequ0x20deylequdeyh+1jianrequdeyh+2;存儲鍵值用寄存器org0x00gotomain;
2、轉(zhuǎn)向主程序org0x08gotointserve;轉(zhuǎn)向中斷服務(wù)程序org0x30;*初始化子程序*initialclrfintcon ;禁止總中斷和外圍中斷bsfintcon,rbie ;b口變位中斷允許 bcfintcon2,7;使弱上拉有效bsfintcon2,1;b口變位中斷高優(yōu)先級bsfrcon,7;使能中斷優(yōu)先級movlw0xffmovwfpr2;設(shè)置pwm的工作周期movlw0x7fmovwfccpr1l;默認(rèn)占空比為50%movlw0x3cmovwfccp1con ;設(shè)置ccp1模塊為pwm工作方式,且其工作循;環(huán)的低2位為11,高8位為01111111=7fmovlw0x04m
3、ovwft2con ;打開tmr2,且使其前分頻為1bcftrisc,2;設(shè)置ccp1引腳為輸出方式bcftrisb,1bcftrisa,3bcftrise,0bcftrise,1bsftrisb,4 ;設(shè)置與鍵盤有關(guān)的各口的輸入輸出方式bcfportb,1bcfporta,3bcfporte,0bcfporte,1;k1,k2,k3,k4四條列線置0,為電平變化;中斷的產(chǎn)生創(chuàng)造初始條件movfportb,w ;讀portb端口,建立變位中斷的初始條件;(由高到低時中斷)return;*鍵盤去抖子程序(8ms的延時)*keydelaymovlw0x0amovwfdeyhagain2movlw0
4、xff movwfdeylagain1decfszdeyl,1 gotoagain1 decfszdeyh,1 gotoagain2;具體程序語句參考3. 2節(jié)return;*鍵服務(wù)子程序*keyservejianzhi;確定鍵值的子程序bcfportb,1bcfporta,3movlw0x03movwfporte;k1,k2置低電平,k3,k4置高電平nopnop;使引腳電平穩(wěn)定btfssportb,4gotok1k2 ;rb4為0,表示按鍵為k1,k2中的一個gotok3k4 ;rb4為1,表示按鍵為k3,k4中的一個k1k2bcfportb,1bsfporta,3;k1置低電平,k2置高
5、電平nopnop;使引腳電平穩(wěn)定btfssportb,4gotok1 ;rb4為0,表示按鍵為k1gotok2 ;rb4為1,表示按鍵為k2k3k4bcfporte,0bsfporte,1;k3置低電平,k4置高電平nopnop;使引腳電平穩(wěn)定btfssportb,4gotok3 ;rb4為0,表示按鍵為k3gotok4 ;rb4為1,表示按鍵為k4,以上對鍵盤進(jìn)行掃;描,來確定是哪一個鍵按下k1movlw0x01movwfjianrgotoretk2movlw0x02movwfjianrbcfporta,3gotoretk3movlw0x03movwfjianrgotoretk4movlw0
6、x04movwfjianr ;以上根據(jù)按下的鍵把相應(yīng)的值送給jianrbcfporte,1retnopreturn;*確定占空比為25%的子程序*per25movlw0x3fmovwfccpr1lreturn;*確定占空比為50%的子程序*per50movlw0x7fmovwfccpr1lreturn;*確定占空比為75%的子程序*per75movlw0xbfmovwfccpr1lreturn;*確定占空比為100%的子程序*per100movlw0xffmovwfccpr1lreturn;*中斷服務(wù)子程序*intservenopbcf intcon,rbif;清除中斷標(biāo)志callkeydel
7、ay ;調(diào)用軟件延時子程序消抖動movfportb,w ;讀portb的值,并同時改變中斷發(fā)生的條件可;以屏蔽一次無用的中斷,又可以防止按鍵時間;過長發(fā)生連續(xù)中斷btfscportb,4retfie ;判斷為干擾,則返回,并可以屏蔽一次無用的;中斷callkeyserve ;調(diào)用鍵服務(wù)子程序,確定鍵值bcfportb,1bcfporta,3bcfporte,0bcfporte,1 ;送低電平至k1,k2,k3,k4,以防止鍵掃描;時改變k1,k2,k3,k4的電平,從而改變中;斷條件bcfintcon,rbif;鍵掃描時可能會產(chǎn)生電平變化而使rbif;置1,再清除一次rbif以求避免額外中斷movlw0x01;以下通過判斷是哪個鍵按下從subwfjianr,0;而選擇pwm波形的不同占空比btfscstatus,zcallper25 ;若是k1按下,則pwm占空比為25% ;以下同理movlw0x02subwfjianr,0btfscstatus,zcallper50movlw0x03subwfjianr,0btfscstatus,zcallper75
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國纏繞膜復(fù)卷機(jī)行業(yè)投資前景及策略咨詢研究報告
- 2025年電動式潤滑泵項(xiàng)目可行性研究報告
- 2025年天線延長線項(xiàng)目可行性研究報告
- 2025至2030年豪華大班臺項(xiàng)目投資價值分析報告
- 地質(zhì)勘探技術(shù)服務(wù)合同
- 國際貿(mào)易實(shí)務(wù)合同條款
- 產(chǎn)品設(shè)計(jì)服務(wù)合同
- 三農(nóng)產(chǎn)業(yè)風(fēng)險防控方案
- 2025年度辦公室助理實(shí)習(xí)生實(shí)習(xí)期績效評估與獎勵合同
- 內(nèi)墻涂料勞務(wù)分包合同
- 城鄉(xiāng)環(huán)衛(wèi)一體化內(nèi)部管理制度
- 廣匯煤炭清潔煉化有限責(zé)任公司1000萬噸年煤炭分級提質(zhì)綜合利用項(xiàng)目變更環(huán)境影響報告書
- 小學(xué)數(shù)學(xué)六年級解方程練習(xí)300題及答案
- 大數(shù)據(jù)在化工行業(yè)中的應(yīng)用與創(chuàng)新
- 光伏十林業(yè)可行性報告
- 小學(xué)綜合實(shí)踐《我做環(huán)保宣傳員 保護(hù)環(huán)境人人有責(zé)》
- 鋼煤斗內(nèi)襯不銹鋼板施工工法
- 公司人事招聘面試技巧培訓(xùn)完整版課件兩篇
- 出國勞務(wù)派遣合同(專業(yè)版)電子版正規(guī)范本(通用版)
- 公路工程安全風(fēng)險辨識與防控手冊
- 供應(yīng)商評估報告范本
評論
0/150
提交評論