县工商局 网站建设,搜索引擎优化文献,免费ppypp网站,烟台网站建设策划方案任务#xff1a;检测中断到来时#xff0c;让LED灯状态取反#xff0c;并且在串口工具上打印一句话例如#xff1a;当按键1按下之后#xff0c;让LED1状态取反#xff0c;并打印“LED1 down”当按键2按下之后#xff0c;让LED2状态取反#xff0c;并打印“LED2 down”当…任务 检测中断到来时让LED灯状态取反并且在串口工具上打印一句话 例如当按键1按下之后让LED1状态取反并打印“LED1 down” 当按键2按下之后让LED2状态取反并打印“LED2 down” 当按键3按下之后让LED3状态取反并打印“LED3 down” 火焰传感器/人体红外/光电开关实验要求如上 检测中断到来时让发光二极管灯状态取反并且在串口工具上打印一句话 例如:当按键1按下之后让LED 1状态取反并打印“LED 1向下” 当按键2按下之后让LED 2状态取反并打印“LED 2向下” 当按键3按下之后让LED 3状态取反并打印“LED 3 down” 火焰传感器/人体红外/光电开关实验要求如上gpio.c相关代码void HAL_GPIO_EXTI_Falling_Callback(uint16_t GPIO_Pin)
{switch(GPIO_Pin){//KEY1---LED1case GPIO_PIN_9:HAL_GPIO_TogglePin(GPIOE,GPIO_PIN_8);printf(LED1 down\n);break;//KEY2---LED2case GPIO_PIN_7:HAL_GPIO_TogglePin(GPIOF,GPIO_PIN_10);printf(LED2 down\n);break;//KEY3---LED3case GPIO_PIN_8:HAL_GPIO_TogglePin(GPIOE,GPIO_PIN_10);printf(LED3 down\n);break;}
}void HAL_GPIO_EXTI_Rising_Callback(uint16_t GPIO_Pin)
{switch(GPIO_Pin){//PE15---LED1case GPIO_PIN_15:HAL_GPIO_TogglePin(GPIOE,GPIO_PIN_8);break;//PF5---LED2case GPIO_PIN_5:HAL_GPIO_TogglePin(GPIOF,GPIO_PIN_10);break;//PF12---LED3case GPIO_PIN_12:HAL_GPIO_TogglePin(GPIOE,GPIO_PIN_10);break;}
}usart.c相关代码//实现数据发送一个字符
int fputc(int ch,FILE*stream)
{//判断发送数据寄存器是否为空 ISR[7]while(!(huart4.Instance-ISR (0x1 7)));//将要发送的字符放入到发送寄存器中huart4.Instance-TDR ch;//判断是否为\nif(ch \n){//判断发送数据寄存器是否为空 ISR[7]while(!(huart4.Instance-ISR (0x1 7)));huart4.Instance-TDR \r;}return ch;
}运行结果