找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 1652|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

syn7318智能語音控制初步開發(fā) STM32單片機代碼與手冊

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:753618 發(fā)表于 2022-12-15 09:38 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
在網(wǎng)上找了很久的SYN7318,現(xiàn)發(fā)上來,共各位學(xué)習(xí)。并附初步開發(fā)程序。

STM32單片機源程序如下:
  1. /************************************************************
  2. **  智能語音控制程序
  3. **  按 S1鍵 開始
  4. **  修改記錄: 增加CAN接口
  5. **  推薦使用 參數(shù) : 尋跡速度 50   轉(zhuǎn)彎速度  80
  6. *************************************************************/
  7. #include "stm32f10x.h"  //包含
  8. #include "sys.h"                                       
  9. #include "usart.h"               
  10. #include "delay_drv.h"
  11. #include "init.h"
  12. #include "led.h"                          
  13. #include "test.h"
  14. #include "djqd.h"
  15. #include "key.h"
  16. #include "xj.h"
  17. #include "csb.h"
  18. #include "hw.h"
  19. #include "74hc595.h"
  20. #include "bh1750.h"
  21. #include "uart_my.h"
  22. #include "canp_hostcom.h"
  23. #include "can_drv.h"
  24. #include "fifo_drv.h"
  25. #include "data_channel.h"
  26. #include "power_check.h"
  27. #include "syn7318.h"
  28. #include "iic.h"
  29. #include "hmc5883l.h"

  30. #define  NUM  10                   // 定義接收數(shù)據(jù)長度
  31. #define  ZCKZ_ADDR    0xAA  // 定義運輸標(biāo)志物地址編號
  32. #define  YSBZW_ADDR   0x02  // 定義運輸標(biāo)志物地址編號
  33. #define  DZ_ADDR      0x03  // 定義道閘標(biāo)志物地址編號
  34. #define  LEDXS_ADDR   0x04  // 定義LED顯示標(biāo)志物地址編號
  35. #define  JXB_ADDR     0x05  // 定義機械臂標(biāo)志物地址編號


  36. void IO_Init(void); //IO初始化        

  37. //u8 mp;        
  38. u8 G_Tab[6];           //定義紅外發(fā)射數(shù)組
  39. u8 S_Tab[NUM];            //定義主返回數(shù)據(jù)數(shù)組
  40. u8 C_Tab[NUM];            //定義運動標(biāo)志物返回數(shù)據(jù)數(shù)組

  41. u8 Stop_Flag=0;    //狀態(tài)標(biāo)志位
  42. u8 Track_Flag=0;   //循跡標(biāo)志位
  43. u8 G_Flag=0;           //前進標(biāo)志位
  44. u8 B_Flag=0;           //后退標(biāo)志位
  45. u8 L_Flag=0;           //左轉(zhuǎn)標(biāo)志位
  46. u8 R_Flag=0;           //右轉(zhuǎn)標(biāo)志位
  47. u8 SD_Flag=1;      //運動標(biāo)志物數(shù)據(jù)返回允許標(biāo)志位
  48. u8 Rx_Flag =0;

  49. u16 CodedDisk=0;   //碼盤值統(tǒng)計
  50. u16 tempMP=0;             //接收碼盤值
  51. u16 MP;                               //控制碼盤值
  52. int Car_Spend = 50;//小車速度默認(rèn)值
  53. int count = 0;           //計數(shù)
  54. int LSpeed;                     //循跡左輪速度
  55. int RSpeed;                     //循跡右輪速度
  56. u8 Line_Flag=0;           //
  57. u8 send_Flag=0;           // 發(fā)送標(biāo)志位

  58. unsigned Light=0; //光照度
  59. // 主函數(shù)

  60. RCC_ClocksTypeDef RCC_Clocks;
  61. extern void pwm_test(void);

  62. int main(void)
  63. {
  64.         u8 ut=0;
  65.         u8 i;
  66.         global_times = 0;
  67.         SystemInit();
  68.         Delay_us_Init();
  69.         RCC_GetClocksFreq(&RCC_Clocks);
  70.         SysTick_Config(RCC_Clocks.HCLK_Frequency / 1000);        
  71.         NVIC_Configuration();         
  72.         
  73.         uart1_init(115200);                // 串口初始化為115200
  74.         uart2_init(115200, 0);            // 串口初始化為115200 // 默認(rèn)開中斷
  75.         
  76.         IO_Init();                  //IO初始化

  77.         S_Tab[0]=0x55;
  78.         S_Tab[1]=0xaa;

  79.         C_Tab[0]=0x55;
  80.         C_Tab[1]=0x02;
  81.         
  82.         CanP_Init();
  83.         
  84.         Power_Check();  //電量檢測  上電先檢測一次電量
  85.         Send_Electric( Electric_Buf[0],Electric_Buf[1]);
  86.         
  87.         STOP();
  88.         Host_Close_UpTrack();
  89.          
  90.         while(1)
  91.         {                           
  92.                  ut ++;
  93.                  LED0 =!LED0;
  94.            delay_ms(100);
  95.                
  96.                  SYN7318_Test();  // 語音測試

  97.                  if(!KEY0)                          //按鍵K1按下
  98.                  {
  99.                     delay_ms(30);

  100.                     if(!KEY0)
  101.                           {
  102.                                    LED1 = !LED1;
  103.                                          SYN7318_Open();  // 開啟測試
  104.                           }
  105.                 }
  106.                  
  107.                 if( !(ut %100))
  108.                 {               
  109.                         Power_Check();  //電量檢測  無需實時操作
  110.       Send_Electric( Electric_Buf[0],Electric_Buf[1]);               
  111.                 }
  112.          
  113.         }
  114.         
  115. }

  116. /***************************************************************
  117. ** 功能:     初始化核心板所使用端口
  118. ** 參數(shù):            無參數(shù)
  119. ** 返回值:   無
  120. ****************************************************************/
  121. void IO_Init(void)
  122. {
  123.                 YJ_INIT();                        //初始化硬件

  124.                 GPIOB->CRH&=0XFFFFFFF0;         
  125.                 GPIOB->CRH|=0X00000008;//PB8 設(shè)置成輸入                              
  126.                 GPIOB->ODR|=1<<8;           //PB8上拉

  127.                 GPIOC->CRH&=0X000FFFFF;
  128.                 GPIOC->CRH|=0X33300000;   //PC13/PC14/PC15推挽輸出           
  129.                 GPIOC->ODR|=0XE000;       //PC13/PC14/PC15輸出高
  130.                         
  131.                 GPIOD->CRH&=0XFFF0FFFF;
  132.                 GPIOD->CRH|=0X00030000;   //PD12推挽輸出           
  133.                 GPIOD->ODR|=0X1000;       //PD12推挽高                                                                                          

  134.                 LED_L=1;                                 
  135.                 LED_R=1;
  136.                 BEEP=1;
  137.                 beep=0;               
  138. }
復(fù)制代碼

Keil代碼下載:
Keil代碼 智能語音控制.7z (260.23 KB, 下載次數(shù): 15)
SYN7318.pdf (2.44 MB, 下載次數(shù): 14)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:753618 發(fā)表于 2022-12-15 09:39 | 只看該作者
本程序是百科融創(chuàng)代碼,僅供學(xué)習(xí),切勿商用。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

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