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

点亮第一盏LED灯 5): stm32CubeMX生成Keil代码

嵌入式入门,继续点亮第一盏LED灯,前面文章已经配置了GPIO引脚和时钟,那么基本上stm32CubeMX的配置就完成了,还有一点就是可以对PC13这个引脚起个别名,
在这里插入图片描述
这里起的别名是 LED_PC13,还有注意地方就是GPIO mode的选项是 Output push pull (推挽输出),这个是比较常用的输出模式,GPIO的输出输入模式也是很重要的知识点,这里先记住这个推挽输出。

到这里,stm32CubeMX所有的配置已经完成,接下来就是生成Keil代码。

点击 Project Manager 这个标签页
在这里插入图片描述
设置项目名,项目保存的位置,重点是红色箭头指向的这个配置,这里的MDK-ARM指的就是Keil,

然后点击 Code Generator
在这里插入图片描述
按照图片选中选项就可以了,这两个选项指的是复制所需的库文件,以及.c文件和.h文件要分开生成。

配置完成之后,点击 生成代码
在这里插入图片描述
然后stm32CubeMX会自动打开Keil,可以看到,已经将文件目录和代码文件自动生成好了
在这里插入图片描述
认识一下这里的文件,startup_这个文件是启动文件,是最先执行的文件,main.c是入口文件,由于项目只配置了PC13这个引脚,所以只有gpio.c这个文件

接下来就是写业务代码,这个项目的业务代码很简单,就是PC13这个引脚输出低电平。

在这里插入图片描述
业务代码写在哪里?在main.c这个文件,找到 while(1){} 这部分,业务代码就写在 while 函数里面。

stm32的代码开发有3种方式,1是使用标准库,2是使用HAL库,3是使用寄存器。初学者先使用HAL库,HAL库就是封装好的函数,直接调用就可以了,

在这里插入图片描述
使用的HAL函数就是 HAL_GPIO_WritePin(),就是使用这个函数将PC13这个引脚输出低电平。

 HAL_GPIO_WritePin(GPIOC, LED_PC13_Pin, GPIO_PIN_RESET)

就这么一句代码就完成了,HAL_GPIO_WritePin有3个参数,参数1是引脚端口,例如PC13引脚端口就是C,第2个参数就是引脚名称,还记得前面文章将PC13引脚设置了别名LED_PC13,第3个参数就是引脚的电平状态, GPIO_PIN_RESET是常年,表示低电平

ok,代码写完了,接下来就是烧录到stm32板子。

http://www.lryc.cn/news/437844.html

相关文章:

  • ollama语言大模型部署使用
  • redis 基本数据类型—string类型
  • Git 使用教程:从入门到精通
  • ES查询的一些优化方式
  • 计算左边(比自己小的元素)的最长距离
  • 【C++算法】二分查找
  • 红日靶场通关
  • 用Python爬虫制作一个简易翻译器
  • Shader Graph Create Node
  • 共模干扰的形成和滤除
  • (计算机网络)运输层
  • 基于深度学习的信号滤波:创新技术与应用挑战
  • MFC工控项目实例之十一板卡测试信号输入界面
  • sql中索引查看是否生效
  • SpringBoot常见面试题
  • springboot优雅停机无法关闭进程,kill无法停止springboot必须kill -9,springboot线程池使用
  • 【系统架构设计师-2015年真题】案例分析-答案及详解
  • MongoDB设置系统服务启动教程
  • mysql学习教程,从入门到精通,MySQL WHERE 子句(10)
  • 设计模式】Listener模式和Visitor模式的区别
  • 基于事件序列的数据获取
  • 太速科技-基于XC7Z100+AD9361的双收双发无线电射频板卡
  • 探索UWB技术的独特优势:实现高精度定位
  • 软件安装攻略:Sublime Text 下载安装和使用教程
  • ip地址为什么要轮换
  • C++ 继承【一篇让你学会继承】
  • DeviceNet网关HT3S-DNS-MDN读取七星华创CS310空气流量计数据应用案例
  • Smartbi体验中心新增系列Demo,用户体验更丰富
  • Kubernetes 与 springboot集成
  • 以太网传输出现不分包