找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4231|回復(fù): 9
打印 上一主題 下一主題
收起左側(cè)

STM32藍(lán)牙小車程序問題 發(fā)送信號(hào)小車不動(dòng)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:810492 發(fā)表于 2021-11-27 17:12 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
300黑幣
藍(lán)牙小車主程序這樣的
能確認(rèn)藍(lán)牙正常能收到信號(hào),電機(jī)正常能啟動(dòng),單片機(jī)是新焊接好的。但是我手機(jī)連接藍(lán)牙以后發(fā)送信號(hào)小車不動(dòng),是什么問題。
  1. void Motor_12_Config(void);
  2.         u8 i;
  3.   u8 b;
  4.          u8 res=0x61;;
  5.         u16 USART1_RX_STA;
  6.       


  7. void chuankou_Init(void)
  8. {
  9.         GPIO_InitTypeDef GPIO_aioegfh;
  10.         USART_InitTypeDef USART_jiiijef;
  11.         NVIC_InitTypeDef NVIC_JIEISJJ;
  12.       

  13.                 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  14.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);

  15.          GPIO_aioegfh.GPIO_Mode=GPIO_Mode_AF_PP;
  16. GPIO_aioegfh.GPIO_Pin=GPIO_Pin_9;
  17. GPIO_aioegfh.GPIO_Speed=GPIO_Speed_50MHz;
  18.         GPIO_Init(GPIOA,&GPIO_aioegfh);                        
  19.          
  20.          GPIO_aioegfh.GPIO_Mode=GPIO_Mode_IN_FLOATING;
  21. GPIO_aioegfh.GPIO_Pin=GPIO_Pin_10;
  22. GPIO_aioegfh.GPIO_Speed=GPIO_Speed_50MHz;
  23.                 GPIO_Init(GPIOA,&GPIO_aioegfh);
  24.       
  25.       
  26. USART_jiiijef.USART_BaudRate=38400;
  27.         USART_jiiijef.USART_HardwareFlowControl=USART_HardwareFlowControl_None;
  28.         USART_jiiijef.USART_Mode=USART_Mode_Tx|USART_Mode_Rx;
  29.         USART_jiiijef.USART_Parity=USART_Parity_No;
  30.         USART_jiiijef.USART_StopBits=USART_StopBits_1;
  31.         USART_jiiijef.USART_WordLength=USART_WordLength_8b;
  32.       
  33.         USART_Init(USART1,&USART_jiiijef);
  34.       
  35.       
  36.         USART_Cmd(USART1,ENABLE);  
  37.       
  38.         USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);  
  39.       
  40.         NVIC_JIEISJJ.NVIC_IRQChannel=USART1_IRQn;
  41.         NVIC_JIEISJJ.NVIC_IRQChannelCmd=ENABLE;
  42.         NVIC_JIEISJJ.NVIC_IRQChannelPreemptionPriority=2;
  43.         NVIC_JIEISJJ.NVIC_IRQChannelSubPriority=2;
  44.         NVIC_Init(&NVIC_JIEISJJ);
  45.       
  46.          
  47. }

  48.       
  49. void USART1_IRQHandler(void)
  50. {

  51.          if(USART_GetITStatus(USART1,USART_IT_RXNE))
  52.          {
  53.                 res= USART_ReceiveData(USART1);  
  54.                  USART_SendData(USART1,res);  
  55.                  
  56.                  
  57.          }
  58.       
  59. }

  60. int main()
  61. {



  62.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  63.         delay_init();                     
  64.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);


  65.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  66.         chuankou_Init();
  67. //        res=USART_ReceiveData(USART1
  68.         Motor_1_STOP();
  69.         Motor_2_STOP();
  70.         Motor_3_STOP();
  71.         Motor_4_STOP();
  72.         switch(res)
  73.         {
  74.                 case'1':Motor_1_PRun();
  75.                   Motor_2_PRun();
  76.                   Motor_3_PRun();
  77.                   Motor_4_PRun();
  78.                  delay_ms(10000);
  79.                            break;
  80.                 case'2':Motor_1_STOP();
  81.                   Motor_2_PRun();
  82.                   Motor_3_STOP();
  83.                   Motor_4_PRun();
  84.                   delay_ms(10000);
  85.                           break;
  86.                 case'3':Motor_1_PRun();
  87.                   Motor_2_STOP();
  88.                   Motor_3_PRun();
  89.                   Motor_4_STOP();
  90.                  delay_ms(10000);
  91.                           break;
  92.                 case'4':Motor_1_NRun();
  93.                   Motor_2_NRun();
  94.                   Motor_3_NRun();
  95.                   Motor_4_NRun();
  96.                                                  delay_ms(10000);
  97.                          break;
  98.                
  99.                 case'5':Motor_1_STOP();
  100.                   Motor_2_STOP();
  101.                         Motor_3_STOP();
  102.                   Motor_4_STOP();
  103.           break;

  104. }
  105.         }
