旗舰的开发板,用了GPS和蜂鸣器做配合,按键1启动GPS收集一次数据显示出来自动销毁,按键2启动蜂鸣器,GPS和蜂鸣器驱动都是旗舰板子里面的实例。但是当按下取GPS数据,采集好后,再按蜂鸣器,系统就死了。
void gps_task(void *pdata)
{
USART2_Init(36,38400);
delay_ms(1000);
if(USART2_RX_STA&0X8000) //????????????????
{
u8 upload=0;
u16 i,rxlen;
LCD_ShowString(30,100,200,16,16,"ttttttttttttttrr");
rxlen=USART2_RX_STA&0X7FFF; //?????????¤??
for(i=0;i<rxlen;i++)USART1_TX_BUF=USART2_RX_BUF;
USART2_RX_STA=0; //??????????????
USART1_TX_BUF=0; //×????í???á??·?
GPS_Analysis(&gpsx,(u8*)USART1_TX_BUF);//·???×?·???
Gps_Msg_Show(); //????????
if(upload)printf("\r\n%s\r\n",USART2_TX_BUF);//·?????????????????????1
}
else
{
LCD_ShowString(30,100,200,16,16,"NM12EAbb Data Upload:OFF");
}
OSTaskDel (OS_PRIO_SELF);
}
void beep_task(void *pdata)
{
u8 err;
while(1)
{
OSSemPend(sem_beep,0,&err);
BEEP=1;
delay_ms(10);
BEEP=0;
delay_ms(100);
USART3->CR1|=1<<8; //PE????????
}
}
|