



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、;本例通過編程,使ccp1模塊工作在脈寬調(diào)制pwm方式下從rc2口上輸出分辨率達(dá)10位的;pwm波形,波形的占空比可以通過鍵盤調(diào)節(jié),當(dāng)按下k1鍵時(shí),輸出的pwm波形的占空比為25%,;當(dāng)按下k2鍵時(shí),輸出的pwm波形的占空比為50%,當(dāng)按下k3鍵時(shí),輸出的pwm波形的占空;比為75%,當(dāng)按下k4鍵時(shí),輸出的pwm波形的占空比為100% ,默認(rèn)輸出波形的占空比為50%;為了強(qiáng)調(diào)編程技巧,鍵盤程序采用變位中斷方式listp=18f458 includep18f458.incdeyhequ0x20deylequdeyh+1jianrequdeyh+2;存儲(chǔ)鍵值用寄存器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端口,建立變位中斷的初始條件;(由高到低時(shí)中斷)return;*鍵盤去抖子程序(8ms的延時(shí))*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中的一個(gè)gotok3k4 ;rb4為1,表示按鍵為k3,k4中的一個(gè)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)行掃;描,來確定是哪一個(gè)鍵按下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)用軟件延時(shí)子程序消抖動(dòng)movfportb,w ;讀portb的值,并同時(shí)改變中斷發(fā)生的條件可;以屏蔽一次無用的中斷,又可以防止按鍵時(shí)間;過長發(fā)生連續(xù)中斷btfscportb,4retfie ;判斷為干擾,則返回,并可以屏蔽一次無用的;中斷callkeyserve ;調(diào)用鍵服務(wù)子程序,確定鍵值bcfportb,1bcfporta,3bcfporte,0bcfporte,1 ;送低電平至k1,k2,k3,k4,以防止鍵掃描;時(shí)改變k1,k2,k3,k4的電平,從而改變中;斷條件bcfintcon,rbif;鍵掃描時(shí)可能會(huì)產(chǎn)生電平變化而使rbif;置1,再清除一次rbif以求避免額外中斷movlw0x01;以下通過判斷是哪個(gè)鍵按下從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)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鍛造生產(chǎn)工藝員考試試卷及答案
- 2025年南平事業(yè)單位真題
- 高原環(huán)境下低空空域的研究與挑戰(zhàn)
- 2024年麗水云和縣招聘事業(yè)編制教師真題
- 昌吉吉盛新型建材二期工業(yè)硅項(xiàng)目綜合循環(huán)水泵站水泵技術(shù)協(xié)議
- 教育變革背景下的在線教育平臺政策分析
- 教育行業(yè)的數(shù)據(jù)泄露預(yù)防與應(yīng)對措施
- 數(shù)字時(shí)代的教育變革傳統(tǒng)教學(xué)與數(shù)字教材的結(jié)合
- 企業(yè)園區(qū)安全防范的智能化升級方案
- 中職文案寫作課件
- 2024年天津高考數(shù)學(xué)真題試題(原卷版+含解析)
- 《大數(shù)據(jù)分析技術(shù)》課程標(biāo)準(zhǔn)
- 最簡單封陽臺安全免責(zé)協(xié)議書
- 2024年危險(xiǎn)化學(xué)品經(jīng)營單位安全管理人員考試練習(xí)題(附答案)
- (正式版)JBT 3300-2024 平衡重式叉車 整機(jī)試驗(yàn)方法
- 《無人機(jī)航跡規(guī)劃》課程標(biāo)準(zhǔn)(高職)
- 養(yǎng)老院健康檔案模板
- 夏季高溫期間建筑施工安全注意事項(xiàng)
- 2024年中小學(xué)教師職稱審定答辯題目
- 鋼絲繩吊裝時(shí)最大允許吊裝重物對應(yīng)表
- 《金融反欺詐與大數(shù)據(jù)風(fēng)控研究報(bào)告(2023)》
評論
0/150
提交評論