中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

程序的寫法:方便以后的查看和維護。

發布時間:2020-06-18 19:22:47 來源:網絡 閱讀:296 作者:dawn0919 欄目:編程語言

  寫程序主要是為了以后自己讀起來不費勁,方便查看和維護。

//返回錯誤的約定:如果該命令與本站有關則根據設定來決定是否返回錯誤信息,
//如果該命令與本站無關則不必返回錯誤信息,接收的全部是16進制的數字
bool Inspect=true;
uint8_t ErrorCode=0;

//CRC檢查
......
//分析文件頭
if (rx_buffer1[0] != 0x59 || rx_buffer1[1] != 0x51 || rx_buffer1[2]!=0x43 || rx_buffer1[3]!=0x59 ){
  Inspect=false;
  ErrorCode=0x011;//錯誤代碼11:標識文件頭的錯誤
}

//分析文件尾
if ( rx_buffer1[66]!=0x59 || rx_buffer1[67]!=0x42 || rx_buffer1[68]!=0x44 || rx_buffer1[69]!=0x57 ){
  Inspect=false;
  ErrorCode=0x022;//錯誤代碼22:標識文件尾的錯誤
}

//是否是屬于本線和本站的接收命令
if( rx_buffer1[4]!=0x01 || rx_buffer1[6]!=0x00 ){
  Inspect=false;
  ErrorCode=0x33;//錯誤代碼33:不是本次的測試命令
}

//是否是屬于本線和本站的接收命令
if( rx_buffer1[5]!=YBDWPipeline || rx_buffer1[7]!=YBDWPile ){
  Inspect=false;
  ErrorCode=0x44;//錯誤代碼44:不是本線或者本站的接收命令
}

......

if(Inspect==true){
  //準備返回的數據

  //根據具體的命令來進行實際操作
  switch(rx_buffer1[9]){
    case Set_SystemDatetime: //設置系統日期和時間

      break;
    case Set_EngineeringOffset: //設置工程偏移量

      break;
    case Set_LineAndPile://設置線號和站號、本線的起始和結束站號

                  break;                          

    case Set_Version://設置版本信息

      break;
    case Get_LineAndPile://獲取線號和站號、本線的起始和結束站號

      break;
    case Get_CurrentYBDW://獲取當前的數據

      break;

    default: //不支持的命令

      break;
  }
  ......
}
else
{
  if(rx_buffer1[17]==0x99 && rx_buffer1[5]!=YBDWPipeline && rx_buffer1[7]!=YBDWPile ){
  //根據配置決定是否將錯誤返回,只與本站的信號才回饋信息
  ......
  HAL_UART_Transmit(&hlpuart1,Send_Buffer,70,10); //串口1向LORA發送整個緩沖區
}

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

来宾市| 十堰市| 抚宁县| 碌曲县| 家居| 若尔盖县| 大连市| 宣化县| 华蓥市| 五常市| 辛集市| 威信县| 嘉鱼县| 杭锦后旗| 枣强县| 金坛市| 乐业县| 仙游县| 昂仁县| 余干县| 屏东县| 墨脱县| 壶关县| 虹口区| 山西省| 盘锦市| 阳原县| 特克斯县| 改则县| 赫章县| 茌平县| 普洱| 澄迈县| 敦化市| 海南省| 巴里| 乌恰县| 东海县| 江口县| 保定市| 大石桥市|