RoboMaster开发板C型学习笔记

https://github.com/RoboMaster/Development-Board-C-Examples

keil配置

点击5工程设置,进行工程相关设置,选择Output,其中Create HEX file为是否生成HEX文件,Browse Information为是否增加浏览信息,选择是,可以使用鼠标右键点击函数进行跳转操作,但会增加编译时长;
在这里插入图片描述
点击C/C++,其中1方框为工程宏定义设置,可在此添加宏定义;2方框为头文件引用目录,对于项目自行建立的h文件需要在此处进行目录录入;
在这里插入图片描述

keil调试模式

watch窗口可以参看变量的数值大小
可以在需要参看的变量点击右键,将其加入watch窗口
在这里插入图片描述
如果数据在程序运行中无变化,除了数据本身没有发生变化的场合,还可能由于未开启PeriodicWindows Update。
在这里插入图片描述

HAL_GPIO_WritePin函数

在这里插入图片描述
在这里插入图片描述

HAL_Delay函数

在这里插入图片描述

定时器

预分频寄存器TIMx_PSC
46 © 2020 大疆创新 版权所有
计数器寄存器TIMx_CNT
自动重装载寄存器TIMx_ARR
时钟源处的时钟信号经过预分频寄存器,按照预分频寄存器内部的值进行分频。比如时钟源的频率为16MHz,而预分频寄存器中设置的值为16:1,那么通过预分频后进入定时器的时钟频率就下降到了1MHz。
在已经分频后的定时器时钟驱使下,TIMx_CNT根据该时钟的频率向上计数,直到TIMx_CNT的值增长到与设定的自动重装载寄存器TIMx_ARR相等时,TIMx_CNT被清空,并重新从0开始向上计数,TIMx_CNT增长到TIMx_ARR中的值后被清空时产生一个定时中断触发信号。综上定时器触发中断的时间是由设定的TIMx_PSC中的分频比和TIMx_ARR中的自动重装载值共同决定的。
定时器是stm32中非常重要的外设。在大多数应用场景中,部分任务需要周期性的执行,比如上一讲中提到的LED闪烁,这个功能就可以依靠定时器来实现,此外stm32的定时器还能够提供PWM输出,输入捕获,输出比较等多种功能。

对信号处理方式

在STM32中,对信号的处理可以分为轮询方式和中断方式,轮询方式就是不断去访问一个信号的端口,看看有没有信号进入,有则进行处理,中断方式则是当输入产生的时候,产生一个触发信号告诉STM32有输入信号进入,需要进行处理。

定时器回调函数

在这里插入图片描述

PWM

p63 4.4.2

HAL_TIM_Base_Start(&htim1);                   //定时器开始
HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1);	  //开启PWM功能

while(1)
{
	__HAL_TIM_SetCompare(&htim1, TIM_CHANNEL_1, 50);
}

HAL_GPIO_ReadPin函数

在这里插入图片描述

  • 11
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值