亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.lst

?? 這是CAN總線收發器SJA1000的控制程序,采用C語言編寫的,有一定參考價值,
?? LST
?? 第 1 頁 / 共 3 頁
字號:
C51 COMPILER V6.23a  MAIN                                                                  08/06/2002 16:18:58 PAGE 1   


C51 COMPILER V6.23a, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: E:\KEIL\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /************************************************************************
   2           *   廣州周立功單片機發展有限公司    http://www.zlgmcu.com              *
   3           ************************************************************************/
   4          /************************************************************************
   5           *                                                                      *
   6           *  SJA1000 BasicCAN模式的通訊測試                                                                              *
   7           *                                                                      *
   8           ************************************************************************/
   9          /************************************************************************
  10           *                                                                      *
  11           *  目的:       建立直觀的BasicCAN測試平臺                                                              *                                    
  12           *  文件名:             main.c                                                  *
  13           *                                                                      *
  14           *  模塊名:             sjanetdemo                                              *
  15           *                                                                      *
  16           *  目標系統:   任何基于任何兼容8051指令的微處理器同SJA1000組成的CAN系統*
  17           *                                                                      *
  18           *  應用語言:   Keil C51                                                *
  19           *                                                                      *
  20           ************************************************************************
  21           *  版本 :V1.0                                                          *
  22           *                                                                      *
  23           ************************************************************************
  24           *  廣州周立功單片機發展有限公司 保留所有的版權                         *
  25           ************************************************************************/
  26          
  27          #include <AT89X51.H>   
  28          #include <intrins.h>     
  29          #include  "time_module.C"                               
  30          #include  "sja_bcanFunc.C"
  31          //#include      "sja_peliConf.h"
  32          #include  "seriele.c"
  33          #include  "keyled.c"
  34          //數據類型定義
  35          #define   uchar  unsigned char                          
  36          #define   ulong  unsigned long
  37          #define   uint   unsigned int  
  38          
  39          
  40          //設置系統數據緩沖區
  41          static    uchar  data       SetSystemBuf[10];   //系統設置數據緩沖區    
  42          
  43          static    uchar  data       BandRateBuf;        //設置總線波特率值緩沖區  
  44          
  45          static    uchar  idata      EditMsSendCount;    //編輯自動發送的頻率
  46          static    uchar  idata      EditMsSendSave;         //保存自動發送的頻率
  47          
  48          static    uchar  idata      SendDataCount;          //發送數據顯示
  49          
  50          //鍵盤操作函數
  51          extern void           Write_Xdata(uint Xadr,uchar Info);    // 將info送入外部地址xadr中
  52          extern uchar      Read_Xdata(uint Xadr);                                //從外部地址xadr中讀取數據
  53          extern void       Key_Scan(void);                                               //鍵盤掃描程序
  54          extern uchar      Key_Get(void);                                                //取鍵盤值
  55          extern void       PushKey(uchar keynum);                        //將鍵值送入按鍵處理隊列
