我的串口中断是这样写的
void USART1_IRQHandler(void) //串口中断函数
{
u8 Res;
if(USART_GetiTStatus(USART1, USART_IT_RXNE) != RESET) //接受中断
{
USART_ClearITPendingBit(USART1,USART_IT_RXNE);
Res =USART_ReceiveData(USART1);//(USART1->DR); //读取接收到的数据
Bluetooth_data=Res; //将接收到的数据 Bluetooth_data
}
}
主函数关键部分是这样
LED0=0;
LED1=0;
while(1)
{
switch(Bluetooth_data)
{
case 0x01: LED0=!LED0;
break;
case 0x02: LED1=!LED1;
break;
case 0x03: LED0=!LED0;LED1=!LED1;
break;
}
}
}
当我用手机发送命令的时候,开发板上的LED没有任何 反应。这是为什么呢,是我的中断函数哪出错了吗?
-
-
蓝牙控制LED.rar
下载积分: 积分 -1 分
271.72 KB, 下载次数: 55, 下载积分: 积分 -1 分
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>