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

📄 communication.lst

📁 一个完整的用用AVR单片机开发的电话交换机程序 希望对想学习AVR开发人有帮助
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.06   COMMUNICATION                                                         11/15/2007 09:02:23 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE COMMUNICATION
OBJECT MODULE PLACED IN Communication.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Communication.c OPTIMIZE(2,SIZE) BROWSE NOAREGS DEBUG OBJECTEXTEND

stmt level    source

   1          /***************************************************************************
   2          //Actpro International (SZ) Ltd
   3          //Project :
   4          //File          :SoundInTel.c                                                                                           Compiler:Keil
   5          //Editor: LIUYI
   6          //Data:         06-01-04                                                                                                                Ver:
   7          //General Function
   8          
   9          */
  10          #include <switch.h>
  11          xdata   UCHAR   ExtComGroup[COMMUNICATIONGROUPNUM][ExtComGroup_length] _at_  0;
  12          xdata   UCHAR   MessageGroup[MESSAGEGROUPNUMBER][MessageGroup_length]    _at_  80;
  13          xdata   UCHAR   ExtTelState[ExtTelNum]                                                                                                                           _at_    130;
  14          xdata   UCHAR   ExtTelTime [ExtTelNum]                                                                                                                     _at_  140;
  15          xdata   UCHAR   OutTelState[OUTSIDETELNUM       ]                                                                                                                _at_    150;
  16          xdata   UCHAR CID[CIDLENGTH]                                                                                                                                                       _at_  230;
  17                                   
  18          void    CommunicationInit();
  19          void    WriteExtComGroup(UCHAR x,UCHAR y,UCHAR wData);
  20          UCHAR ReadExtComGroup(UCHAR x,UCHAR y);
  21          void    WriteMessageGroup(UCHAR x,UCHAR y,UCHAR wData);
  22          UCHAR ReadMessageGroup(UCHAR x,UCHAR y);
  23          void    SendUnholdMessage(UCHAR exttelnum);
  24          void    MessageDeal();
  25          UCHAR   CreateExtComGroup(UCHAR origin_call);
  26          void    ClearAMessage(UCHAR messageID);
  27          void    SendDecodeMessage(UCHAR exttelnum,UCHAR decode_data_length, UCHAR dtmfnum);
  28          void    SendHoldMessage(UCHAR exttelnum);
  29          void    ClearAComGroup(UCHAR comgroupID);
  30          void    SendOutsideCallInMessage(UCHAR linenum, UCHAR ringnum);
  31          void    WriteExtTelState(UCHAR num, UCHAR teldata);
  32          UCHAR   ReadExtTelState(UCHAR num);
  33          void    WriteCID(UCHAR num, UCHAR teldata);
  34          UCHAR   ReadCID(UCHAR num);
  35          void    ResResume();    //系统资源归原
  36          
  37          UCHAR   ReadExtTelTime(UCHAR num);
  38          void    WriteExtTelTime(UCHAR num, UCHAR time);
  39          void    ExtTimeDeal();
  40          void    exttel_hold_deal(UCHAR telnum);
  41          void    exttel_unhold_deal(UCHAR        telnum);
  42          void    exttel_dialing_deal(UCHAR telnum);
  43          UCHAR   findextcomgroupbyorigin(UCHAR telnum);
  44          UCHAR   findextcomgroupbyobject(UCHAR telnum);
  45          UCHAR   testextcomgroup_inside();
  46          void    CreatExtComGroupByID(UCHAR extcomgroupID,UCHAR origin, UCHAR object, UCHAR type);
  47          void    exttel_sendCID_deal(UCHAR telnum);
  48          void    exttel_waiting_deal(UCHAR telnum);
  49          void    exttel_ring_deal(UCHAR telnum);
  50          void    exttel_error_deal(UCHAR telnum);
  51          void    exttel_useing_deal(UCHAR telnum);
  52          UCHAR   ReadOutTelState(UCHAR num);
  53          void    WriteOutTelState(UCHAR num, UCHAR teldata);
  54          void    outtel_hold_deal(UCHAR outtelnum);
  55          UCHAR   testoutline(UCHAR outtelnum);
C51 COMPILER V7.06   COMMUNICATION                                                         11/15/2007 09:02:23 PAGE 2   

  56          void    outtel_ring_deal(UCHAR outtelnum);
  57          void    outtel_using_deal(UCHAR outtelnum);
  58          void    time_exttel_unhold_deal(UCHAR telnum);
  59          void    exttel_flash_deal(UCHAR telnum);
  60          void    exttel_switch_deal(UCHAR telnum);
  61          void time_exttel_flash_deal(UCHAR telnum);
  62          void    exttel_switch_dialing_deal(UCHAR telnum);
  63          void    exttel_switch_dialing_error_deal(UCHAR telnum);
  64          void    TakeTheRingPhone(UCHAR telnum);
  65          
  66          idata UCHAR     PORT_STORE;
  67          idata   UCHAR   RawMessageNum;          //记忆未处理的消息数目
  68          
  69          const UCHAR     MACHINE_ID[8]=
  70                  {
  71                          1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,        //分机编号
  72                  };
  73          const UCHAR OUTSIDELINE_ID[2]=
  74                  {
  75                          0x11,0x12                                                                       //外线ID编号
  76                  };
  77                  
  78          #define EXTTELTIME_30S                  150
  79          #define EXTTELTIME_5S                           25      
  80          #define EXTTELTIME_1S                           5
  81          
  82          void    CommunicationInit()
  83          {
  84   1              idata UCHAR     i,j;
  85   1      
  86   1              dialog_open=0;          //楼宇对讲初始化
  87   1              dialog_take=0;
  88   1              dialog_call=0;
  89   1              WriteExtTelState(DIALOG_STATE,DIALOG_STATE_NONE);       //初始化楼宇对讲状态
  90   1              
  91   1              for(i=0;i<COMMUNICATIONGROUPNUM;i++)
  92   1                      {
  93   2                              for(j=0;j<ExtComGroup_length;j++)
  94   2                                      {
  95   3                                              WriteExtComGroup(i,j,0);
  96   3                                      }
  97   2                      }
  98   1      
  99   1              for(i=0;i<MESSAGEGROUPNUMBER;i++)
 100   1                      {
 101   2                              for(j=0;j<MessageGroup_length;j++)
 102   2                                      {
 103   3                                              WriteMessageGroup(i,j,0);
 104   3                                      }
 105   2                      }               
 106   1              RawMessageNum=0;                
 107   1                      
 108   1              for(i=0;i<ExtTelNum;i++)
 109   1                      {
 110   2                              WriteExtTelState(i,exttel_hold);
 111   2                              ReadExtTelTime(i);                      //分机时间初始化
 112   2                              WriteExtTelTime(i,0);
 113   2                      }       
 114   1      
 115   1              for(i=0;i<OUTSIDETELNUM;i++)
 116   1                      {
 117   2                              WriteOutTelState(i,outtel_hold);
C51 COMPILER V7.06   COMMUNICATION                                                         11/15/2007 09:02:23 PAGE 3   

 118   2                              ReadOutTelState(i);
 119   2                      }       
 120   1                      
 121   1              for(i=0;i<CIDLENGTH;i++)

⌨️ 快捷键说明

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