[电机控制专用MCU] 【极海G32M3101电机评估板测评】+以蓝牙通讯方式控制运行状态

[复制链接]
147|5
jinglixixi 发表于 2026-6-6 12:53 | 显示全部楼层 |阅读模式
本帖最后由 jinglixixi 于 2026-6-6 13:14 编辑

#申请原创#

极海G32M3101电机评估板提供了串口通讯功能,借此可完成数据的收发。此外,若配合蓝牙模块的使用则可实现以手机来进行设备运行状体的控制。
以通讯发送实现运行状体控制的主程序为:
  1. int main(void)
  2. {
  3.     static char rxBuffer[2U];        
  4.     uint8_t i;        
  5.     /* Device configuration */
  6.     DDL_DeviceConfig();        
  7.     while (1)
  8.     {
  9.         for(i=0;i<1;i++)
  10.         {
  11.              while(DDL_USART_IsActiveFlag_RXNE(UART0) == 0);
  12.                  rxBuffer[i]= UART0->DATA;
  13.         }               
  14.         for(i=0;i<1;i++)
  15.         {
  16.                 DDL_USART_TransmitData8(UART0, rxBuffer[i]);
  17.                 while(DDL_USART_IsActiveFlag_TXE(UART0) == RESET);
  18.         }                        
  19.                 if(rxBuffer[0]==0x31)
  20.                 {
  21.                          BOARD_LED_On(LED2);
  22.                 }
  23.                 else
  24.                 {
  25.                          BOARD_LED_Off(LED2);
  26.                 }        
  27.         }
  28. }
经程序的编译和下载,其测试结果如图1所示,说明功能正确。
369096a23a727aaa9a.png
1 收发测试

在连接蓝牙模块的情况下,则可以通过手机来控制运行状体,这里是以LED为对象,当然在驱动电机时就能控制电机的启停,甚至是转速的快慢。
631366a23ab546072c.png
2 器件连接

在所用蓝牙通讯时,需先在手机端扫描蓝牙识别,见图3所示。
728016a23a76d75826.png
3 搜寻蓝牙设备

在进行连接后,即可发送控制指令或数据,以控制LED的亮灭。其中0X31是点亮LED,其它则消灭LED。
977696a23a79496432.png
4 手机发送指令

539016a23aa0be6c8b.png
5点亮LED

西洲 发表于 2026-6-15 13:39 | 显示全部楼层
测试结果看起来很不错,程序的响应速度和稳定性如何?有没有遇到什么bug或者需要改进的地方?
 楼主| jinglixixi 发表于 2026-6-19 09:27 | 显示全部楼层
西洲 发表于 2026-6-15 13:39
测试结果看起来很不错,程序的响应速度和稳定性如何?有没有遇到什么bug或者需要改进的地方?
...

程序的响应速度和稳定性均不错,bug或许就是串口与调试口共享易成板砖吧,建议改为可切换到到另一个串口使用。哈哈,不一定正确。
討厭和人归類 发表于 2026-8-3 20:55 | 显示全部楼层
测试结果看起来很不错,LED的控制响应迅速,程序逻辑也很清晰。
失物招領 发表于 2026-9-8 09:15 | 显示全部楼层
代码里看到只判断了0x31一个指令,如果要扩展控制电机转速的话,是不是需要设计更完整的通信协议?比如加入帧头帧尾和校验。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

548

主题

3064

帖子

38

粉丝
快速回复 在线客服 返回列表 返回顶部
0