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

📄 main.lst

📁 适合初学者学习的UPSD的点阵LCD汉字显示
💻 LST
📖 第 1 页 / 共 2 页
字号:
 183   3                              memset(&cRecvBuff[cRecvBuffPtr][0],0x00,RECV_LENGTH);
 184   3                              cRecvBuffPtr = (cRecvBuffPtr + 1) % RECV_GRUOP;
 185   3                              cRecvBuffCnt --;
 186   3                      }
 187   2                      else
 188   2                              os_wait(K_TMO, T10MS, 0x00);            
 189   2              }
 190   1              
 191   1      }
 192          /*===============================================================
 193          功能:
 194          参数:
 195          返回:
 196          说明:
 197          ===============================================================*/
 198          void Led1_Delay_Task(void) _task_ LED1DELAY_TASK_ID
 199          {
 200   1              CALL_IN1_LED = 0;
 201   1              AUDIO_C1 = TURN_ON;
 202   1              Set_Vfd_Brightless(8);
 203   1              os_wait2(K_TMO, T1S);
 204   1              AUDIO_C1 = TURN_OFF;
 205   1              os_wait2(K_TMO, T1S);
 206   1              os_wait2(K_TMO, T1S);
 207   1              os_wait2(K_TMO, T1S);
 208   1              CALL_IN1_LED = 1;
 209   1              AUDIO_C1 = TURN_OFF;
 210   1              Set_Vfd_Brightless(1);
 211   1              os_delete_task(LED1DELAY_TASK_ID);
 212   1      }
 213          
 214          /*===============================================================
 215          功能:
 216          参数:
 217          返回:
 218          说明:
 219          ===============================================================*/
 220          void Led2_Delay_Task(void) _task_ LED2DELAY_TASK_ID
 221          {
 222   1              CALL_IN2_LED = 0;
 223   1              AUDIO_C2 = TURN_ON;
 224   1              Set_Vfd_Brightless(8);
 225   1              os_wait2(K_TMO, T1S);
 226   1              AUDIO_C2 = TURN_OFF;
 227   1              os_wait2(K_TMO, T1S);
 228   1              os_wait2(K_TMO, T1S);
 229   1              os_wait2(K_TMO, T1S);
 230   1              CALL_IN2_LED = 1;
 231   1              AUDIO_C2 = TURN_OFF;
 232   1              Set_Vfd_Brightless(1);
 233   1              os_delete_task(LED2DELAY_TASK_ID);
 234   1      }
 235          /*===============================================================
 236          功能:判断是否有音频
 237          参数:
 238          返回:
 239          说明:
 240          ===============================================================*/
 241          void Information_Task(void) _task_ INFO_TASK_ID
C51 COMPILER V7.10   MAIN                                                                  11/09/2006 11:10:16 PAGE 5   

 242          {
 243   1              static uchar cAudioCnt1 = 0,cAudioCnt2 = 0;
 244   1              static uchar cNoAudioCnt1 = 0,cNoAudioCnt2 = 0;
 245   1              
 246   1              os_wait(K_TMO, T1S, 0x00);
 247   1              
 248   1              while(1)
 249   1              {
 250   2                      os_wait(K_TMO, T10MS, 0x00);    
 251   2                      //判断第一通道
 252   2                      if(!SPK_D1)
 253   2                              cAudioCnt1++;
 254   2                      else
 255   2                              cNoAudioCnt1++;
 256   2                      if(cNoAudioCnt1 > 40)
 257   2                      {
 258   3                              cAudioCnt1 = 0x00;
 259   3                              cNoAudioCnt1 = 0x00;
 260   3                      }
 261   2                      if(cAudioCnt1 >= 1)
 262   2                      {
 263   3                              cAudioCnt1 = 0x00;
 264   3                              cNoAudioCnt1 = 0x00;
 265   3                              os_delete_task(LED1DELAY_TASK_ID);
 266   3                              os_create_task(LED1DELAY_TASK_ID);
 267   3                      }
 268   2                      //判断第二通道
 269   2                      if(!SPK_D2)
 270   2                              cAudioCnt2++;
 271   2                      else
 272   2                              cNoAudioCnt2++;
 273   2                      if(cNoAudioCnt2 > 40)
 274   2                      {
 275   3                              cAudioCnt2 = 0x00;
 276   3                              cNoAudioCnt2 = 0x00;
 277   3                      }
 278   2                      if(cAudioCnt2 >= 1)
 279   2                      {
 280   3                              cAudioCnt2 = 0x00;
 281   3                              cNoAudioCnt2 = 0x00;
 282   3                              os_delete_task(LED2DELAY_TASK_ID);
 283   3                              os_create_task(LED2DELAY_TASK_ID);
 284   3                      }
 285   2              }
 286   1      }
 287          /*===============================================================
 288          功能:复位CPU
 289          参数:
 290          返回:
 291          说明:
 292          ===============================================================*/
 293          void Restart_Cpu(void)
 294          {
 295   1              WDKEY = 0xAE;
 296   1              WDRST = 0x01;
 297   1              while(1);
 298   1      }
 299          /*===============================================================
 300          功能:完成定时操作
 301          参数:
 302          返回:
 303          说明:10毫秒内判断一次I2C总线,若一秒中内有80次总线忙则
C51 COMPILER V7.10   MAIN                                                                  11/09/2006 11:10:16 PAGE 6   

 304                          复位总线
 305          ===============================================================*/
 306          void Timer_Task(void) _task_ TIMER_TASK_ID
 307          {
 308   1              static uchar xdata _ui = 0x00;
 309   1              
 310   1              while(1)
 311   1              {
 312   2                      os_wait(K_TMO, T10MS, 0x00);
 313   2                      WDRST = 0x00;                                   //喂狗
 314   2                      _ui++;
 315   2                      
 316   2                      if(_ui == 50)
 317   2                      {
 318   3                              LED_RUN ^= 1;
 319   3                              _ui = 0x00;
 320   3                      }
 321   2              }
 322   1      }
 323          
 324          /*===============================================================
 325          功能:调用初始化函数并启动所有任务
 326          参数:无
 327          返回:无
 328          说明:系统时间间隔为10ms
 329          ===============================================================*/
 330          void Init_Task(void) _task_ INIT_TASK_ID
 331          {
 332   1              Init_System();
 333   1      
 334   1              //os_create_task(SRECV_TASK_ID);
 335   1              os_create_task(STRAN_TASK_ID);
 336   1              os_create_task(CMMD_TASK_ID);
 337   1              os_create_task(INFO_TASK_ID);
 338   1              os_create_task(TIMER_TASK_ID);
 339   1              os_create_task(DEBUG_TASK_ID);
 340   1              os_delete_task(INIT_TASK_ID);
 341   1      }
 342          /*===============================================================
 343          功能:主函数,启动任务
 344          参数:无
 345          返回:无
 346          说明:
 347          ===============================================================*/
 348          void main(void)
 349          {
 350   1              os_start_system(INIT_TASK_ID);
 351   1      }
 352          /*===============================================================
 353          功能:
 354          参数:
 355          返回:
 356          说明:
 357          ===============================================================*/


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1671    ----
   CONSTANT SIZE    =    874    ----
   XDATA SIZE       =     30    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
C51 COMPILER V7.10   MAIN                                                                  11/09/2006 11:10:16 PAGE 7   

   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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