久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1883|回復: 1
打印 上一主題 下一主題
收起左側

STM32 HAL庫接收GY-25傾斜角度傳感器 單片機程序沒有進入中斷接收回調函數

[復制鏈接]
跳轉到指定樓層
樓主
ID:1003481 發(fā)表于 2022-6-27 14:31 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
GY-25是一款傾斜角度傳感器,它通過串口輸出航向角、橫滾角和俯仰角數據。


在使用GY-25之前,要向GY-25發(fā)送命令才能使能它開始傳輸數據。有以下5種命令可選,我用的是第2種命令,自動和連續(xù)返回數據:
①0xA5+0x51: 查詢模式,直接返回角度值,需每次讀取都發(fā)送 ;
②0xA5+0x52: 自動模式,直接返回角度值,只需要初始化時發(fā)一次 ;
③0xA5+0x53: 自動模式,ASCII 碼輸出,便于直接電腦串口助手查看 ;
④0xA5+0x54: 校正模式,校正俯仰橫滾角 0 度,需要保持水平時候發(fā)送 ;
⑤0xA5+0x55: 校正模式,校正航向 0 度,航向任意角度清零。

GY-25傳出來的一幀數據包含8個字節(jié)。其中,第一個字節(jié)固定為0xAA,表示一幀數據的開始。第2、3字節(jié)是航向角,第4、5字節(jié)是俯仰角,第6、7字節(jié)是橫滾角,第8個字節(jié)固定為0x55代表一幀的結束。
我希望使用STM32F411RE Nucleo開發(fā)板的串口1接收GY-25的數據,再通過串口2將數據輸出到電腦上的串口助手(STM32F411 Nucleo開發(fā)板的已經將串口2虛擬化到ST-LINK的USB接口,電腦上的串口助手可以直接讀取串口2發(fā)來的數據)。
理論上很簡單,就是先給串口1發(fā)送0xA5和0x52使GY-25開始傳出數據,再通過中斷方式接收GY-25從串口1發(fā)出來的數據。然后通過串口2將接收到的數據發(fā)送到電腦上。
我在STM32CubeMx上已經正確配置了串口參數,也開啟了串口1和串口2的中斷,實物連線也檢查過了。
但是我寫的程序從來不會進入中斷接收回調函數,同樣的,串口助手也沒有收到任何數據。我找不出問題在哪里,請大佬幫我謀劃一下解決思路。

單片機程序如下:
/* USER CODE BEGIN PV */
      uint8_t recBuf[10];  //接收到的一幀數據
      uint8_t command1=0xA5;
      uint8_t command2=0x52;
/* USER CODE END PV */


  /* USER CODE BEGIN 2 */
        HAL_UART_Transmit_IT(&huart1,&command1,1);  //發(fā)送0xA5
        HAL_UART_Transmit_IT(&huart1,&command2,1);  //發(fā)送0x52
        HAL_UART_Receive_IT(&huart1,recBuf,10); //開啟串口1的接收中斷
  /* USER CODE END 2 */


while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
          //main函數里什么都沒寫
  }
  /* USER CODE END 3 */


/* USER CODE BEGIN 4 */
void HAL_UART_RxCapltCallback(UART_HandleTypeDef *huart)  //串口接收中斷回調函數
{
    if(huart ->Instance == USART1)
    {
          HAL_UART_Transmit_IT(&huart2,recBuf,10);  //通過串口2將接收到的數據發(fā)送到電腦的串口助手
          HAL_UART_Receive_IT(&huart1,recBuf,10);  //開啟串口1的接收中斷
    }
}
/* USER CODE END 4 */
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:883242 發(fā)表于 2022-6-27 17:56 | 只看該作者
回調函數執(zhí)行的時候還沒有退出中斷,HAL_UART_Transmit_IT()能用嗎?
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品自拍 | 青青草一区 | av网站在线看 | 区一区二在线观看 | 婷婷久久综合 | 伊人狠狠| 精品欧美一区二区三区久久久 | 日韩视频高清 | 综合久久综合久久 | 亚洲欧美在线观看 | 国内自拍视频在线观看 | 亚洲国产精品一区二区第一页 | 国产综合久久 | 久久精品91久久久久久再现 | 欧美日韩亚洲二区 | 亚洲黄色高清视频 | 日本大香伊一区二区三区 | 日韩中文一区二区三区 | 亚洲一区二区三区四区五区中文 | 日韩美女在线看免费观看 | 一级黄色在线 | 成人欧美一区二区三区黑人孕妇 | 国产精品久久久久久婷婷天堂 | 日韩一区二区在线视频 | 欧美日韩中文字幕 | 久久久久国产精品 | 成人片免费看 | 欧美精品网站 | 黄色在线观看网址 | 亚洲一区二区免费看 | 久久精品国产99国产 | 国产女人与拘做受免费视频 | 欧美日韩精品免费 | 精品国产色 | 精品久久久久一区二区国产 | 日韩欧美一区二区三区免费观看 | 国产清纯白嫩初高生视频在线观看 | 视频一区 亚洲 | 日本一区二区不卡视频 | 成人黄色av | 黄色在线免费看 |