正点原子-Linux嵌入式开发学习-第二期05

第十三讲:按键实验

1:原理图分析,按键按下低电平进入,不按下高电平

 

 对应的端口为:GPIO1_IO18

 

 复制上一次工程,记得make clean清除上一次的文件

程序编写 

1:新建key文件夹并新建bsp_key.c和bsp_key.h

2:注意程序需要的引脚号-IOMUXC_UART1_CTS_B_GPIO1_IO18(不要选择错误

IOMUXC_SetPinMux(IOMUXC_UART1_CTS_B_GPIO1_IO18,0);    

IOMUXC_SetPinConfig(IOMUXC_UART1_CTS_B_GPIO1_IO18,0Xf080);

输入与输出不同的点:上拉、关闭输出配置只保留输入

3:读取键值

if((GPIO1->DR >> 18)&0X1 == 0 )
    {
        Beep_switch(ON);
        led_switch(LED0,OFF);
    }

出现的问题

1:突然sd卡识别不到了,ls /dev/sd*显示灰色,此时重启ubuntu解决问题,遇到问题就重启一下,

链接脚本的更改 -四字节对齐

 修改完成后,进行编译处理,看反汇编代码中的地址

 通用GPIO程序编写,提高代码质量

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值