| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> STM32(1)跑马灯 -> 正文阅读 |
|
[嵌入式]STM32(1)跑马灯 |
建立LED初始化头文件建立头文件有点像C++中,头文件中可以添加宏定义以及函数原型,然后在.c文件中写入函数定义 “sys.h”“sys.h"这个头文件中#include “stm32f10x.h”,所以自己写的文件不需要再引用"stm32f10x.h” PBout(5)PBout(5)就是sys文件中的宏定义内容:#define PCout(n) BIT_ADDR(GPIOC_ODR_Addr,n) //输出 led.h 代码
建立LED初始化程序GPIO每个IO口都有7个寄存器来控制: GPIO的八种工作模式GPIO_Mode_AIN 模拟输入 1、上拉输入、下拉输入可以用来检测外部信号,例如,按键等; GPIO_InitTypeDefGPIO_InitTypeDef是一个结构体类型,具体定义如下
a)GPIO_pins_define 中的所有可选择的值,代表各个引脚。
b)GPIO_mode_define 中的所有可选择的值,代表可选的GPIO配置模式。
c)GPIO_pull_define 中的所有可选择的值,配置激活状态。通过设置GPIO中的PUPDR寄存器的值。
d)GPIO_speed_define 中的所有可选择的值,配置输出最大功率。通过设置GPIO中的OSPEEDR寄存器的值。
嵌入式开发(学习笔记:跑马灯)GPIO_InitTypeDef+SysTick_Type HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)其实就是将对应的字节输入到对应的寄存器中来配置IO口 HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinSate)通过设置ODR寄存器的值来控制IO口的输出状态。ODR是一个端口输出数据寄存器,该寄存器可读写,从该寄存器读出来的数据可以用于判断当前IO口的输出状态。而向该寄存器写数据,则可以控制某个IO口的输出电平。 HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)读取某个IO口的状态。读的是IDR寄存器,该寄存器是端口输入数据寄存器,该寄存器是只读寄存器。 __HAL_RCC_GPIOB_CLK_ENABLE()在配置STM32外设时,任何时候都要先使能该外设的时钟。 led.c 代码
main代码
|
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 21:48:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |