⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mds-100-77e58.lst

📁 W77E58串口实例
💻 LST
📖 第 1 页 / 共 3 页
字号:
 207   3           Sent_Data_FC[4] = 0x00;
 208   3           Sent_Data_FC[5] = 0x00;
 209   3           Sent_Data_FC[6] = 0x00;
 210   3           Sent_Data_FC[7] = 0x00;
 211   3           Sent_Data_FC[8] = 0x00;
 212   3      
 213   3               }
 214   2      
 215   2       else if(RFC_Flag==0xFB)
 216   2              {
 217   3              RFC_Flag=0x00;
 218   3          Send_UART1(Sent_Data_FC);
 219   3              }
 220   2      
 221   2        else
 222   2         { 
 223   3           Sent_Data_FC[0] = Sent_Data_FC[0];
 224   3           Sent_Data_FC[1] = Sent_Data_FC[1];
 225   3           Sent_Data_FC[2] = Sent_Data_FC[2];
 226   3           Sent_Data_FC[3] = Sent_Data_FC[3];
 227   3           Sent_Data_FC[4] = Sent_Data_FC[4];
 228   3           Sent_Data_FC[5] = Sent_Data_FC[5];
 229   3           Sent_Data_FC[6] = Sent_Data_FC[6];
 230   3           Sent_Data_FC[7] = Sent_Data_FC[7];
 231   3           Sent_Data_FC[8] = Sent_Data_FC[8]; }
 232   2      
 233   2      
 234   2      
 235   2      /******************判断车载的违规信息******************/ 
 236   2      
 237   2      /**判断是否左脚踏地**/
 238   2       if (LF_Flag==1)
 239   2         {
 240   3                LF_Flag=0;
 241   3                Sent_Data_FC[0] = 0xFF;
C51 COMPILER V7.06   MDS_100_77E58                                                         03/22/2006 19:49:08 PAGE 5   

 242   3            Sent_Data_FC[1] = 0x12;
 243   3            Sent_Data_FC[2] = 0x11;
 244   3            Sent_Data_FC[3] = 0x00;
 245   3            Sent_Data_FC[4] = 0x00;
 246   3            Sent_Data_FC[5] = 0x00;
 247   3            Sent_Data_FC[6] = 0x02;
 248   3            Sent_Data_FC[7] = 0x00;
 249   3            Sent_Data_FC[8] = 0x00;
 250   3      
 251   3            Send_UART1(Sent_Data_FC);
 252   3      
 253   3          }
 254   2      
 255   2      /**判断是否右脚踏地**/
 256   2       else if (RG_Flag==1)
 257   2         {
 258   3                RG_Flag=0;
 259   3            Sent_Data_FC[0] = 0xFF;
 260   3            Sent_Data_FC[1] = 0x12;
 261   3            Sent_Data_FC[2] = 0x11;
 262   3            Sent_Data_FC[3] = 0x00;
 263   3            Sent_Data_FC[4] = 0x00;
 264   3            Sent_Data_FC[5] = 0x00;
 265   3            Sent_Data_FC[6] = 0x01;
 266   3            Sent_Data_FC[7] = 0x00;
 267   3            Sent_Data_FC[8] = 0x00;
 268   3      
 269   3            Send_UART1(Sent_Data_FC);
 270   3         
 271   3              }
 272   2      
 273   2      /**判断熄火信号**/
 274   2        else if (SH_Flag==1)
 275   2         {
 276   3                SH_Flag=0;
 277   3            Sent_Data_FC[0] = 0xFF;
 278   3            Sent_Data_FC[1] = 0x12;
 279   3            Sent_Data_FC[2] = 0x11;
 280   3            Sent_Data_FC[3] = 0x00;
 281   3            Sent_Data_FC[4] = 0x00;
 282   3            Sent_Data_FC[5] = 0x00;
 283   3            Sent_Data_FC[6] = 0x08;
 284   3            Sent_Data_FC[7] = 0x00;
 285   3            Sent_Data_FC[8] = 0x00;
 286   3      
 287   3            Send_UART1(Sent_Data_FC);
 288   3         
 289   3              }
 290   2      
 291   2      
 292   2      /**如果没有车载信号则不做任何动作**/
 293   2       else
 294   2         { 
 295   3           Sent_Data_FC[0] = Sent_Data_FC[0];
 296   3           Sent_Data_FC[1] = Sent_Data_FC[1];
 297   3           Sent_Data_FC[2] = Sent_Data_FC[2];
 298   3           Sent_Data_FC[3] = Sent_Data_FC[3];
 299   3           Sent_Data_FC[4] = Sent_Data_FC[4];
 300   3           Sent_Data_FC[5] = Sent_Data_FC[5];
 301   3           Sent_Data_FC[6] = Sent_Data_FC[6];
 302   3           Sent_Data_FC[7] = Sent_Data_FC[7];
 303   3           Sent_Data_FC[8] = Sent_Data_FC[8]; }
