中级会员
 
- 积分
- 274
- 金钱
- 274
- 注册时间
- 2016-7-15
- 在线时间
- 88 小时
|
10金钱
void USB_To_USART_Send_Data(u8* data_buffer, u8 Nb_bytes)
{
u8 i;
u8 res;
for(i=0;i<Nb_bytes;i++)
{
res=data_buffer[i];
if((USB_USART_RX_STA&0x8000)==0) //½óêÕÎ′íê3é
{
if(USB_USART_RX_STA&0x4000) //½óêÕμ½áË0x0d
{
if(res!=0x0a)USB_USART_RX_STA=0;//½óêÕ′íÎó,ÖØD¿aê¼
else USB_USART_RX_STA|=0x8000; //½óêÕíê3éáË
}else //»1ûêÕμ½0X0D
{
if(res==0x0d)USB_USART_RX_STA|=0x4000;
else
{
USB_USART_RX_BUF[USB_USART_RX_STA&0X3FFF]=res;
USB_USART_RX_STA++;
if(USB_USART_RX_STA>(USB_USART_REC_LEN-1))USB_USART_RX_STA=0;//½óêÕêy¾Y′íÎó,ÖØD¿aê¼½óêÕ
}
}
}
}
}
看了原子哥的串口实验,现在改写他的USB虚拟串口实验,去掉0X0A 0X0D结尾的协议,就是收到一个数字01不打回车换行就能直接控制IO口输出高低电平。我串口的改成功了,可是USB的不知道怎么改。我把判断结尾是不是0X0A 0X0D if语句去掉!我打01 IO口都不听话了!求帮助啊,新手。
|
|