STM32学习日记 day1

STM32学习日记 day1

MDK 和Keil5 安装

B站有很多教程都有安装包和详细的讲解

CubeMX 安装

生成STM32CubeMX的特性如下:
1.直观的选择 STM32 微控制器。
2.微控制器图形化配置:
自动处理引脚冲突
动态设置确定的时钟树
可以动态确定参数设置的外围和中间件模式和初始化
功耗预测
3.C代码工程生成器覆盖了STM32 微控制器初始化编译软件,如IAR、KEIL、GCC。
4.可独立使用或作为 Eclipse 插件使用。

  • 先安装 jre
    官网下载地址:[http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html]
  • 再安装CubeMX
    官网下载地址:[http://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.html]

GPIO输出的HAL库函数

**HAL_GPI0_WritePin(GPI0_TypeDef *GPIOx, uint16_t GPI0_Pin, GPIO_PinState PinState); **
*void HAL GPI0_TogglePin(GPI0_TypeDef GPIOx, uint16_t GPI0_Pin);

void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState);
//函数功能:向特定管脚输出高低电平

GPIOX: GPIOA、GPIOB、 GPIOC、 GPIOD、GPIOE、GPIOF、GPIOG
GPIO_Pin: GPIO_PIN_0、 GPIO_PIN_1… GPIO_PIN_15
PinState: GPIO_PIN_SET == 写1 ==、GPIO_PIN_RESET == 写0 ==

//例:向PD2管脚写0
HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2, GPIO_PIN_RESET);
void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);
//函数功能:管脚电平翻转。原来是0变成1,原来是1变成0
//例:让PC12管脚状态翻转
HAL_GPIO_ TogglePin(GPIOC, GPIO_PIN_12);

HAL库延时函数

void HAL_Delay(uint32_t Delay);void HAL Delay(uint32_t Delay);
//函数功能:毫秒级延时函数
// 例:延时500ms
HAL _ Delay(500); 
//基本无误差,72MHz最大延时约71.58分钟
// us延时函数
void delay_us(uint32_t us)
{
	uint16_t i=0; 
		while(us--){
			i=10//72MHz的值,根据频率自己调整
			while(i--);
		}
 }

使用protues仿真STM32

1. 建议

其实不建议使用Protues仿真STM32,因为效果实在不如人意了,protues仿真51还行,32仿真的话问题还蛮多的,对于初学者的学习帮助不大,都找不到是代码的问题还是仿真的问题,还是期待仿真软件再发展发展吧。

2. 注意

  • 频率配置
    每次的写代码时用的芯片的频率要设置
  • VDD和VSS配置
    STM32芯片仿真时要先配置VDD和VSS,不然会报错
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值