C51 COMPILER V7.06   MDS_100_77E58                                                         03/22/2006 19:49:08 PAGE 6   

 304   2      
 305   2         } 
 306   1      } 
 307          
 308          /**************************************************************************/
 309          /** 函数名称: Main_Init()                                                **/
 310          /** 功能描述: 系统初始化子程序,定时器0,定时方式,工作方式1。                   **/
 311          /**           串口初始化子程序 其中串口0用定时器2,串口1用定时器1        **/
 312          /** 输   入: 无                                                         **/
 313          /** 输   出: 无                                                         **/
 314          
 315          /** 作   者: Hunter                                                     **/
 316          /** 日   期: 2006年03月                                                 **/
 317          
 318          /**************************************************************************/
 319          /** 修 改 人:                                                            **/
 320          /** 日   期:                                                            **/
 321          /**************************************************************************/
 322          
 323          void Main_Init()
 324           
 325           {
 326   1           EA=1;     /**允许总中断**/
 327   1      
 328   1      /**定时器0初始化:定时方式**/
 329   1           TMOD=0x21;   /**定时器1工作在模式2,定时器0工作模式1**/
 330   1      
 331   1           TH0 =0x4C;
 332   1           TL0 =0xF7;    /**baud rate=9600**/
 333   1      
 334   1           TR0=1;         /**启动定时器0**/
 335   1           ET0=1;             /**定时器0中断允许**/
 336   1      
 337   1      /**串口0设置:用定时器1做串口0的波特率发生器**/   
 338   1           TL1  =0xFD;   /**baud rate=9600**/
 339   1           TH1  =0xFD;
 340   1           SCON0=0x50;   /**工作在模式1,允许接收**/
 341   1           PCON =0x00;   /**SM0=0 SM1=1 在10位异步收发模式 SMOD=0 溢出速率/32 **/
 342   1      
 343   1           ES=1;      /**串口0中断允许**/
 344   1           TR1=1;         /**启动定时器1**/
 345   1           
 346   1           PS0=1;         /**串口0中断优先**/
 347   1      
 348   1      /**串口1设置:用定时器2做串口1的波特率发生器**/    
 349   1       
 350   1           SCON1 =0x50;   /**工作在模式1,接收允许**/
 351   1           T2MOD =0x20;   /**定时器2工作在模式1**/
 352   1           T2CON =0x30;   /**用定时器2做串口1的波特率发生器**/
 353   1           RCAP2H=0xFF;   /** 设置定时器2**/
 354   1           RCAP2L=0xDC;
 355   1      
 356   1           ES1=1;         /**串口1中断允许**/
 357   1           TR2=1;                 /**启动定时器2**/
 358   1      
 359   1        }  
 360          
 361          
 362          
 363          /***********************************************************************/
 364          /** 函数名称: Send_Data_Com0(unsigned char Onebit)                    **/
 365          /** 功能描述: 串口发送一个数组给蓝牙模块Com0口                        **/
C51 COMPILER V7.06   MDS_100_77E58                                                         03/22/2006 19:49:08 PAGE 7   

 366          /** 输   入:                                                         **/
 367          /** 输   出:无                                                       **/
 368          
 369          /** 作   者: Hunter                                                  **/
 370          /** 日   期: 2006年03月                                              **/
 371          
 372          /***********************************************************************/
 373          /** 修 改 人:                                                         **/
 374          /** 日   期:                                                         **/
 375          /***********************************************************************/
 376          void Send_UART0(unsigned char data *Send_Buf)
 377          {
 378   1       unsigned char SendSum,i;
 379   1      
 380   1           ES=0;      /**关闭串口0中断**/
 381   1       
 382   1        BT_Tran=0;
 383   1        SendSum=0;     /**清校验和 **/
 384   1        ES=0;      /**关串口0中断**/
 385   1      
 386   1              for(i=0;i<9;i++)  /**发送数组的前9位数据**/
 387   1                 {
 388   2                      SBUF=Send_Buf[i];
 389   2                      SendSum+=Send_Buf[i];
 390   2                      while(TI==0);TI=0;
 391   2                      }
 392   1              SBUF=SendSum;       /**发送此帧数据校验和**/
 393   1                      while(TI==0);TI=0; /**等待数据发送出去**/
 394   1       
 395   1           ES=1;      /**串口0中断允许**/
 396   1      
 397   1        BT_Tran=1;
 398   1      }
 399          
 400          
 401          /***********************************************************************/
 402          /** 函数名称: Send_Data_Com1(unsigned char Onebit)                    **/
 403          /** 功能描述: 串口发送一个数组给FC机Com1口                            **/
 404          /** 输   入:                                                         **/
 405          /** 输   出:无                                                       **/
 406          
 407          /** 作   者: Hunter                                                  **/
 408          /** 日   期: 2006年03月                                              **/
 409          
 410          /***********************************************************************/
 411          /** 修 改 人:                                                         **/
 412          /** 日   期:                                                         **/
 413          /***********************************************************************/
 414          void Send_UART1(unsigned char data *Send_Buf)
 415          {
 416   1       unsigned char SendSum,i;
 417   1      
 418   1        FC_Tran=0;
 419   1        SendSum=0;     /**清校验和 **/
 420   1      
 421   1           ES1=0;      /**关闭串口1中断*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -