zigbee基礎應用(二)按鍵使用

2021-07-12 03:02:42 字數 1744 閱讀 8779

zigbee基礎應用(二)按鍵使用

按鍵相對來說比較好理解,又可以通過流水燈來看現象,所以緊隨流水燈其後的當然是按鍵的學習

1.主晶元篇

基本所有的實現過程主晶元都是參與的,而按鍵所涉及到的主要是cc2530的暫存器:

按鍵s1的初始化:

p0sel &= ~0x02;     /*0:通過i/o  1:外設功能*/

p0dir &= ~0x02;  //按鍵在p0.1口,設定為輸入模式

p0inp |= 0x02;   //上拉      

2.外部裝置篇

如電路圖所示

沒按下按鍵,上拉為高電平,按下按鍵則接地為低電平

3.軟體實現篇

#include

#define uint  unsigned int

#define uchar unsigned char

//定義控制燈的埠

#define led1   p1_0 //定義led1為p10口控制

#define led2   p1_1 //定義led2為p11口控制

#define led3   p1_4 //定義led3為p14口控制

#define key1   p0_1       //定義按鍵為p01口控制

//函式宣告

void delay(uint);//延時函式宣告

void initio(void);//初始化函式宣告

void initkey(void);             //初始化按鍵函式宣告

uchar keyscan(void);            //按鍵掃瞄函式宣告

uchar keyvalue = 0 ;           //定義變數記錄按鍵動作

uint  keytouchtimes = 0 ;           //定義變數記錄按鍵次數

/****************************

//延時

*****************************/

void delay(uint n)

/****************************

//初始化程式,將p10、p11、p14定義為輸出口,並將led燈初始化為滅

*****************************/

void initio(void)

/*****************************************

//按鍵動作記錄函式

*****************************************/

uchar keyscan(void)

}return(0);

}/***************************

//主函式

***************************/

void main(void)  }

}

zigbee基礎應用(三)外部中斷

zigbee基礎應用 三 外部中斷 1.暫存器篇 按鍵s1中斷控制初始化 p0ien 0x2 p0.1 設定為中斷方式 1 中斷使能 pictl 0x2 下降沿觸發 ien1 0x20 允許p0口中斷 p0ifg 0x00 初始化中斷標誌位 ea 1 開啟總中斷 2.軟體實現篇 include de...

zigbee基礎應用(四)定時器

1.暫存器相關 舉個栗子 t1ctl 0x0d 128分頻,自動重灌 0x0000 0xffff t1stat 0x21 通道0,中斷有效 2.程式案例 描述 通過定時器t1查詢方式控制led1周 期性閃爍 include define uint unsigned int define uchar ...

微控制器基礎 使用GPIO掃瞄檢測按鍵

開發板 首先需要準備乙個小熊派iot開發板,並通過usb線與電腦連線。開啟stm32cubemx,開啟mcu選擇器 搜尋並選中晶元stm32l431rct6 這裡我都使用外部時鐘 檢視小熊派開發板的原理圖,如下 所以接下來我們選擇配置pc13引腳 設定使用者標籤為led 檢視原理圖,確定控制按鍵引腳...