一.配置工程项目
1.创建项目
点击ACCEE TO MCU SELECTOR
2.环境配置
(1)配置RCC和SYS
1.点击System Cor,选择RCC,在右侧弹出的菜单栏中选Crystal/Ceramic Resonator
2.选择调试接口,点System Cor,选择SYS。,在右侧弹出的菜单栏中选Serial Wire:
(2)配置端口
(3)配置定时器
修改相应参数:
(4)设置中断
(5)设置时钟
(6)生成项目
二、关于keil代码编写
1.定时器启动代码
打开keil,打开刚创建的项目文件,打开main.c文件,将以下代码添加进main函数中:
HAL_TIM_Base_Start_IT(&htim2);
HAL_TIM_Base_Start_IT(&htim3);
2.输出目标代码
本次实验要求串口输出hello windows!所以将以下代码添加到main函数之前:
`uint8_t hello[20]=“hello windows!\r\n”;
3.在main.c文件中添加代码
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
static uint32_t time_cnt =0;
static uint32_t time_cnt3 =0;
if(htim->Instance == TIM2)
{
if(++time_cnt >= 400)
{
time_cnt =0;
HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_5);
}
}
if(htim->Instance == TIM3)
{
if(++time_cnt3 >= 1000)
{
time_cnt3 =0;
HAL_UART_Transmit(&huart1,hello,20,100000);
}
}
}
三、电路连接及烧录
1.电路连接
LED长脚——3V3
LED短脚——PA6
TXD——A10
RXD——A9
GND——GND
3V3——3V3
2.烧录运行
四、总结
在此次通过定时器Timer方式实现串口发送“hello windows!”,同时让LED灯周期性闪烁的实验中,认识到了定时器的相关原理和作用,同时在电路连接时,需要注意连线的问题,不然实验可能失败。