




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
單片機應用技術項目三按鍵控制LED亮滅任務3.1按鍵控制LED亮滅—查詢方式任務要求
選擇SW1為目標按鍵,CC2530開發板上電后D3熄滅,在程序中判斷按鍵是否按下,每次按下,將D3的亮滅狀態切換一次,即由亮到滅,或者由滅到亮。12相關寄存器基礎知識3任務分析4電路圖分析5任務實現一、基礎知識
查詢方式一般來說,按鍵會連接外接電源(或接地)、電阻,以及單片機的I/O引腳。按下按鍵后,會導致CC2530單片機I/O引腳上的電平發生高低轉換。在程序中,通過不斷查詢I/O引腳上的高低電平的變化,來判斷按鍵是否按下的方式。一、基礎知識
按鍵抖動通常所用的按鍵都是機械彈性開關,由于機械觸點的彈性作用,一個按鍵在閉合時不會馬上穩定地接通,在斷開時也不會馬上穩定地斷開,而是在閉合或斷開的瞬間伴隨一連串的抖動。按下抬起按下抬起一、基礎知識
按鍵抖動抖動時間的長短由按鍵的機械特性決定,一般為5ms~10ms,人按一下按鍵的時間一般為零點幾秒至數秒。由于單片機運行速度快,按鍵的抖動會導致在一次按下過程中,單片機識別出多次按下和抬起。為避免這種情況,需要消除按鍵抖動帶來的影響。問題按下抬起按下抬起一、基礎知識
通過電路硬件設計的方法來過濾按鍵輸出信號,將抖動信號過濾成理想信號后傳輸給單片機。消除抖動的方式通過程序過濾的方法,在程序中檢測到按鍵動作后,延時一段時間后再次檢測按鍵狀態,如果延時前后按鍵的狀態一致,則說明按鍵是正常執行動作,否則認為是按鍵抖動。硬件去抖軟件去抖二、相關寄存器輸入模式寄存器:P0INP,P1INP,P2INPP0INP位名稱復位讀寫描述7:00x00R/WP0_0~P0_7輸入選擇位:0為上拉/下拉,1為三態P1INP位名稱復位讀寫描述7:2000000R/WP1_7~P1_2輸入選擇位:0為上拉/下拉,1為三態1:000R0沒有使用二、相關寄存器P2INP位名稱復位讀寫描述70R/W對所有P2端口設置上拉/下拉輸入:0為上拉,1為下拉60R/W對所有P1端口設置上拉/下拉輸入:0為上拉,1為下拉50R/W對所有P0端口設置上拉/下拉輸入:0為上拉,1為下拉4:000000R/WP2_4~P2_0輸入選擇位:0為上拉/下拉,1為三態引腳是上拉、下拉,還是三態,需要P0INP、P1INP和P2INP配合設置。二、相關寄存器設置P1_2為上拉
P1INP&=~0x04;P2INP|=0x20;設置P1_2為上拉/下拉設置P1端口全為上拉,故P1_2也為上拉三、任務分析
CC2530單片機上電,配置SW1、D3對應的I/O引腳,并熄滅D3。使用軟件去抖方式,判斷按鍵是否按下。如果SW1按下,切換D3亮滅狀態,等待SW1抬起后,返回步驟2,繼續執行;如果SW1沒按下,返回步驟2,繼續執行。四、電路圖分析
當SW1沒有被按下時,P1_2引腳相當于外接了一個上拉電阻,并連接到3.3V電源上,呈現高電平狀態。當SW1被按下時,SW1的4個引腳導通,P1_2引腳相當于直接連接到地,呈現低電平狀態。根據電路連接圖可知,當SW1按鍵被按下時,從P1_2引腳讀取的邏輯值是0,按鍵沒被按下時,從P1_2讀取的值是1。五、任務實現
引腳設置設置P1_0為通用I/O引腳,輸出方向P1SEL
&=~
0x01;
//設置P1_0引腳為通用I/O引腳P1DIR
|=
0x01;//設置P1_0引腳為輸出方向設置P1_2為通用I/O引腳,輸入方向P1SEL
&=~
0x04;
//設置P1_2引腳為通用I/O引腳P1DIR
&=~
0x04;
//設置P1_2引腳為輸入方向設置P1_2為上拉輸入模式P1INP
&=~
0x04;
//設置P1_2引腳為上拉/下拉模式P2INP
&=~
0x40;
//設置P1_2引腳為上拉模式五、任務實現
按鍵事件處理while(1)//程序主循環
{
if(SW1
==
0)
//如果按鍵被按下
{
delay(100);
//軟件消抖進行延時
if(SW1
==
0)
//經過延時后按鍵仍舊處在按下狀態
{
D3
=
!D3;
//切換D3的亮滅狀態
while(!SW1);
//等待按鍵松開
}
}
}軟件去抖的實現方式當按鍵處在按下狀態的時候,SW1值是0,!SW1值為1,這樣while(!SW1)是死循環,會導致CC2530單片機的CPU一直循環執行該行代碼,即導致單片機“卡”在這里。當按鍵抬起的時候,SW1值為1,!SW1值為0,該循環會結束,然后繼續執行主循環。#defineSW1(P1_2)#defineD3(P1_0)五、任務實現編譯程序,并生成.hex文件,將.hex文件燒寫到CC2530
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鄉鎮醫院設備采購合同樣本
- 農村物流轉讓合同標準文本
- 傳媒公司活動合同樣本
- 供應配件合同樣本
- 2025企業裝飾設計合同
- 修車場轉讓合同標準文本
- 個人超市打工做飯合同標準文本
- 2025勞動合同中乙方可以委托人簽字嗎
- 公司居間合同樣本
- 2025年合同終止的幾種情形
- 反派研究報告by紙上譜
- 五年級下冊數學北師大版教材習題參考答案
- 【農產品網絡營銷策略分析文獻綜述2400字】
- 五年級下冊科學全冊知識點總結與梳理(新改版蘇教版)
- 能源管理體系培訓課件(2023年EnMS)
- 【獲獎】英語跨學科項目式作業設計
- 2022年江蘇省南京市中考語文真題(解析版)
- 山西省繁峙縣鑫秀礦山有限責任公司香臺-康家溝鐵礦礦產資源開發利用和礦山環境保護與土地復墾方案
- 國家開放大學《成本管理》形考任務(1-4)試題答案解析
- 班組LOGO,彰顯特色區隊文化
- 中國認證認可協會 (CCAA) 全國統一考試題庫及答案-合格評定基礎
評論
0/150
提交評論