C51 COMPILER V6.23a  MAIN                                                                  08/06/2002 16:18:58 PAGE 2   

  56          extern uchar      PopKey(void);                                                 //
  57          
  58          void      Key_handle(void);                                             //處理鍵值
  59          
  60          void      FundationKey(void);                   //功能鍵
  61          void      MoveKey(void);                            //移位鍵
  62          void      SearchKey(void);                      //檢索鍵
  63          void      EnterKey(void);                       //確認鍵
  64          void      IncKey(void);                         //增加鍵
  65          void      QuitKey(void);                        //退出鍵
  66          void      CanSendKey(void);                                             //發送鍵
  67          
  68          void      EnterNext(void);                      //按確認鍵后進入下一小項處理
  69          //led  送顯
  70          #define   LED_SelBit()   disp_pt++;if(disp_pt>4)disp_pt=0//位選        
  71          extern    void      Show_LED(void);                                             //顯示處理
  72          extern    void      Write_DispBuf(uchar buf0,uchar buf1,uchar buf2,uchar buf3,uchar buf4);//寫入顯示緩沖區
  73          extern    uchar     GetLedData(void);                     //將顯示的值換算
  74          extern    void      Error_disp(uchar ErrByte);            //將錯誤字送顯
  75          
  76          void      InitCPU(void);                        //初始化函數
  77          // 配置sja1000
  78          uchar  Config_SJA(void);                        //配置sja1000
  79          void   CanRcv_Prg(void);                                //can總線數據接收后處理
  80          void   CanSend_Prg(void);                                       //can發送數據
  81          void   CanErr_Prg(void);                            //發現錯誤后處理
  82          void   CanDtOver_Prg(void);                     //超載處理
  83          void   CanWui_Prg(void);                        //喚醒中斷處理
  84          
  85          void   UartRcv_Prg(void);                                               //串口接收到數據處理
  86          
  87          void   DrecDisplay(uchar *databuf);                     //直通顯示處理函數
  88          void   TestDispPrg(void);                       //測試處理函數
  89          void   ClearDispPrg(uchar *databuf);                    //消隱處理函數
  90          void   FlightDispPrg(uchar *databuf);                   //閃爍處理函數  
  91          void   LiftCrcDispPrg(uchar *databuf);          //左循環顯示處理
  92          void   RightCrcDispPrg(uchar *databuf);         //右循環顯示處理
  93          
  94          void   AutoSendDataToCanBus(void);                              //自動發送
  95          
  96          // 外部中斷0
  97          static   uchar  bdata    CanBusFlag=0;                  //can標志
  98          sbit     CanRcv_Good=CanBusFlag^0;                              //成功接收標志
  99          sbit     CanSend_Good=CanBusFlag^1;                             //成功發送標志
 100          sbit     CanErrFlag=CanBusFlag^2;                               //can總線錯誤標志
 101          sbit     CanDtOverFlag=CanBusFlag^3;                    //can總線超載標志
 102          sbit     CanWuiFlag=CanBusFlag^4;                               //can總線喚醒中斷
 103          
 104          /*-------------------------------------------------------------------------------------------
 105           外部中斷0處理程序                     
 106           -------------------------------------------------------------------------------------------*/ 
 107          void  ex0_Val(void)  interrupt   0   using  1
 108          { 
 109   1        SJA_BCANAdr=REG_INTERRUPT;
 110   1        CanBusFlag=*SJA_BCANAdr;                                              //保存sja1000中斷標志
 111   1      }
 112          
 113          /*-------------------------------------------------------------------------------------------
 114           main程序               
 115           -------------------------------------------------------------------------------------------*/ 
 116          void      main(void)
 117          {   
C51 COMPILER V6.23a  MAIN                                                                  08/06/2002 16:18:58 PAGE 3   

 118   1          uchar status;                                               //狀態字 
 119   1              Delay_50us(100) ;                                               //50us*100=5ms
 120   1          status=Config_SJA();                                        //配置sja1000
 121   1              InitCPU();                                                              //初始化
 122   1              if(status!=0) Error_disp(status);           //配置sja1000出現錯誤
 123   1              else
 124   1          { Disp_Can();                                       //無措顯示CAN1
 125   2            Exe_Scon(0xaa,0,0);
 126   2              }
 127   1          Write_Xdata(Mode_Select,0x00);
 128   1                                                                                              //設置并行方式
 129   1              TimeOut_Start(20);                                                      //20*50us=1ms,定時周期1ms
 130   1              while(1)
 131   1              {
 132   2                      if(_testbit_(T0IR))                                             //1ms時間到
 133   2                      {
 134   3                        LED_SelBit();                                                 //位選
 135   3                        Key_Scan();
 136   3                        Show_LED();
 137   3                        AutoSendDataToCanBus();
 138   3                    TimeOut_Start(20);                                        //20*50us=1ms,定時周期1ms
 139   3                      }
 140   2              //      CanBusFlag=Read_Xdata(REG_INTERRUPT);
 141   2              if(_testbit_(CanRcv_Good))  CanRcv_Prg();       //是接收中斷標志
 142   2                      if(_testbit_(CanSend_Good)) CanSend_Prg();      //是發送中斷標志
 143   2              if(_testbit_(CanErrFlag))   CanErr_Prg();       //是錯誤中斷標志
 144   2                      if(_testbit_(CanDtOverFlag))CanDtOver_Prg();//是超載中斷標志
 145   2              if(_testbit_(CanWuiFlag))   CanWui_Prg();       //是喚醒中斷標志
 146   2              if(_testbit_(UartRcvGood))  UartRcv_Prg();      //串口接收成功標志
 147   2      
 148   2                      Key_handle();                                                           //鍵盤隊列處理
 149   2              }
 150   1      
 151   1      }
 152          
 153          
 154          /*-------------------------------------------------------------------------------------------
 155           按鍵隊列處理程序             
 156           -------------------------------------------------------------------------------------------*/ 
 157          void      Key_handle(void)
 158          {
 159   1              uchar TempData; 
 160   1          TempData=PopKey();
 161   1              switch(TempData)
 162   1          {
 163   2                case  Key0:
 164   2                      SearchKey();
 165   2                              break;
 166   2                case  Key1:
 167   2                      IncKey();
 168   2                              break;
 169   2                case  Key2:
 170   2                              break;
 171   2                case  Key3:
 172   2                  QuitKey();
 173   2                              break;
 174   2            case      Key4:
 175   2                      FundationKey();
 176   2                              break;
 177   2                case  Key5:
 178   2                      MoveKey();
 179   2                              break;
C51 COMPILER V6.23a  MAIN                                                                  08/06/2002 16:18:58 PAGE 4   

 180   2            case      Key6:
 181   2                  EnterKey();
 182   2                              break;
 183   2                case  Key7:
 184   2                      CanSendKey();
 185   2                              break;
 186   2      
 187   2            default:
 188   2                              break;
 189   2              }
 190   1      
 191   1      }
 192          
 193          
 194          
 195          //功能鍵處理
 196          bit       FunckeyFlag=0;                                      //進入功能標志  
 197          static    uchar     data FunckeyCount;            //功能選項計數
 198          void      FundationKey(void)
 199          {
 200   1        ClearDispAttr();  
 201   1        if(FunckeyFlag)
 202   1        {
 203   2          if(++FunckeyCount>3)FunckeyCount=0;
 204   2              switch(FunckeyCount)
 205   2              {
 206   3            case  0:
 207   3                      FunckeyFlag=0;
 208   3                              Disp_Can();                               //上電顯示CAN1
 209   3                              DispFlag=0x00;
 210   3                              break;
 211   3                case  1:
 212   3                      Write_DispBuf(0,0x0b,0x01,0,0);    //進入b功能
 213   3                              FlightLed3=1;                      //led3閃爍
 214   3                              break;
 215   3                case  2:
 216   3                      Write_DispBuf(0,0x0c,0x01,0,0);       //進入c功能
 217   3                              FlightLed3=1;                         //led3閃爍
 218   3                              break;
 219   3                case  3:
 220   3                      Write_DispBuf(0,0x05,0x0d,0,0);       
 221   3                          break;
 222   3                default:
 223   3                      break;
 224   3              }
 225   2        }
 226   1        else
 227   1        {
 228   2           FunckeyFlag=1;
 229   2           Write_DispBuf(0,0x0a,0x01,0,0);       //a1功能
 230   2               FlightLed3=1;                         //led3閃爍
 231   2        }
 232   1      }
 233          
 234           //檢索鍵處理
 235          static    uchar  data  SearchCount;        //檢索計數器
 236          void      SearchKey(void)                  //檢索鍵
 237          {
 238   1        if(FunckeyFlag)
 239   1        {
 240   2          switch(DispBuf[1])
 241   2              {
C51 COMPILER V6.23a  MAIN                                                                  08/06/2002 16:18:58 PAGE 5   

 242   3            case  0x0a:
 243   3                      SearchCount=DispBuf[2];        //檢索a功能項  
 244   3                      if(++SearchCount>3)SearchCount=1;
 245   3                              DispBuf[2]=SearchCount;
 246   3                              break;
 247   3                case  0x0b:                           //檢索b功能項 
 248   3                      SearchCount=DispBuf[2];         
 249   3                      if(++SearchCount>10)SearchCount=1;
 250   3                              DispBuf[2]=SearchCount;
 251   3                              break;
 252   3                case  0x0c:
 253   3                      
 254   3                default:
 255   3                      break;
 256   3              }
 257   2        }//if結束
 258   1      }
 259          
 260          
 261          //移位鍵處理
 262          static    bit   MoveFlag=0;            //移位計數    

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美性xxxxxxxx| 久久蜜桃一区二区| www成人在线观看| 亚洲视频一区二区在线| 日韩va亚洲va欧美va久久| 成人小视频在线| 欧美一区二区三区四区视频| 国产精品成人免费精品自在线观看| 天天色综合天天| 91网址在线看| 国产亚洲午夜高清国产拍精品| 亚洲第一激情av| 波多野结衣中文字幕一区| 日韩精品一区二区三区三区免费 | 制服丝袜成人动漫| 国产精品久久久久影院色老大| 美日韩一区二区| 欧美精品粉嫩高潮一区二区| 最近日韩中文字幕| 国产传媒一区在线| 欧美不卡在线视频| 日本怡春院一区二区| 精品视频在线免费看| 亚洲黄色免费电影| 91网站视频在线观看| 中文字幕巨乱亚洲| 国产精品综合久久| 久久在线观看免费| 国产一区二区三区免费看| 精品噜噜噜噜久久久久久久久试看| 天天爽夜夜爽夜夜爽精品视频| 欧美色手机在线观看| 亚洲一二三四久久| 欧美色视频在线| 亚洲影院在线观看| 欧美日韩精品高清| 五月天视频一区| 日韩一区二区在线观看视频播放| 日韩精品视频网| 日韩免费观看2025年上映的电影| 奇米亚洲午夜久久精品| 日韩午夜精品视频| 黄色成人免费在线| 中文字幕第一区二区| 97aⅴ精品视频一二三区| 自拍偷拍欧美精品| 在线亚洲精品福利网址导航| 亚洲高清视频的网址| 欧美精品丝袜久久久中文字幕| 免费成人在线视频观看| 日韩欧美国产麻豆| 国产高清亚洲一区| 国产精品少妇自拍| 欧洲av一区二区嗯嗯嗯啊| 午夜国产不卡在线观看视频| 欧美成人vr18sexvr| 粉嫩高潮美女一区二区三区| 国产精品精品国产色婷婷| 色视频一区二区| 免费久久99精品国产| 国产日韩欧美激情| 热久久国产精品| 91丨九色丨蝌蚪丨老版| 国产婷婷一区二区| 91麻豆精品秘密| 午夜精品久久久| 久久久久久免费| 在线观看日韩国产| 蜜桃在线一区二区三区| 中文字幕欧美激情| 欧美日韩在线直播| 久久91精品久久久久久秒播| 欧美在线观看18| 国产精品丝袜91| 裸体歌舞表演一区二区| 国产福利不卡视频| 欧美日韩国产一二三| 蜜臀久久久久久久| 亚洲va欧美va人人爽午夜| 国产一区在线不卡| 亚洲欧美日韩精品久久久久| 国产精品资源站在线| 一区二区三区四区五区视频在线观看| 欧美一级日韩不卡播放免费| proumb性欧美在线观看| 青草av.久久免费一区| 国产精品电影一区二区| 欧美成人精品1314www| 在线看一区二区| 不卡一区在线观看| 另类的小说在线视频另类成人小视频在线 | 一区二区三区免费在线观看| 欧美成人激情免费网| 欧美色图天堂网| 97久久精品人人做人人爽50路| 久久精品国产一区二区三| 一区二区三区视频在线看| 欧美国产精品一区二区| 日韩一区二区影院| 欧美日韩在线直播| 在线亚洲欧美专区二区| 丰满白嫩尤物一区二区| 国产真实乱子伦精品视频| 日本强好片久久久久久aaa| 一区二区欧美在线观看| 中文字幕中文字幕在线一区| 久久久精品国产免费观看同学| 91精品国产日韩91久久久久久| 91麻豆国产精品久久| aa级大片欧美| 99久久久国产精品| 成人污污视频在线观看| 国产精品123| 亚洲视频免费在线观看| 国产精品乱码人人做人人爱| 国产农村妇女毛片精品久久麻豆| 精品国产91九色蝌蚪| 精品国产髙清在线看国产毛片| 欧美一区二区在线免费播放| 91麻豆精品国产自产在线| 欧美日韩国产大片| 欧美一区在线视频| 日韩精品在线一区二区| 精品国产青草久久久久福利| 精品久久久三级丝袜| 精品噜噜噜噜久久久久久久久试看| 日韩精品中文字幕在线不卡尤物| 欧美mv日韩mv国产网站| 精品剧情v国产在线观看在线| xnxx国产精品| 中文成人av在线| 亚洲蜜臀av乱码久久精品| 亚洲综合色在线| 婷婷成人综合网| 精品在线免费观看| 国产成人精品aa毛片| 91性感美女视频| 欧美色国产精品| 日韩欧美在线1卡| 欧美经典一区二区三区| 最新欧美精品一区二区三区| 亚洲第一会所有码转帖| 久久99精品久久久久婷婷| 国产高清在线观看免费不卡| 99免费精品视频| 欧美美女直播网站| 国产午夜精品福利| 怡红院av一区二区三区| 麻豆精品视频在线| 成人妖精视频yjsp地址| 欧美日韩一区二区三区不卡| 2021中文字幕一区亚洲| 亚洲女同女同女同女同女同69| 日韩精品一卡二卡三卡四卡无卡| 国产麻豆精品theporn| 91蝌蚪porny| 精品久久国产字幕高潮| 亚洲欧美一区二区在线观看| 日韩电影免费一区| 国产不卡视频在线播放| 欧美日韩国产另类一区| 日本一区二区三区在线观看| 亚洲1区2区3区4区| 成人激情综合网站| 日韩一区二区三区三四区视频在线观看 | 男女男精品视频| 99r国产精品| 欧美xxxxx裸体时装秀| 一区二区三区美女| 国产精品亚洲成人| 777亚洲妇女| 亚洲人快播电影网| 国精品**一区二区三区在线蜜桃| 色婷婷av一区二区三区软件 | 久久亚洲综合色| 亚洲精品免费播放| 成人污视频在线观看| 2020国产精品自拍| 图片区小说区区亚洲影院| av成人老司机| 久久久99精品免费观看| 日本aⅴ亚洲精品中文乱码| 91麻豆精品在线观看| 国产精品午夜免费| 国精产品一区一区三区mba视频 | 91麻豆自制传媒国产之光| 精品电影一区二区三区 | 欧美日韩精品欧美日韩精品一| 国产精品久久久久影院色老大| 精品一区二区免费在线观看| 欧美老年两性高潮| 亚洲精品欧美激情| 94色蜜桃网一区二区三区| 欧美国产欧美综合| 国产成人亚洲精品青草天美| 久久亚洲一级片| 国模一区二区三区白浆| 精品动漫一区二区三区在线观看| 天堂av在线一区| 欧美一级理论性理论a|