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

重庆做网站价格阳江吧

重庆做网站价格,阳江吧,百度平台营销宝典,广西网站建设教程文章目录 一、功能需求分析二、Proteus绘制电路原理图三、STMCubeMX 配置引脚及模式#xff0c;生成代码四、MDK打开生成项目#xff0c;编写HAL库的按键检测代码五、运行仿真程序#xff0c;调试代码 一、功能需求分析 在完成GPIO输入输出案例之后#xff0c;开始新的功能… 文章目录 一、功能需求分析二、Proteus绘制电路原理图三、STMCubeMX 配置引脚及模式生成代码四、MDK打开生成项目编写HAL库的按键检测代码五、运行仿真程序调试代码 一、功能需求分析 在完成GPIO输入输出案例之后开始新的功能模块的学习。同样是实现按键输入检测的功能在GPIO的案例中我们使用的是查询扫描方式这种方式有一个缺点浪费CPU算力功能代码是放在while循环中一直在循环检测。这一次我们介绍中断扫描方式完成按键状态检测只有在开关按键状态变换的时候才会触发中断通知CPU处理中断事件执行中断服务。 需求分析 按键检测使用中断扫描方式连线方式PA0-LED0PA1-LED1PA4-KEY0PA6-KEY1按键中断模式设置为上升沿触发KEY0控制LED0KEY1控制LED1每次开关状态变化使LED状态反转。 二、Proteus绘制电路原理图 Proteus绘制需要对基本元器件的名称有一定了解如下方的发光二极管LED、电阻RES可以在网上查找对应的元器件名称列表方便以后绘制。 绘制电路原理图的步骤创建画布》芯片选型及放置》元器件选型及放置》连接电路》修改元器件参数》仿真运行。 下图为所需元器件清单。 下图为电路原理图。 三、STMCubeMX 配置引脚及模式生成代码 接下来根据原理图绘制创建CubeMX项目配置引脚及工作模式生成MDK项目代码。 创建项目选择Pinout》system core》GPIO 点击PA0选择GPIO_Output推挽输出模式同理配置PA1。 点击PA4选择GPIO_EXTI4同理配置PA6。 选择Pinout》system core》NVIC 在配置中勾选EXTI4和【95】的中断Enabled选项并设置各自的抢占式优先级为3和2。 优先级值越小优先级越高抢占式优先级可以实现中断嵌套也就是说在中断执行中断服务时如果中断【】触发了中断会暂停中断执行中断【】。 在clock单元配置系统时钟为72MHz。 在Project单元填写项目名称、保存路径、IDE和版本。 在 code generator中配置添加库的方式为所需库用户代码在每次项目重新生成时保留。配置完成通过以上步骤完成了2个LED引脚的模式配置及时钟配置接下来点击GENERATE生成项目代码。 找到生成路径可以看到项目目录文件。 四、MDK打开生成项目编写HAL库的按键检测代码 从上面步骤中生成了MDK项目。 在MDK-ARM目录中找到项目快捷方式打开项目。 在gpio.c文件中找到__weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)函数复制到main.c中。 __weak 为弱函数如果项目中有不带__weak的同名函数被调用时则执行同名函数如果只有__weak函数被调用时则其被执行。 拷贝后放在注释为用户代码区域当中断触发则此函数被调用。 callback函数全部代码 这里出现了新的GPIO函数引脚状态切换有两个参数GPIO组名和引脚名。 还有一个消除中断挂起位的宏调用中断触发后需要用户手动清除挂起位。 /* USER CODE BEGIN 4 */ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {//PA4中断服务if(GPIO_Pin GPIO_PIN_4)HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_0);//PA6中断服务if(GPIO_Pin GPIO_PIN_6)HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_1);__HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin); }在项目中勾选生成HEX选项HEX文件就是MDK编译生成的十六进制文件作为烧录到开发板的源程序文件使用当然这里我们使用仿真在Proteus中加载HEX即可。 点击编译程序生成HEX文件。在编译窗口显示生成了以下信息则编译成功保证 0 errors再进行下一步。 五、运行仿真程序调试代码 在Proteus中双击芯片选择加载程序路径。 04_NVIC\MDK\NVIC\MDK-ARM 上面是我的项目的HEX文件目录路径。 点击仿真按钮运行程序查看功能执行结果。 可以看到两个黄色LED随着开光闭合断开改变切换点亮熄灭状态功能正常。 代码链接STM32-04基于HAL库CubeMXMDKProteus中断案例按键中断扫描 至此我们已经完成了STM32的开发环境搭建以及测试案例的编写后面会给大家介绍更多的功能。
http://www.hkea.cn/news/14329239/

相关文章:

  • wordpress织梦哪个好百度seo技术优化
  • 北京南站到北京西站地铁怎么走南阳网站建设价格
  • 英文商城网站模板能发锚文本的网站
  • python flask网站开发学习做网站
  • 中卫网站推广公司wordpress博客增加音乐页面
  • 定制网站建设公司电话做毕设的网站
  • 鹤城建设集团网站安顺住房和城乡建设部网站
  • 找人做网站会不会被偷建设银行网站怎么登陆
  • 郑州中色十二冶金建设有限公司网站常用的设计师网站
  • 网站功能模块有哪些个人网站怎么做打赏
  • 育儿哪个网站做的好做网站有兼职的吗
  • 网站建设预算表河北提供网站制作公司电话
  • 北京最好的网站建设网页设计师在什么公司工作
  • 做个网站多少钱网页设计图片排版模板
  • asp.net 4.0网站开发与项目实战(全程实录)(附光盘)9i网站建设
  • 中国建设网站的公司wordpress 啊树
  • h5模板网站模板网站建设外包 排名
  • 在线销售型的网站王也扮演者
  • 为什么选择做游戏网站南昌h5建站
  • 福州网站建设搭建昆明装修公司
  • 有没有在家做的兼职网站制作人韩剧在线观看免费高清
  • 怎么做网站卖车深圳画册设计公司排行榜
  • 百度视频免费高清网站手机网页视频下载神器
  • 聊城网站制作公司网站建设的详细步骤
  • 安徽教育机构网站建设网页设计与制作课程设计报告小结
  • 汽车网站开发流程小马厂网站建设
  • 西樵网站建设it网站制作策划
  • 怎么加快登录网站速度库尔勒网站
  • 网站结构设计怎么写做直播网站用什么语言
  • 如何做好网站推广江苏建设信息电子证书