当前位置: 首页 > news >正文

深圳松岗做网站上海中学分数线

深圳松岗做网站,上海中学分数线,通付盾 网站公司建设,太原做网络推广本节学习按键输入,先拷贝上一节工程文件, 1、驱动编写 新建 key 的 .h 和 .c 文件; 再查看一下硬件原理图如下; 由此可知,KEY0 按键接在 UART1_CTS 引脚上,默认情况下为高电平,按键按下为…

本节学习按键输入,先拷贝上一节工程文件,
在这里插入图片描述

1、驱动编写

新建 key 的 .h 和 .c 文件;
在这里插入图片描述
再查看一下硬件原理图如下;
在这里插入图片描述
在这里插入图片描述
由此可知,KEY0 按键接在 UART1_CTS 引脚上,默认情况下为高电平,按键按下为低电平;和之前不同的是,GPIO 由输出变成了输入;
在这里插入图片描述
参考数据手册;
在这里插入图片描述
在这里插入图片描述
定义读取按键值的函数;

// 读取按键值
int read_key(void)
{int ret = 0;ret = ((GPIO1->DR) >> 18) & 0x1;return ret;
}int key_getvalue(void)
{int ret = 0;static unsigned char release = 1;   // 为 1 表示按键释放if((release == 1) && (read_key() == 0))   // 按键按下{delay_ms(10);release = 0;if(read_key() == 0)   // 按键有效{ret = KEY0_VALUE;}}else if(read_key() == 1)   // 没有按下{ret = KEY_NONE;release = 1;}return ret;
}

在头文件中声明;
在这里插入图片描述

2、编写 main.c

#include "main.h"
#include "bsp_clk.h"
#include "bsp_delay.h"
#include "bsp_led.h"
#include "bsp_beep.h"
#include "bsp_key.h"int main(void)
{int i = 0;unsigned char led_state = OFF;unsigned char beep_state = OFF;int keyvalue = 0;clk_enable();led_init();beep_init();key_init();while(1){// 按键处理控制蜂鸣器keyvalue = key_getvalue();if(keyvalue)   // 如果按键值为正则是有效的按键值{switch (keyvalue){case KEY0_VALUE:beep_state = !beep_state;beep_switch(beep_state); break;}}i++;if(i == 50)   // 50*10=500{i = 0;led_state = !led_state;led_switch(LED0,led_state);}delay_ms(10);}return 0; 
}

3、修改部分内容

首先就是修改头文件包含路径;
在这里插入图片描述
修改 Makefile 文件;
在这里插入图片描述

4、编译烧写

在这里插入图片描述
在这里插入图片描述
下载之后 led 亮了一次,就不亮了,key0 是可以控制 beep 的,那么肯定是 led 相关的地方出了问题,找到 led 控制的函数,才发现参数写错了,按照以下修改;
在这里插入图片描述
再次编译工程,烧写之后功能正常了;

I.MX6ULL_key

5、回顾,问题解决

解决另一个问题,在【ARM 裸机】NXP 官方 SDK 使用 这一小节中,加上清除 bss 段的代码是不会运行的,所以清除 bss 段的代码被注释掉了,这是因为对 32 位的芯片来说,是 4 字节访问的,查看反汇编文件可知;
在这里插入图片描述
_bss_start 的起始地址是 0x87800271,这是不能被 4 整除的,所以要对 _bss_start 进行 4 字节对齐操作;
在这里插入图片描述
再来看一下反汇编文件;
在这里插入图片描述
编译工程烧写之后正常运行。

http://www.yayakq.cn/news/9498/

相关文章:

  • 哈尔滨建设网站门户去除tag wordpress
  • 承德网站设计公司群晖套件wordpress
  • 网站建设有关图片重点实验室网站建设方案
  • 网站建设的软文素材网站开发成本如何入账
  • 网站策划书免费谈谈设计和建设网站体会
  • 服务器iis添加网站网站建设与维护的内容
  • js素材网站网站强制分享链接怎么做的
  • 免费的网站建设有哪些辣妹子影院电视剧免费播放
  • 网站建设套餐有哪些内容广东省住房和城乡建设厅官网网址
  • 网站建设与网页设计考试题学校官网页面设计
  • 泰安网站seo抖音代运营是干嘛的
  • 营销型网站价格典当行网站
  • wordpress可以建站吗4399网站开发
  • 校园网站设计方案微网站和wap
  • 玉溪做网站在百度上怎么发布广告
  • html5绿色的房地产手机网站模板源码如何自己编写一个程序
  • 任家房网站建设厦门网站流量优化价格
  • 网站维护 案例做企业网站的流程
  • ppt模版模板免费网站wordpress免费教育模板下载地址
  • 网站 工作室 建设 方案网站建设时间安排
  • 郑州做食用菌配送的网站怎样提高网站点击率
  • 外贸网站制作策划wordpress怎么登
  • 做商城网站需要备案什么域名抖音代运营话术模板
  • 源码屋整站源码首页官网
  • 网站毕业设计答辩问题无代码开发原理
  • 首钢建设集团山东公司网站网络推广有前途吗
  • 无锡市建设招标网站梁溪区住房和城乡建设局网站
  • aspx 网站开发工具网络营销产品的整体概念
  • 如何架设php网站php网站开发淮安招聘
  • 网站设计一年费用人力资源公司网站模板