新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 舵機程序之數據的處理

        舵機程序之數據的處理

        作者: 時間:2016-12-01 來源:網絡 收藏
        //上位機對于舵機的每次調度信息通過shujuchuli函數提取出來

        #define BIAOZHI(x,y,z) Biaozhi=x;Biaozhip=y;Biaozhit=z
        char ASC_zhuan_Valu(char asc)
        {
        char valu;
        switch(asc)
        {
        case 0x30:valu=0;break; //0的ASC碼時0x30,,十進制48
        case 0x31:valu=1;break;
        case 0x32:valu=2;break;
        case 0x33:valu=3;break;
        case 0x34:valu=4;break;
        case 0x35:valu=5;break;
        case 0x36:valu=6;break;
        case 0x37:valu=7;break;
        case 0x38:valu=8;break;
        case 0x39:valu=9;break;
        }
        return valu;
        }
        void shujuchuli(char *Huancen,unsigned int *Pwm)//數據處理
        {
        char Biaozhi,Biaozhip,Biaozhit;
        unsigned int Shuju=0,Shujup=0,Shujut=0;
        while(*Huancen!=10)
        {
        if(Biaozhi==1&*Huancen!=80&*Huancen!=84)
        {
        Shuju=Shuju*10+ASC_zhuan_Valu(*Huancen);
        }
        if(Biaozhip==1&*Huancen!=35&*Huancen!=84)
        {
        Shujup=Shujup*10+ASC_zhuan_Valu(*Huancen);
        }
        if(Biaozhit==1&*Huancen!=80&*Huancen!=35)
        {
        Shujut=Shujut*10+ASC_zhuan_Valu(*Huancen);
        }
        if(*Huancen==35) //#
        {
        BIAOZHI(1,0,0);
        }
        if(*Huancen==80) //P
        {
        BIAOZHI(0,1,0);
        }
        if(*Huancen==84) //T
        {
        BIAOZHI(0,0,1);
        }
        Huancen++;
        if(*Huancen==10)
        {
        if(Shujup>500)
        {
        *(Pwm+Shuju-1)=Shujup;//新的位置數據產生進行調度
        }
        return;
        }
        }
        }

        本文引用地址:http://www.104case.com/article/201612/324195.htm


        關鍵詞: 舵機程序數

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 弋阳县| 岫岩| 平遥县| 镇赉县| 琼结县| 宜黄县| 双牌县| 治多县| 静海县| 临江市| 丹东市| 政和县| 梧州市| 德昌县| 天柱县| 襄樊市| 永泰县| 石林| 工布江达县| 林州市| 榆树市| 昌江| 阳西县| 兴安盟| 德庆县| 高安市| 宁河县| 安远县| 塔城市| 大安市| 武冈市| 崇信县| 嵊州市| 江津市| 阿勒泰市| 中超| 车险| 昭苏县| 宕昌县| 灵武市| 开远市|