1 前言
本文基于ST的STM32F767ZI NUCLEO144开发板,结合CubeIDE的插件CubeMX配置生成代码点亮板载的LED,点亮可谓是单片机开发中的hello world,非常简单;
1。
LED是正向导通,反向截止的,它在电路设计中的符号如下图所示;
因此这里,有几点简单介绍一下:
① 通常接电源正极;
② 通常接地;
确保流过电流在5mA-10mA;
文章写到,如何快速构建CubeIDE环境,另外我还整理了官方的资料,打开en.DM00244518.pdf,NUCLEO144的板载资源如下图所示;
可以看到这里有三个用户LED,下面就结合CubeIDE中的CubeMX插件配置生成相应的代码;
2.3 电路分析
解压文件en.nucleo_144pins_sch.zip,打开原理图的pdf文件MB1137.pdf;可以看到,Blue LED和Red LED,具体如下图所示;
Green LED如下所示;
根据虚短和虚断,Vout=200K10K+200KVinV_{out} = cfrac{200K}{10K+200K}V_{in}Vout=10K+200K200KVin ;感觉像是电压跟随器,那Vout=VinV_{out} = V_{in}Vout=Vin, 电路分析水平有点抠脚了;
Pin | LED | Mode |
---|---|---|
PB14 | RED | PP |
PB7 | BLUE | PP |
PB0 | GREEN | PP |
PP为推挽输出;
3 CubeMX配置
打开CubeIDE,
3.1 SYS 配置
NUCLEO144板载一个ST-LINKV2,下载和调试程序的时候下面会用SWD模式,所以这里SYS的Debug选择Serial Wire,具体如下图所示;
3.2 GPIO 选择
第一步:
在Pinout view的芯片试图上找到所需要的Pin,本文使用了 PB14,PB7,PB0,图中找到PB7,并鼠标点击并弹出菜单;
第二步:
选择GPIO的模式为GPIO_Output;
具体如下图所示;
3.3 GPIO 配置
选择了三个Pin,分别为PB14,PB7,PB0,全都配置为:
GPIO output level:初始化完成之后输出的电平状态为高;
GPIO mode:输出模式为推挽输出;
上拉和下拉模式:这里暂不配置,没有影响;
完成后如下图所示;
4 程序生成
最终生成了配置代码如下;
static void MX_GPIO_Init(void){ GPIO_InitTypeDef GPIO_InitStruct = {0}; /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOB_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0|GPIO_PIN_14|GPIO_PIN_7, GPIO_PIN_SET); /*Configure GPIO pins : PB0 PB14 PB7 */ GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_14|GPIO_PIN_7; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);}12345678910111213141516171819
5 程序下载
将NUCLEO144的CN4和CN6的跳帽设置为如下图的状态,这样就使用了板载的STLINK给板载的MCU下载固件;
进入调试模式并开始运行,终于点亮了,我手舞足蹈起来,表情无比激动(浮夸的演技
上一篇:STM32——GPIO设置:快速点亮第一个LED灯
下一篇:STM32 (3) GPIO口功能讲解 GPIO 口输入输出 寄存器配置
推荐阅读最新更新时间:2024-11-19 04:47
设计资源 培训 开发板 精华推荐
- 电位器
- 光源控制器
- 使用 ROHM Semiconductor 的 BU4928 的参考设计
- LT1952EGN 36V 至 72V 输入、12V/20A 半稳压总线转换器的典型应用电路
- AD8180-EB,用于视频路由和多路复用系统的单个 2:1 模拟多路复用器的评估板
- ADR423 超精密、低噪声、3.00 Vout XFET 电压基准作为可编程电流源的典型应用
- HIFI音响滤波线性双电源
- AD9576/PCBZ,用于评估 AD9576 时钟乘法器异步时钟发生器的评估板
- 用于电池充电指示器的 NCP300LSN46T1 4.6V 电压检测器的典型应用
- EV-AD74412RSDZ,用于评估 AD74412R 四通道、软件可配置输入/输出的评估套件
- 有奖征文:邀一线汽车VCU/MCU开发工程师,分享开发经验、难题、成长之路等
- 齐聚一堂 恩智浦教大家玩转新一代物联网应用 观看视频答题有好礼!
- Vicor可最大限度提高AI、HPC和数据计算性能的电源解决方案
- 有奖直播:如何利用瑞萨电子的GreenPAK™平台优化混合信号电路设计
- TI 高精度实验室信号链精品课大作战——你学习我送礼!
- 邀您共赴一场技术盛宴! 2022英特尔® FPGA中国技术周 ——加速,让创新有迹可循
- 看MPLAB® Harmony集成软件框架之学习篇 你来评论我送礼!
- PI 有奖直播:在无需DC-DC变换器的多路输出电源设计中实现高效率和出色的输出调整率
- TE有奖直播:未来感知 由我先知-传感器在物联网中的最新应用