按鍵驅動跟之前的LED,蜂鳴器的方法類似;通過底板,核心板我們可以看到按鍵的電路圖:
通過電路圖我們可以看出,當按鍵按下去為低電平,松開為高電平;所以我們要檢測XEINT26的狀態,通過芯片手冊找到GPX3_2的說明;
有芯片手冊可知:GPX3CON為0為檢測,GPAC3DAT為1是高電平下面貼出代碼:按鍵KEY1,KEY2,KEY3分別控制輸出字符串,KEY4控制退出:
#define GPX3CON (*(volatile unsigned long *)0x11000c60)
#define GPX3DAT (*(volatile unsigned long *)0x11000c64)
int (*printf)(char *, ...) = 0xc3e114d8;
void (*udelay)(int) = 0xc3e25f90;//延時程序
int main()
{
GPX3CON &= ~(0xffff << 8);
while(1) {
/*key1*/
if((GPX3DAT & (0x1 << 2)) == 0) {
printf("key 1 down\n");
printf("hello world\n");
udelay(250000);
}
/*key2*/
if((GPX3DAT & (0x1 << 3)) == 0) {
printf("key 2 down\n");
printf("good monig\n");
udelay(250000);
}
/*key3*/
if((GPX3DAT & (0x1 << 4)) == 0) {
printf("key 3 down\n");
printf("welcom key 3\n");
udelay(250000);
}
/*key4*/
if((GPX3DAT & (0x1 << 5)) == 0) {
printf("key 4 down\n");
break;
}
}
printf("Over\n");
return 0;
}
開發板運行結果如下:
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
led
+關注
關注
242文章
23608瀏覽量
668818 -
蜂鳴器
+關注
關注
12文章
893瀏覽量
46457 -
按鍵驅動
+關注
關注
0文章
11瀏覽量
7204
發布評論請先 登錄
相關推薦
(exynos4412)Tiny4412裸機開發-按鍵檢測
上篇文章已經介紹過LED裸機編程,完成LED燈控制,這篇文章就介紹利用這款開發板繼續完成按鍵編程,了解GPIO口基本的輸入輸出配置。
【代碼】tiny4412裸機Demo
` 本帖最后由 zsm_linux 于 2014-8-15 10:31 編輯
我想肯定很多人需要,下載自CSDN, 為數不多的4412資料資料包含: 需要資料聯系QQ 1402284892`
發表于 08-15 10:05
免費試用“Tiny4412開發板——友善之臂Cortex-A9”
本帖最后由 L490351555 于 2015-8-19 08:38 編輯
大家好,這兩天咱們的論壇搞了一個開發板投票試用活動。現在有一個投票項就是“Tiny4412開發板——友善之臂
發表于 08-18 19:09
友善之臂Ubuntu使用手冊
友善之臂Ubuntu使用手冊本手冊介紹如何在友善之臂開發板 Tiny4412 以及 NanoPC-T1 上安裝和使用 Ubuntu 系統。
發表于 12-18 10:42
4412燒Android時不能啟動,停在ANDROID界面
我也大家玩高大上的4412了,跟著最新光盤提供的"tiny4412用戶燒寫"手冊,刷ANDROID時,燒寫可以成功,但就是啟動不了,一直停在ANDROID圖標界面。串口也一直打印
發表于 05-13 07:45
請問在4412的USB驅動程序里該如何修改?
用tiny4412遇到一個問題,4412作為USB設備與作為主機的PC連接,物理連接是USB線,在4412上需要把USB上的特殊數據解析出來,當做并口數據處理。請問在4412的USB
發表于 05-17 00:12
Tiny4412-Uboot啟動后無法加載uImage
好吧。。在這里先祈求,有哪位大大,或者老師,能關注下。個人一度試圖移植tiny4412的uboot和kernel還有根文件系統。。。。。然后順帶學習一下設備樹的用法這個是uboot配置ls/dev
發表于 08-30 05:45
TINY4412 UART程序設計得相關資料分享
嵌入式實驗: TINY4412 UART 程序設計一、實驗目的熟悉UART通信相關的寄存器的功能和設置方法,設置引腳復用,選擇UART接收和發送對應的引腳用于UART通信,數據流格式設置,設置
發表于 11-09 06:11
如何實現Tiny4412通過NRF24L01 2.4G無線模塊發送數據呢
Linux下SPI設備驅動該怎樣去編寫呢?如何實現Tiny4412通過NRF24L01 2.4G無線模塊發送數據呢?
發表于 12-17 06:36
iny4412嵌入式Linux操作系統啟動流程是怎樣的
本次介紹一下友善之臂tiny4412嵌入式Linux操作系統分析首先,可以從官方提供的用戶手冊中得到這樣一張圖,它簡單表達了裸機燒寫啟動系統的流程,不過這張圖中缺少對BL2的描述,所以
發表于 12-20 07:50
如何使用ARM contexA9開發板進行LED驅動編程的詳細資料說明
關于友善之臂出的這款contexA9開發板,目前在網絡上的資源較少,特別是內核的,非常之少,鑒于這種情況,我將會寫一個系列的驅動來做關于tiny4412這款板子開發的總結。
發表于 05-07 18:21
?2次下載

嵌入式實驗: TINY4412 UART 程序設計
嵌入式實驗: TINY4412 UART 程序設計一、實驗目的熟悉UART通信相關的寄存器的功能和設置方法,設置引腳復用,選擇UART接收和發送對應的引腳用于UART通信,數據流格式設置,設置
發表于 11-03 20:06
?13次下載

Linux驅動開發-編寫RFID-RC522射頻刷卡模塊驅動
當前文章介紹如果在Linux系統下編寫MF-RC522模塊驅動,配合應用層,完成IC卡號讀取,扇區讀寫,密碼驗證等等。當前開發板采用友善之臂Tiny4412,芯片是三星的EXYNOS4412

評論