一、選擇型號為stm32f103ve的微控制器
二、基本配置
三、配置LED燈相關的GPIO
鼠標點擊PE0~PE7引腳選擇GPIO_Output
四、配置定時器
五、生成代碼
在main.c文件中插入使能TIM6中斷的代碼
/* USER CODE BEGIN 2 */ if(HAL_TIM_Base_Start_IT(&htim6)!=HAL_OK) { Error_Handler(); } /* USER CODE END 2 */
在main.c文件中插入TIM6的中斷服務函數
/* USER CODE BEGIN PV */ uint16_t num = 0x100; //0x100H=0001 0000 0000B設置亮燈的引腳 /* USER CODE END PV */
/* USER CODE BEGIN 4 */
//添加中斷服務回調函數
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { if(TIM6 == htim->Instance)//判斷是否為TIM6產生的中斷 { num = num>>1; //通過寄存器的移位來改變燈的變化 if(num == 0) num = 0x80; //0x80H=1000 0000B 一輪結束 HAL_GPIO_WritePin(GPIOE,0xff,GPIO_PIN_SET); //所有引腳為低電平 HAL_GPIO_WritePin(GPIOE,num,GPIO_PIN_RESET); //對應的燈點亮
//HAL_GPIO_WritePin(芯片型號,引腳,高低電平)
} } /* USER CODE END 4 */