TQ210裸机编程(3)——按键

TQ210裸机编程(3)——按键

ID:41033099

大小:281.50 KB

页数:4页

时间:2019-08-14

TQ210裸机编程(3)——按键_第1页
TQ210裸机编程(3)——按键_第2页
TQ210裸机编程(3)——按键_第3页
TQ210裸机编程(3)——按键_第4页
资源描述:

《TQ210裸机编程(3)——按键》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、TQ210裸机编程(3)——按键(查询法)分类: TQ210裸机编程2013-10-1300:59 519人阅读 评论(0) 收藏 举报TQ210嵌入式linux裸机编程S5PV210ARM首先查看TQ210的底板原理图这次编程只操作KEY1和KEY2,在TQ210核心板原理图中搜索XEINT0可以看出KEY1和KEY2分别接在S5PV210的GPH0_0和GPH0_1引脚。这次编程使用查询法,需要设置这两个引脚为输入模式,然后循环读取引脚状态,当用户按下按键时,对应引脚为低电平,同时改变LED状态。查看S5PV

2、210芯片手册start.S[cpp] viewplaincopy1..global _start              @声明一个全局的标号  2._start:  3.    bl main                 @跳转到C函数去执行  4.halt:  5.    b halt                  @死循环  key.c[cpp] viewplaincopy1.#define GPC0CON     *((volatile unsigned int *)0xE0200060)  

3、2.#define GPC0DAT     *((volatile unsigned int *)0xE0200064)  3.  4.#define GPH0CON     *((volatile unsigned int *)0xE0200C00)  5.#define GPH0DAT     *((volatile unsigned int *)0xE0200C04)  6.  7.void delay(volatile unsigned int t)  8.{  9.    volatile unsign

4、ed int t2 = 0xFFFF;  10.    while (t--)  11.        for (; t2; t2--);  12.}  13.  14.int main()  15.{  16.    int key_val = 0;  17.    int bit;  18.    GPC0CON &= ~(0xFF << 12);  19.    GPC0CON 

5、= 0x11 << 12;        // 配置GPC0_3和GPC0_4为输出:LED1和LED2  20.      2

6、1.    GPH0CON &= ~(0xFF << 0);  // 配置GPH0_0和GPH0_1为输入:key1和key2  22.      23.    while (1)  24.    {  25.        key_val = GPH0DAT & 0x3;  26.        if (key_val)  27.        {  28.            delay(500000);      // 防抖延时  29.            key_val = GPH0DAT & 0x

7、3;  30.              1.            if (key_val)  2.            {  3.                if (0x01 == key_val)        // key1  4.                    GPC0DAT ^= 1 << 3;        // toggle LED1  5.                else if (0x02 == key_val)   // key2  6.                 

8、   GPC0DAT ^= 1 << 4;        // toggle LED2  7.            }  8.        }  9.    }  10.      11.    return 0;  12.}  Makefile[cpp] viewplaincopy1.key.bin: start.o key.o  2.    arm-linux-ld -Ttext 0x20000000 -o key.elf $^  3.    arm-linux-objcopy -O binary key

9、.elf $@  4.    arm-linux-objdump -D key.elf > key.dis  5.      6.key.o : key.c  7.    arm-linux-gcc -c $< -o $@  8.start.o : start.S  9.    arm-linux-gcc -c $< -o $@  10.      11.clean:  

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。