15-ESP8266 SDK開發基礎入門篇--上位機串口控制 Wi-Fi輸出PWM的占空比,調節LED亮度,上位機程序編寫


https://www.cnblogs.com/yangfengwu/p/11104167.html

先說一下整體思路哈..

咱滑動的時候

會進入這個,然后咱呢不直接從這個里面寫發送

因為這樣的話太快了,,咱的單片機是用任務處理

咱就做一個10ms的定時器,實時檢測進度條值的變化,如果這次的值和上次的值不一樣就發送

 

 

 

 

 

 

 

 

 定義一個變量用來存儲上次的狀態

 

 

 

 

現在測試一下,發給另一個串口,然后計算下

   

 

 

 

 

 

 好現在控制燈

    

 

    

 

 

 

     

 

自己去測試吧,自己擴展成控制舵機,控制電機轉速都可以

 

 

然后給大家CRC的代碼  這個CRC和前頭單片機的CRC 計算出來的CRC一致,大家可以在數據的最后兩位加上CRC

        /// <CRC  效驗  >
        /// 
        /// </summary>
        /// <param name="modbusdata"></param>
        /// <param name="length"></param>
        /// <returns></returns>
        private int crc16_modbus(byte[] modbusdata, int length)
        {
            int i, j;

            int crc = 0xffff;

            try
            {
                for (i = 0; i < length; i++)
                {
                    crc ^= modbusdata[i];
                    for (j = 0; j < 8; j++)
                    {
                        if ((crc & 0x01) == 1)
                        {
                            crc = (crc >> 1) ^ 0xa001;
                        }
                        else
                        {
                            crc >>= 1;
                        }
                    }
                }
            }
            catch (Exception)
            {
                
                throw;
            }
            
            return crc;
        }

        /*
          modbusdata   要校驗的數據
          length       數據長度
          返回值 1 正確  0 錯誤
        */
        private int crc16_flage(byte[] modbusdata, int length)
        {
            int Receive_CRC = 0, calculation = 0;//接收到的CRC,計算的CRC

            Receive_CRC = crc16_modbus(modbusdata, length);
            calculation = modbusdata[length + 1];
            calculation <<= 8;
            calculation += modbusdata[length];
            if (calculation != Receive_CRC)
            {
                return 0;
            }
            return 1;
        }

 

 

提示:CRC使用

 

 

 后面咱會使用起來CRC  現在大家先自己摸索把,或者百度

 

https://www.cnblogs.com/yangfengwu/p/11112014.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM