



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、;本例通過編程,使ccp1模塊工作在脈寬調(diào)制pwm方式下從rc2口上輸出分辨率達10位的;pwm波形,波形的占空比可以通過鍵盤調(diào)節(jié),當按下k1鍵時,輸出的pwm波形的占空比為25%,;當按下k2鍵時,輸出的pwm波形的占空比為50%,當按下k3鍵時,輸出的pwm波形的占空;比為75%,當按下k4鍵時,輸出的pwm波形的占空比為100% ,默認輸出波形的占空比為50%;為了強調(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;默認占空比為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,以上對鍵盤進行掃;描,來確定是哪一個鍵按下k1movlw0x01movwfjianrgotoretk2movlw0x02movwfjianrbcfporta,3gotoretk3movlw0x03movwfjianrgotoretk4movlw0
6、x04movwfjianr ;以上根據(jù)按下的鍵把相應(yīng)的值送給jianrbcfporte,1retnopreturn;*確定占空比為25%的子程序*per25movlw0x3fmovwfccpr1lreturn;*確定占空比為50%的子程序*per50movlw0x7fmovwfccpr1lreturn;*確定占空比為75%的子程序*per75movlw0xbfmovwfccpr1lreturn;*確定占空比為100%的子程序*per100movlw0xffmovwfccpr1lreturn;*中斷服務(wù)子程序*intservenopbcf intcon,rbif;清除中斷標志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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙教版2024-2025學(xué)年七下數(shù)學(xué)期末模擬練習(xí)卷-學(xué)生用卷
- 陜西省西安市遠東第二中學(xué)2024-2025學(xué)年八年級下學(xué)期5月月考道德與法治試卷(無答案)
- 工業(yè)廢棄物處理與污染防治
- 工業(yè)旅游視角下的現(xiàn)代廠區(qū)建設(shè)
- 工業(yè)機器人系統(tǒng)設(shè)計與應(yīng)用研究
- 工業(yè)機器人與數(shù)控技術(shù)的融合
- 工業(yè)機器人技術(shù)及其電機控制策略
- 工業(yè)污染監(jiān)測與控制技術(shù)
- 工業(yè)污染防治的新技術(shù)動態(tài)
- 工業(yè)污染防治措施與標準
- 為什么天空是藍色的
- 婦科急癥的處理與應(yīng)急預(yù)案
- 鋼筋掛籃計算書
- 集團分權(quán)管理手冊
- 信息系統(tǒng)運維服務(wù)項目歸檔資料清單
- 遼寧省義務(wù)教育課程各科目安排及占九年總課時比例、各科目安排樣表(供參考使用)
- 慢性呼吸疾病肺康復(fù)護理專家共識課件
- 烏蘭杰的蒙古族音樂史研究-評烏蘭杰的《蒙古族音樂史》
- 年產(chǎn)8萬噸煅燒鋁礬土熟料生產(chǎn)線項目環(huán)評影響報告
- 變電工程施工合同協(xié)議書
- 電工技術(shù)-北京科技大學(xué)中國大學(xué)mooc課后章節(jié)答案期末考試題庫2023年
評論
0/150
提交評論