51uwb.cn

 找回密码
 立即注册
查看: 3639|回复: 5
打印 上一主题 下一主题

疑问

[复制链接]

3

主题

22

帖子

63

积分

注册会员

Rank: 2

积分
63
跳转到指定楼层
楼主
发表于 2020-2-11 02:47:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
USART_puts(&rx_buffer[LOCATION_INFO_START_IDX],rx_buffer[LOCATION_INFO_LEN_IDX])这串基站的代码向串口输出什么,有知道的吗

回复

使用道具 举报

73

主题

249

帖子

7065

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
7065
沙发
发表于 2020-2-11 14:32:58 | 只看该作者
USART_puts(&rx_buffer[LOCATION_INFO_START_IDX],rx_buffer[LOCATION_INFO_LEN_IDX]);

void USART_puts(uint8_t *s,uint8_t len)
第一个参数是指针,第二个是数据长度。

rx_buffer是模块通过无线收到的数据包。实际数据包是下面的东西,结合起来看
  1. angle_msg[LOCATION_FLAG_IDX] = 1;

  2.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = 'm';
  3.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = 'r';

  4.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = 0x02;
  5.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = TAG_ID;//TAG ID

  6.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = (uint8)(framenum&0xFF);
  7.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = (uint8)((framenum>>8)&0xFF);

  8.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = (uint8)((distance1/10)&0xFF);
  9.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = (uint8)((distance1/10 >>8)&0xFF);

  10.         angle_msg[LOCATION_INFO_START_IDX + (len++)] =  (uint8)((distance2/10)&0xFF);
  11.         angle_msg[LOCATION_INFO_START_IDX + (len++)] =  (uint8)((distance2/10 >>8)&0xFF);
  12.         angle_msg[LOCATION_INFO_START_IDX + (len++)] =  (uint8)((distance3/10)&0xFF);
  13.         angle_msg[LOCATION_INFO_START_IDX + (len++)] =  (uint8)((distance3/10 >>8)&0xFF);
  14.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = (uint8)((distance1/10)&0xFF);
  15.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = (uint8)((distance1/10 >>8)&0xFF);
  16.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = '\n';
  17.         angle_msg[LOCATION_INFO_START_IDX + (len++)] = '\r';
复制代码


回复

使用道具 举报

3

主题

22

帖子

63

积分

注册会员

Rank: 2

积分
63
板凳
 楼主| 发表于 2020-2-16 03:38:11 | 只看该作者
#define Trigger1_GPIO_PORT                                 GPIOB
#define Trigger1_GPIO_CLK                                 RCC_APB2Periph_GPIOB
#define Trigger1                                                                        GPIO_Pin_9
#define Trigger2_GPIO_PORT                                 GPIOB
#define Trigger2_GPIO_CLK                                 RCC_APB2Periph_GPIOB
#define Trigger2                                                                        GPIO_Pin_10
#define High(p,i)                                                                        {p->BSRR=i}
#define LOW(p,i)                                                                        {p->BRR=i}
#define On1                                                                                         High(Trigger1_GPIO_PORT,Trigger1)
#define Off1                                                                                        LOW(Trigger1_GPIO_PORT,Trigger1)
#define On2                                                                                         High(Trigger2_GPIO_PORT,Trigger2)
#define Off2                                                                                        LOW(Trigger2_GPIO_PORT,Trigger2)
#define initialize                                                                Off1;Off2;SOFT_DELAY
#define serious injury                                                On1;SOFT_DELAY;Off1
#define slight injury                                                        On2;SOFT_DELAY;Off2

void Trigger_Config(void)
{                GPIO_InitTypeDef GPIO_InitStructure;
                RCC_APB2PeriphClockCmd(Trigger1_GPIO_CLK |Trigger2_GPIO_CLK,ENABLE);
                GPIO_InitStructure.GPIO_Pin=Trigger1|Trigger2;
                GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
                GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
                GPIO_Init(Trigger1_GPIO_PORT,&GPIO_InitStructure);
               GPIO_Init(Trigger2_GPIO_PORT,&GPIO_InitStructure);
                GPIO_RsetBits(Trigger1_GPIO_PORT,Trigger1);
                GPIO_RsetBits(Trigger2_GPIO_PORT,Trigger2);
               
                }
回复

使用道具 举报

3

主题

22

帖子

63

积分

注册会员

Rank: 2

积分
63
地板
 楼主| 发表于 2020-2-16 03:38:44 | 只看该作者
void Trigger_Config(void)
{                GPIO_InitTypeDef GPIO_InitStructure;
                 RCC_APB2PeriphClockCmd(Trigger1_GPIO_CLK |Trigger2_GPIO_CLK,ENABLE);
                 GPIO_InitStructure.GPIO_Pin=Trigger1|Trigger2;
                 GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
                 GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
                 GPIO_Init(Trigger1_GPIO_PORT,&GPIO_InitStructure);
                GPIO_Init(Trigger2_GPIO_PORT,&GPIO_InitStructure);
                 GPIO_RsetBits(Trigger1_GPIO_PORT,Trigger1);
                 GPIO_RsetBits(Trigger2_GPIO_PORT,Trigger2);
                 
                 }一直报错
回复

使用道具 举报

3

主题

22

帖子

63

积分

注册会员

Rank: 2

积分
63
5#
 楼主| 发表于 2020-2-16 03:39:47 | 只看该作者
".\STM3210E-EVAL\STM3210E-EVAL.axf" - 1 Error(s), 21 Warning(s).
回复

使用道具 举报

3

主题

22

帖子

63

积分

注册会员

Rank: 2

积分
63
6#
 楼主| 发表于 2020-2-16 03:50:53 | 只看该作者
找到原因了,我把所有关于printf函数的语句都注释掉了
回复

使用道具 举报

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

本版积分规则

bphero Inc.  

GMT+8, 2024-11-23 15:23 , Processed in 0.012412 second(s), 4 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

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