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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? can.lst

?? 基于MST-G240128點陣液晶的 狀態(tài)機機制 人機界面四級滾屏菜單 源代碼 ,帶時間片機制模擬操作系統(tǒng)
?? LST
?? 第 1 頁 / 共 3 頁
字號:
C51 COMPILER V7.02a   CAN                                                                  08/31/2006 08:52:05 PAGE 4   

 176          ** 函數(shù)名稱: CAN_SendMsg()
 177          ** 功能描述: 發(fā)送msg.
 178          ** 入口參數(shù): 無
 179          ** 出口參數(shù): 無
 180          ** 全局變量: 無
 181          ** 調(diào)用模塊: 無
 182          ** 說明: 
 183          ****************************************************************************/
 184          /*
 185          void CAN_SendMsg(int8 MsgNum, uint8 ByteNum)
 186          {
 187             uint8 i = 0;   
 188          
 189             SFRPAGE  = CAN0_PAGE;        // IF1 already set up for TX
 190             CAN0ADR  = IF1CMDMSK;        // Point to Command Mask 1
 191             CAN0DAT  = 0x0087;           // Config to WRITE to CAN RAM, write data bytes,
 192                                          // set TXrqst/NewDat, Clr IntPnd
 193          
 194             CAN0ADR   = IF1ARB2;         // Point to Arbitration2 register
 195             CAN0DATH |= 0x80;            // MsgVal = 1, Msg Valid.
 196             CAN0ADR   = IF1DATA1;        // Point to 1st byte of Data Field
 197          
 198             CAN0DATH = CAN_SendDATA[i];  // Autoincrement through IF data bytes
 199             if(i > ByteNum )             // DATA0 
 200               goto CAN_Send_DONE; 
 201          
 202             i++;
 203             CAN0DATL = CAN_SendDATA[i];  // DATA1 
 204             if(i > ByteNum )
 205               goto CAN_Send_DONE;
 206          
 207             i++;
 208             CAN0DATH = CAN_SendDATA[i];  // DATA2
 209             if(i > ByteNum )
 210               goto CAN_Send_DONE;
 211          
 212             i++;
 213             CAN0DATL = CAN_SendDATA[i];  // DATA3 
 214             if(i > ByteNum )
 215               goto CAN_Send_DONE;
 216          
 217             i++;
 218             CAN0DATH = CAN_SendDATA[i];  // DATA4 
 219             if(i > ByteNum )
 220               goto CAN_Send_DONE;
 221          
 222             i++;
 223             CAN0DATL = CAN_SendDATA[i];  // DATA5 
 224             if(i > ByteNum )
 225               goto CAN_Send_DONE;
 226          
 227             i++;
 228             CAN0DATH = CAN_SendDATA[i];  // DATA6 
 229             if(i > ByteNum )
 230               goto CAN_Send_DONE;
 231            
 232             i++;
 233             CAN0DATL = CAN_SendDATA[i];  // DATA7
 234             if(i > ByteNum )
 235               goto CAN_Send_DONE;
 236          
 237             CAN_Send_DONE:               // CAN_Send_DONE
C51 COMPILER V7.02a   CAN                                                                  08/31/2006 08:52:05 PAGE 5   

 238             CAN0ADR = IF1CMDRQST;        // Point to Command Request Reg.
 239             CAN0DATL = MsgNum;           // Move new data for TX to Msg Obj "MsgNum"
 240          }
 241          */
 242          
 243          
 244          /****************************************************************************
 245          ** 函數(shù)名稱: CAN_RecvMsg()
 246          ** 功能描述: 接收msg.
 247          ** 入口參數(shù): 無
 248          ** 出口參數(shù): 無
 249          ** 全局變量: 無
 250          ** 調(diào)用模塊: 無
 251          ** 說明: 
 252          ****************************************************************************/
 253          /*
 254          void CAN_RecvMsg(int8 MsgNum)
 255          {
 256             SFRPAGE  = CAN0_PAGE;       // IF1 already set up for RX
 257             CAN0ADR  = IF2CMDRQST;      // Point to Command Request Reg.
 258             CAN0DATL = MsgNum;          // Move new data for RX from Msg Obj "MsgNum"
 259                                         // Move new data to a
 260             CAN0ADR  = IF2DATA1;        // Point to 1st byte of Data Field
 261          
 262             CAN_RecvDATA[0] = CAN0DATH;
 263             CAN_RecvDATA[1] = CAN0DATL;
 264             CAN_RecvDATA[2] = CAN0DATH;
 265             CAN_RecvDATA[3] = CAN0DATL;
 266             CAN_RecvDATA[4] = CAN0DATH;
 267             CAN_RecvDATA[5] = CAN0DATL;
 268             CAN_RecvDATA[6] = CAN0DATH;
 269             CAN_RecvDATA[7] = CAN0DATL;
 270          }
 271          */
 272          
 273          
 274          /****************************************************************************
 275          ** 函數(shù)名稱: CAN_ISR()
 276          ** 功能描述: CAN控制器中斷服務(wù)程序.
 277          ** 入口參數(shù): 無
 278          ** 出口參數(shù): 無
 279          ** 全局變量: 無
 280          ** 調(diào)用模塊: 無
 281          ** 說明: 
 282          ****************************************************************************/
 283          /*
 284          void CAN_ISR(void) interrupt 19
 285          {
 286             unsigned char CanSTATUS, ucTMP;
 287          
 288             CanSTATUS = CAN0STA;
 289             // Bit7: BOff:  Busoff Status; 
 290                  //  0/1: Not BusOff / BusOff.  
 291             // Bit6: EWarn: Warning Status;
 292                  //  0/1: BothEML < 96 / At Least OneEML > 96. 
 293             // Bit5: EPass: Error Passive; 
 294                  //   0/1: CAN Core IS Error Active / error passive state.
 295             // Bit4: RxOk:  Received    a Message Successfully, Cleared by SoftWare.
 296             // Bit3: TxOk:  Transmitted a Message Successfully, Cleared by SoftWare.
 297             // Bit[2..0]:   LEC[2..0]:  Last Error Code. Type of the last error to occur on the CAN bus
 298             // 0: No Error
 299             // 1: Stuff Error: 位填充錯誤 
C51 COMPILER V7.02a   CAN                                                                  08/31/2006 08:52:05 PAGE 6   

 300             // 2: Form Error:  接收幀格式錯誤
 301             // 3: AckError:    對方接收CAN控制器無應(yīng)答
 302             // 4: Bit1Error:   發(fā)送隱性電平“1”,監(jiān)測為“0” 
 303             // 5: Bit0Error:   發(fā)送顯性電平“0”,監(jiān)測為“1”,應(yīng)答錯誤等
 304             // 6: CRCError:    接收數(shù)據(jù)的CRC校驗碼錯誤
 305             // 7: Unused:      無CAN事件發(fā)生
 306          
 307             if( (CanSTATUS&0x10) != 0 )           // RX OK.
 308             {                                  
 309                CAN0STA = (CAN0STA & 0xEF) | 0x07; // Reset RxOk, Set LEC to NoChange
 310                receive_data (0x01);               // Up to now, we have only one RX message
 311             }
 312             if( (CanSTATUS&0x08) != 0)            // Tx OK.
 313             {                                     
 314                CAN0STA = (CAN0STA & 0xF7) | 0x07; // Reset TxOk, set LEC to NoChange
 315             }
 316          
 317                  ucTMP = CanSTATUS & 0x07;
 318             if( ( ucTMP != 0) && ( ucTMP != 7) )  // Not Equal 0 AND Equal 7.
 319             {                                     // CAN Controllor Error Process.
 320                switch( ucTMP )                                   
 321                {
 322                             case 1: 
 323                                            break; 
 324                             case 2: 
 325                                            break; 
 326                             case 3: 
 327                                            break; 
 328                             case 4: 
 329                                            break; 
 330                             case 5: 
 331                                            break; 
 332                             case 6: 
 333                                            break; 
 334                             default: 
 335                                            break; 
 336                          }
 337                CAN0STA = CAN0STA | 0x07;         // Set LEC to NoChange
 338             }
 339          }
 340          */
 341          
 342          
 343          /*
 344             CAN0CN / CANCTRL   // CAN Control Register     
 345             // Configuration Change Enable CCE and INIT
 346             // Bit7: CAN Test Mode Enable bit.
 347             // Bit6: CAN Configuration Change Enable bit, "CCE".
 348             // Bit5: CAN Disable Automatic Retransmission bit.
 349             // Bit4: CAN Module Interrupt Flag.
 350             // Bit3: CAN Module Error Interrupt Enable Bit.
 351             // Bit2: CAN Status change Interrupt Enable Bit.
 352             // Bit1: CAN Module Interrupt Enable Bit, "INIT".
 353             // Bit0: CAN Initialization bit.
 354          
 355             CAN0STA / CANSTAT   // Status Register
 356             // Bit7: BOff:  Busoff Status; 0/1: Not BusOff   / BusOff.  
 357             // Bit6: EWarn: Warning Status;0/1: BothEML < 96 / At Least OneEML > 96. 
 358             // Bit5: EPass: Error Passive; 0/1: CAN Core IS Error Active / error passive state.
 359             // Bit4: RxOk:  Received a Message Successfully.   Cleared by SoftWare.
 360             // Bit3: TxOk:  Transmitted a Message Successfully.Cleared by SoftWare.
 361             // Bit[2..0]: LEC[2..0]: Last Error Code. Type of the last error to occur on the CAN bus

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91啦中文在线观看| 日韩一区欧美小说| 国产一区二区美女诱惑| 亚洲毛片av在线| 一区二区三区成人在线视频| 亚洲一区二区在线免费看| 亚洲人成网站在线| 婷婷综合另类小说色区| 蜜臀91精品一区二区三区| 国产老肥熟一区二区三区| 成人国产精品免费观看| 欧洲一区二区三区在线| 欧美日韩亚洲综合一区二区三区| 91精品欧美久久久久久动漫| 久久久久久久久97黄色工厂| 国产精品入口麻豆九色| 五月激情六月综合| 波多野结衣一区二区三区| 欧美丝袜丝nylons| 国产精品丝袜久久久久久app| 亚洲午夜久久久久中文字幕久| 欧美aaaaaa午夜精品| 色综合天天做天天爱| 精品欧美乱码久久久久久1区2区 | av中文字幕在线不卡| 欧美日本一区二区三区| 日韩亚洲欧美综合| 亚洲一区在线视频观看| 99久久综合狠狠综合久久| 欧美mv日韩mv亚洲| 免费成人av资源网| 日韩欧美第一区| 日韩精品一卡二卡三卡四卡无卡| 99久久精品免费看| 亚洲精品视频一区二区| 国产成人欧美日韩在线电影| 91精品国模一区二区三区| 午夜精品视频一区| 91精品国产高清一区二区三区 | 欧美中文字幕一区二区三区 | 久久综合九色综合欧美就去吻| 亚洲三级在线免费观看| 91免费视频观看| 一区二区三区高清| 91精品国产色综合久久久蜜香臀| 日韩电影在线观看电影| 久久免费电影网| 色综合久久久久久久久久久| 亚洲成人一二三| 久久婷婷综合激情| 在线观看日韩电影| 国产一区视频在线看| 亚洲午夜激情网站| 国产视频一区在线播放| 色婷婷精品大视频在线蜜桃视频 | 三级成人在线视频| 精品国产91洋老外米糕| 欧美午夜片在线观看| 国产成人免费在线| 亚洲图片有声小说| 国产精品色在线| 日韩一级视频免费观看在线| 在线免费一区三区| 不卡视频一二三四| 国产伦精一区二区三区| 亚洲五码中文字幕| 亚洲一区在线视频观看| 国产精品久久网站| 亚洲欧洲日本在线| 国产精品久久久久久久裸模| 日韩欧美激情四射| 91精品在线一区二区| 欧美三级电影网站| 6080日韩午夜伦伦午夜伦| 欧美在线制服丝袜| 欧美日韩一区二区三区不卡| 欧美性三三影院| 欧美丝袜丝nylons| 日韩一区二区三区视频| 欧美在线影院一区二区| 国产亚洲人成网站| 久久久国际精品| 国产精品蜜臀av| 亚洲欧美成人一区二区三区| 亚洲欧美日韩成人高清在线一区| 亚洲女与黑人做爰| 麻豆精品在线看| 成人av片在线观看| 欧美一区二区大片| 欧美韩国一区二区| 日日噜噜夜夜狠狠视频欧美人| 日韩电影在线一区| 成人午夜视频福利| 日韩欧美一二三四区| 国产精品情趣视频| 美女视频第一区二区三区免费观看网站 | 免费人成黄页网站在线一区二区| 国产麻豆精品在线| 欧美精品久久99| 亚洲精品欧美综合四区| 精品亚洲porn| 3d动漫精品啪啪一区二区竹菊| 日本一二三四高清不卡| 国模一区二区三区白浆| 欧美日韩在线三级| 亚洲最新在线观看| 99久久久精品| 国产欧美日韩视频一区二区| 日韩福利视频导航| 在线播放中文字幕一区| 一区二区三区影院| 一本一道久久a久久精品综合蜜臀| 精品国产乱子伦一区| 日韩av一级片| 久久亚洲综合色| 精品一区二区三区免费| 久久综合九色综合久久久精品综合 | 亚洲一区免费视频| 欧美日韩国产综合一区二区三区| 中文字幕在线观看一区二区| www.亚洲精品| 亚洲一二三区不卡| 国产成人精品综合在线观看 | 日韩国产精品大片| 欧美xxx久久| 成人黄页毛片网站| 亚洲国产一区视频| 91精品国产综合久久蜜臀| 麻豆精品视频在线观看视频| 欧美精品一区二区三区高清aⅴ| 国产毛片精品视频| 亚洲国产欧美一区二区三区丁香婷| 精品视频999| av资源站一区| 九九九久久久精品| 午夜激情一区二区三区| 久久九九久久九九| 欧美日韩一区二区三区在线| 国产精品系列在线观看| 亚洲午夜三级在线| 亚洲精选视频免费看| 久久久久久毛片| 91精品国产综合久久久久久久 | 欧美一区二区女人| 91视视频在线观看入口直接观看www| 亚洲第一av色| 亚洲国产三级在线| 中文字幕中文字幕一区二区| 久久综合九色欧美综合狠狠| 777xxx欧美| 精品裸体舞一区二区三区| 欧美久久久久免费| 91精品欧美一区二区三区综合在 | 亚洲乱码国产乱码精品精可以看 | 五月综合激情网| 偷拍日韩校园综合在线| 免费在线一区观看| 美女www一区二区| 国产精品一区二区在线观看不卡| 美女精品一区二区| 99re这里都是精品| 免费的成人av| 日韩电影一区二区三区四区| 欧美a一区二区| 国产精品一区二区久激情瑜伽| 国产高清无密码一区二区三区| 国产精品99久久久久久有的能看| 成人午夜在线免费| 555www色欧美视频| 国产精品入口麻豆原神| 亚洲成人黄色影院| 国产69精品一区二区亚洲孕妇| 色呦呦日韩精品| 国产欧美精品一区| 亚洲午夜一区二区三区| 国产精品白丝av| 日韩三级视频中文字幕| 亚洲第一主播视频| 成人丝袜高跟foot| 精品88久久久久88久久久 | 欧美日韩精品一区二区三区四区| xnxx国产精品| 精品一区二区三区免费观看| 色88888久久久久久影院按摩 | 色香蕉久久蜜桃| 国产精品久久久久久久久久久免费看| 午夜精品久久久久久久99水蜜桃 | 国产欧美日韩精品一区| 免费成人你懂的| 日韩一区二区在线播放| 蜜臀av在线播放一区二区三区| 日本大香伊一区二区三区| 亚洲欧美日韩综合aⅴ视频| 丁香六月综合激情| 亚洲人吸女人奶水| 色av综合在线| 久久69国产一区二区蜜臀| 久久这里都是精品| 成人午夜看片网址| 一区二区三区中文字幕在线观看|