金牌会员
 
- 积分
- 1635
- 金钱
- 1635
- 注册时间
- 2012-8-28
- 在线时间
- 71 小时
|
1金钱
串口调试时 波特率小于43传输有问题下位机最小波特率可以0.53648
但上位机接收貌似有问题,只能大于46的波特率
原子哥,可以共享下XCOM的上位机源码吗?
另外我下位机TXD是用io脚模拟的。
bit_delay=1000000/bound;
//发送函数
void USART_TX(u8 TX_BUF)//普通io模拟usart TX脚
{
u8 i;//数据长度
//起始位触发
TX_pin=0;//TX脚电平
delay_us(bit_delay);
//8个数据位
for(i=0;i<8;i++)
{
if(TX_BUF&0X01)//低位先发
{
TX_pin=1;
delay_us(bit_delay);
}
else
{
TX_pin=0;
delay_us(bit_delay);
}
TX_BUF=TX_BUF>>1;//取下一个
}
//发送完成
TX_pin=1;
delay_us(bit_delay);//1个停止位
// delay_us(bit_delay*1.5);//1.5倍停止位
// delay_us(bit_delay*2);//2倍停止位
}
//重定义fputc函数
int fputc(int ch, FILE *f)
{
// while((USART1->SR&0X40)==0);//循环发送,直到发送完毕
// USART1->DR = (u8) ch;
// return ch;
//输出
USART_TX(ch);
return ch;
}
//主函数
while(1)
{
// USART_TX(0x00);
printf("\r\nALIENTEK MiniSTM32开发板 串口实验\r\n");
delay_s(2);
}
|
|