野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12391|回复: 1

野火官方串口接发例程发送数组错位问题

[复制链接]
发表于 2018-11-6 09:32:51 | 显示全部楼层 |阅读模式
#include "stm32f10x.h"
#include "bsp_usart.h"

uint8_t First[6]={0x7E,0x04,0x03,0x00,0X01,0xEF};//第一曲指令
uint8_t Next[]={0x7E,0x02,0x01,0xEF};        //下一曲指令
uint8_t Add[]={0x7E ,0x02, 0x04, 0xEF};     //音量+指令
uint8_t Sub[]={0x7E ,0x02 ,0x05, 0xEF};         //音量减指令

/**
  * @brief  主函数
  * @param  无
  * @retval 无
  */
int main(void)
{
  USART_Config();
/* 发送一个字符串 */
//Usart_SendString( DEBUG_USARTx,"这是一个串口中断接收回显实验\n");
//printf("欢迎使用秉火STM32开发板\n\n\n\n");

Usart_SendArray( DEBUG_USARTx, Next,4);
  
while(1)
{
  
}
}

例程如上所示,正常发送的数组顺序为0x7E,0x02,0x01,0xEF   但电脑串口接收到的数组顺序为0xEF,0x02,0x01,0x7E,,单步调试时发现前三个数都是正常发送接收的,第四个发送的数会丢掉,然后第二次发送的时候和第一个数一起发送出来,串口程序为野火官方例程,各位大佬求教

TIM截图20181106092540.png
回复

使用道具 举报

 楼主| 发表于 2018-11-6 09:38:04 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-12-6 13:14 , Processed in 0.049355 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表