stm32简单编程,向USART1发送字符串。
intmain(void){char*str;str="abcdefg";/*初始化*/RCC_Configuration();GPIO_Configuration();...
int main(void)
{
char *str;
str="abcdefg";
/*初始化*/
RCC_Configuration();
GPIO_Configuration();
USART_Configuration();
/*发送数据*/
while(*str)
{
USART_SendData(USART1,*str);
str++;
}
}
串口只接收到最后一个字符‘g’,但是软件仿真时外设USART1的DRR寄存器里有依次显示abcdefg的十六进制的ASCII码 展开
{
char *str;
str="abcdefg";
/*初始化*/
RCC_Configuration();
GPIO_Configuration();
USART_Configuration();
/*发送数据*/
while(*str)
{
USART_SendData(USART1,*str);
str++;
}
}
串口只接收到最后一个字符‘g’,但是软件仿真时外设USART1的DRR寄存器里有依次显示abcdefg的十六进制的ASCII码 展开
4个回答
展开全部
肯定了,你要发完后查询下发送完标志,
就是在
USART_SendData(USART1,*str);//这后面加上下面判断
while(USART_GetFlagStatus(USART1, USART_FLAG_TC));//等待发送完才可以发下一个,不然会被冲掉的。
str++;
就是在
USART_SendData(USART1,*str);//这后面加上下面判断
while(USART_GetFlagStatus(USART1, USART_FLAG_TC));//等待发送完才可以发下一个,不然会被冲掉的。
str++;
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
发的太快了吧,读一下标志位,等待发送完成信号,再发下一个,试试
good luck!
步行者---电子单片机团
good luck!
步行者---电子单片机团
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
关于STM32 F103的USART 发送数据可以看看这篇CSDN的文章:
http://blog.csdn.net/xiaoxiaopengbo/article/details/77472093
http://blog.csdn.net/xiaoxiaopengbo/article/details/77472093
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的程序这样的写法只能是最后i一个字符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询