復(fù)制代碼


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:139866 發(fā)表于 2021-12-1 15:42 | 只看該作者
可能是因?yàn)槌绦蚺艿筋^了吧,一條路走到底,再也回不到最初的起點(diǎn)了

評(píng)分

參與人數(shù) 1黑幣 +6 收起 理由
AAA_MCU + 6 贊一個(gè)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

板凳
ID:313048 發(fā)表于 2021-12-1 17:53 | 只看該作者
先確定串口是否接收到數(shù)據(jù)并正確解析,然后再確定電機(jī)驅(qū)動(dòng)是否正常,能否正常轉(zhuǎn)動(dòng),解決這倆問題就好了
回復(fù)

使用道具 舉報(bào)

地板
ID:624769 發(fā)表于 2021-12-2 00:02 | 只看該作者
就如沙發(fā)所說,程序跑完了,沒了,看上去代碼一大堆,其實(shí)跑起來可能都不用一秒,就跑完了,或者說跑飛了。然后你這頭藍(lán)牙再怎么操作,那頭也不會(huì)回應(yīng)。
回復(fù)

使用道具 舉報(bào)

5#
ID:739727 發(fā)表于 2021-12-2 00:34 | 只看該作者
天ノ憶 發(fā)表于 2021-12-1 15:42
可能是因?yàn)槌绦蚺艿筋^了吧,一條路走到底,再也回不到最初的起點(diǎn)了

一看就是老油條
回復(fù)

使用道具 舉報(bào)

6#
ID:944770 發(fā)表于 2021-12-2 16:17 | 只看該作者
先用串口助手,和手機(jī)通訊看接收指令,再和小車通訊,發(fā)送指令看看
回復(fù)

使用道具 舉報(bào)

7#
ID:810492 發(fā)表于 2021-12-2 21:50 | 只看該作者
但是他有一個(gè)輪子會(huì)自己一直轉(zhuǎn)的,我沒給信號(hào)也在轉(zhuǎn)
回復(fù)

使用道具 舉報(bào)

8#
ID:810492 發(fā)表于 2021-12-2 21:50 | 只看該作者
AUG 發(fā)表于 2021-12-1 17:53
先確定串口是否接收到數(shù)據(jù)并正確解析,然后再確定電機(jī)驅(qū)動(dòng)是否正常,能否正常轉(zhuǎn)動(dòng),解決這倆問題就好了

東西正常,有個(gè)輪子這個(gè)程序還沒收到信號(hào)就已經(jīng)在轉(zhuǎn)動(dòng)了。然后其他幾個(gè)輪子都不動(dòng)的
回復(fù)

使用道具 舉報(bào)

9#
ID:624769 發(fā)表于 2021-12-3 00:17 | 只看該作者
n9u7 發(fā)表于 2021-12-2 21:50
東西正常,有個(gè)輪子這個(gè)程序還沒收到信號(hào)就已經(jīng)在轉(zhuǎn)動(dòng)了。然后其他幾個(gè)輪子都不動(dòng)的

你確定正常?
你真的認(rèn)為,只能一條路跑到底,并且最后直接飛出,放飛自由的程序是正常的?
回復(fù)

使用道具 舉報(bào)

10#
ID:987484 發(fā)表于 2021-12-3 10:47 | 只看該作者
先用串口助手,和手機(jī)通訊看接收指令,再和小車通訊,發(fā)送指令看看
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表