wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 221|回復: 2
打印 上一主題 下一主題
收起左側

STC32G單片機CAN通訊測試完整實現方案 源程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:880573 發表于 2025-12-12 20:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. #include <STC32G.H>
  2. #include <intrins.h>

  3. // CAN 相關寄存器定義(STC32G 內置)
  4. sfr CANCON  = 0x90;  // CAN 控制寄存器
  5. sfr CANSTA  = 0x91;  // CAN 狀態寄存器
  6. sfr CANINT  = 0x92;  // CAN 中斷寄存器
  7. sfr CANBTR0 = 0x93;  // 波特率配置0
  8. sfr CANBTR1 = 0x94;  // 波特率配置1
  9. sfr CANID   = 0x95;  // ID 寄存器(擴展幀需配合 CANID1/CANID2)
  10. sfr CANID1  = 0x96;
  11. sfr CANID2  = 0x97;
  12. sfr CANDAT  = 0x98;  // 數據寄存器
  13. sfr CANDAT1 = 0x99;
  14. sfr CANDAT2 = 0x9A;
  15. sfr CANDAT3 = 0x9B;
  16. sfr CANDAT4 = 0x9C;
  17. sfr CANDAT5 = 0x9D;
  18. sfr CANDAT6 = 0x9E;
  19. sfr CANDAT7 = 0x9F;

  20. // CAN 模式定義
  21. #define CAN_MODE_NORMAL   0x00  // 正常模式
  22. #define CAN_MODE_LOOPBACK 0x40  // 回環模式(自測)
  23. #define CAN_BAUD_500K     0x01  // 500kbps(8MHz晶振)

  24. // 全局變量
  25. unsigned char can_rx_buf[8];  // 接收緩沖區
  26. bit can_rx_flag = 0;          // 接收完成標志

  27. /**
  28. * @brief 系統初始化(8MHz晶振)
  29. */
  30. void Sys_Init(void)
  31. {
  32.     CLKSEL = 0x00;  // 選擇外部晶振(8MHz)
  33.     _nop_();
  34.     _nop_();
  35. }

  36. /**
  37. * @brief CAN 初始化
  38. * @param mode: 工作模式(正常/回環)
  39. */
  40. void CAN_Init(unsigned char mode)
  41. {
  42.     // 1. 配置IO口(P1.0=CAN_TX,P1.1=CAN_RX)
  43.     P1M1 &= 0xFC; P1M0 |= 0x03;  // P1.0/P1.1 推挽輸出
  44.     P1PU |= 0x03;                // 上拉使能
  45.    
  46.     // 2. 進入初始化模式
  47.     CANCON = 0x80;  // 置位INIT位,進入初始化模式
  48.     while(!(CANSTA & 0x80));     // 等待初始化模式確認
  49.    
  50.     // 3. 波特率配置(8MHz晶振 → 500kbps)
  51.     // 分頻系數: BRP=0 → TQ = 1/(8MHz/(0+1)) = 0.125μs
  52.     // 同步段: 1TQ, 時間段1: 6TQ, 時間段2: 1TQ → 總8TQ
  53.     // 波特率 = 1/(8*0.125μs) = 1Mbps → 調整為500kbps(BRP=1)
  54.     CANBTR0 = 0x01;  // BRP[5:0] = 1 → 分頻系數=2 → TQ=0.25μs
  55.     CANBTR1 = 0x1C;  // SJW=1TQ, BS1=6TQ, BS2=1TQ → 總8TQ → 500kbps
  56.    
  57.     // 4. 工作模式配置
  58.     CANCON = mode | 0x00;  // 清除INIT位,退出初始化模式
  59.     while(CANSTA & 0x80);  // 等待退出初始化模式
  60. }

  61. /**
  62. * @brief CAN 發送數據(標準幀,8字節)
  63. * @param id: 標準ID(11位)
  64. * @param data: 發送數據緩沖區
  65. * @param len: 數據長度(1-8)
  66. * @return 0:成功 1:失敗
  67. */
  68. unsigned char CAN_Send(unsigned int id, unsigned char *data, unsigned char len)
  69. {
  70.     if(len > 8) len = 8;
  71.    
  72.     // 1. 等待發送緩沖區空閑
  73.     if(CANSTA & 0x08) return 1;  // 發送緩沖區忙
  74.    
  75.     // 2. 寫入ID(標準幀,11位)
  76.     CANID = (id >> 3) & 0xFF;    // ID[10:3]
  77.     CANID1 = (id << 5) & 0xE0;   // ID[2:0]
  78.     CANID1 &= ~0x10;             // 標準幀(IDE=0)
  79.    
  80.     // 3. 寫入數據長度
  81.     CANID1 |= len & 0x0F;        // DLC[3:0]
  82.    
  83.     // 4. 寫入數據
  84.     CANDAT  = data[0];
  85.     CANDAT1 = data[1];
  86.     CANDAT2 = data[2];
  87.     CANDAT3 = data[3];
  88.     CANDAT4 = data[4];
  89.     CANDAT5 = data[5];
  90.     CANDAT6 = data[6];
  91.     CANDAT7 = data[7];
  92.    
  93.     // 5. 啟動發送
  94.     CANCON |= 0x08;  // 置位TR位,啟動發送
  95.     while(CANSTA & 0x08);       // 等待發送完成
  96.    
  97.     // 6. 檢查發送結果
  98.     if(CANSTA & 0x10)
  99.     {
  100.         CANSTA &= ~0x10;  // 清除發送成功標志
  101.         return 0;
  102.     }
  103.     else
  104.     {
  105.         return 1;  // 發送失敗
  106.     }
  107. }

  108. /**
  109. * @brief CAN 接收中斷服務函數
  110. */
  111. void CAN_ISR(void) interrupt 19  // CAN中斷號為19
  112. {
  113.     unsigned char i, len;
  114.    
  115.     // 檢查接收中斷標志
  116.     if(CANINT & 0x01)
  117.     {
  118.         // 讀取數據長度
  119.         len = CANID1 & 0x0F;
  120.         if(len > 8) len = 8;
  121.         
  122.         // 讀取數據
  123.         can_rx_buf[0] = CANDAT;
  124.         can_rx_buf[1] = CANDAT1;
  125.         can_rx_buf[2] = CANDAT2;
  126.         can_rx_buf[3] = CANDAT3;
  127.         can_rx_buf[4] = CANDAT4;
  128.         can_rx_buf[5] = CANDAT5;
  129.         can_rx_buf[6] = CANDAT6;
  130.         can_rx_buf[7] = CANDAT7;
  131.         
  132.         // 清除接收中斷標志
  133.         CANINT &= ~0x01;
  134.         can_rx_flag = 1;  // 設置接收完成標志
  135.     }
  136. }

  137. /**
  138. * @brief 主函數(測試流程)
  139. */
  140. void main(void)
  141. {
  142.     unsigned char tx_data[8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08};
  143.     unsigned char rx_len, i;
  144.    
  145.     // 1. 初始化
  146.     Sys_Init();
  147.     CAN_Init(CAN_MODE_NORMAL);  // 正常模式(自測用CAN_MODE_LOOPBACK)
  148.    
  149.     // 2. 開啟CAN中斷
  150.     EA = 1;          // 總中斷使能
  151.     CANINT = 0x01;   // 使能接收中斷
  152.     CANCON |= 0x20;  // 使能CAN中斷
  153.    
  154.     // 3. 循環發送+接收測試
  155.     while(1)
  156.     {
  157.         // 每500ms發送一次數據
  158.         CAN_Send(0x123, tx_data, 8);
  159.         
  160.         // 發送數據自增(便于觀察)
  161.         for(i=0; i<8; i++) tx_data[i]++;
  162.         
  163.         // 延時500ms(簡易延時,實際建議用定時器)
  164.         for(i=0; i<200; i++) _nop_();
  165.         
  166.         // 檢查接收數據
  167.         if(can_rx_flag)
  168.         {
  169.             can_rx_flag = 0;  // 清除標志
  170.             // 處理接收數據(此處僅示例,可根據需求修改)
  171.             // 例如:串口打印接收數據、LED指示等
  172.         }
  173.     }
  174. }
復制代碼
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:123917 發表于 2025-12-13 10:02 | 只看該作者
好資料,學習了
回復

使用道具 舉報

板凳
ID:1164914 發表于 2025-12-13 21:34 | 只看該作者
很好,學習學習
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
欧美日韩美女一区二区| 国产黄视频在线| 亚洲天堂影视av| 中文字幕亚洲一区二区av在线| 中文精品电影| 欧美一级在线| 青青草在线播放| 国产一级片网站| 精品国产www| 性欧美精品中出| 乱妇乱女熟妇熟女网站| 国产日韩欧美精品| 久久久久久久电影一区| 日韩女优视频免费观看| 亚洲丝袜自拍清纯另类| 精品无码三级在线观看视频| 狠狠做深爱婷婷综合一区| 成人性生交大片免费观看网站| 天天av综合网| fc2ppv素人在线| 最近2018年在线中文字幕高清| 无码免费一区二区三区| 亚洲黄色免费视频| 手机在线国产视频| 8x8ⅹ国产精品一区二区二区| 亚洲综合在线做性| 97国产在线视频| 国产一区二区三区四区福利| 6080国产精品一区二区| 亚洲影视在线观看| 国产夜色精品一区二区av| 男女视频一区二区| 欧美三区在线| 俺要去色综合狠狠| 中文在线免费一区三区| 中国字幕a在线看韩国电影| 91在线看片| 美臀av在线| 先锋影音资源999| 91看片免费版| 麻豆精品视频在线原创| 高h调教冰块play男男双性文| 337p粉嫩色噜噜噜大肥臀| 久久久久久久国产精品毛片| 日韩一级视频在线观看| 久草福利在线观看| 免费看污污网站| 三上悠亚久久精品| 久久久久久av无码免费网站下载| 久久手机视频| 好吊妞www.84com只有这里才有精品| 国产精品日韩欧美| 1769国内精品视频在线播放| 九九九久久国产免费| 中文日韩在线观看| 亚洲人成欧美中文字幕| 亚洲精品第一页| 亚洲黄色在线看| 日韩电影免费在线观看中文字幕| 欧美成人女星排行榜| 91麻豆精品国产91久久久久久久久| 91久久精品日日躁夜夜躁欧美| 亚洲图片自拍偷拍| 亚洲一区视频在线| 亚洲精品视频一区| 亚洲黄色av一区| 一区二区三区不卡视频在线观看| 国产精品久久久久久久浪潮网站 | 欧美色图片你懂的| 欧美视频在线视频| 欧美性猛交xxxx乱大交蜜桃| 亚洲成人av资源| 欧美性猛交xxxxx水多| 欧美视频在线观看免费| 日韩欧美在线中文字幕| 在线视频你懂得一区二区三区| 在线免费一区三区| 精品视频在线看| 欧美一区二区三区视频在线 | 日韩精品免费一区| 国产资源在线视频| 黄色一级二级三级| 日韩视频在线观看一区二区三区| 色哟哟在线观看视频| 97中文字幕在线观看| 水蜜桃av无码| 亚洲天堂av中文字幕| 久久国产在线观看| 无码aⅴ精品一区二区三区| 在线视频 91| 色网站免费观看| 久久综合精品视频| 九九热视频免费在线观看| 免费羞羞视频| 亚州av中文字幕在线免费观看| 成年在线观看免费人视频| 中文字幕伦理免费在线视频 | 免费看h片网站| 亚洲an天堂an在线观看| videoxxxx另类日本极品| 青青草手机在线| 欧美另类tv| 亚洲男女网站| 国产亚洲欧美日韩在线观看一区二区 | 精品国产乱码久久久久软件| 亚洲国产午夜伦理片大全在线观看网站| 亚洲日本精品| 男人日女人视频网站| 拔插拔插华人永久免费| av黄色免费网站| 国产黄色片视频| 国产内射老熟女aaaa∵| 欧美色图自拍| 美日韩黄色片| 欧美私人网站| 祥仔av免费一区二区三区四区| 校花撩起jk露出白色内裤国产精品| 中文字幕亚洲综合久久五月天色无吗''| 制服诱惑一区二区| 91老司机福利 在线| 精品久久久久久中文字幕一区奶水| 欧美成人一区二区三区片免费| 欧美激情精品久久久久| 国产精品免费看一区二区三区| 国产精品成人久久电影| 屁屁影院国产第一页| 日本一级片免费看| 中文字幕在线免费视频| 中文字幕4区| 深夜成人在线| 蜜臀久久99精品久久一区二区| 午夜亚洲激情| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | www.夜夜操.com| 免费在线超碰| 久久人人视频| 激情欧美一区二区三区| 久久亚洲春色中文字幕久久久| 精品国产老师黑色丝袜高跟鞋| 亚洲免费av电影| 国产欧美日韩专区发布| 女人色极品影院| 青青草视频成人| 一级欧美一级日韩| 成 人免费视频播放| 成年人网站在线| 男男gay无套免费视频欧美| 美女国产一区二区三区| 亚洲中国最大av网站| 亚洲国产黄色片| 国产一区视频在线| 国产女大学生av| 国产91在线播放九色| 欧洲av在线播放| 日本在线中文电影| 成人美女黄网站| 在线精品视频在线观看高清| 久久久亚洲国产美女国产盗摄| 欧美精品日韩综合在线| 69久久夜色精品国产69| 特大黑人娇小亚洲女mp4| 久久精品无码一区| 免费观看的毛片| 尤物视频在线观看| 深夜福利一区| 久99久精品视频免费观看| 亚洲电影激情视频网站| 欧美精品在线看| 欧美性视频在线播放| 91在线无精精品白丝| 亚洲 欧美 激情 另类| 污网站在线播放| 老司机精品视频在线播放| 国产一区二区在线影院| 欧美裸体一区二区三区| 国产在线高清精品| 中文字幕视频三区| 国产又粗又黄又爽| 手机看片1024久久| 91精品尤物| 成人免费观看视频| 亚洲精品一区在线观看| 国产青春久久久国产毛片| 天天躁日日躁狠狠躁av麻豆男男| 亚洲午夜在线观看视频在线| 免费在线观看视频| 久久五月天婷婷| 日本道在线视频| 日韩一卡二卡在线观看| 国产三级自拍| 成人一级福利| 久久久亚洲一区| 在线观看国产91| 国产日韩欧美91| 黄色a级三级三级三级| 99久久精品国产成人一区二区| 污视频免费在线看| 成人一区不卡| 亚洲综合在线第一页| 97在线视频一区| 国产精品久久a| 精品国自产在线观看| 搞黄视频在线观看| 久久精品久久久| 亚洲国产日日夜夜| 国产精品久久视频| 久久久久亚洲AV成人网人人小说| 少妇精品高潮欲妇又嫩中文字幕| 波多野结衣在线影院| 黄色亚洲精品| 欧美日韩三级一区二区| 国产99在线免费| 亚洲精品国产一区黑色丝袜| 一本加勒比hezyo黑人| 国产精品亚洲综合在线观看| 久久这里都是精品| 欧美国产日本高清在线 | 欧美成人性生活| 国产亚洲天堂网| 空姐吹箫视频大全| 丁香高清在线观看完整电影视频 | 国产一级片播放| 特黄aaaaaaaaa毛片免费视频| 综合伊思人在钱三区| 亚洲乱码中文字幕| 国产精国产精品| 奇米777第四色| xxxxaaa欧美另类| 国内不卡的一区二区三区中文字幕 | 亚洲精品国产精品自产a区红杏吧| 日韩av一区二区三区美女毛片| 久久久久久久福利| 在线看视频你懂得| 亚洲无吗在线| 亚洲精品一区二区三区影院| 欧美 另类 交| 91久久久久久久久久久久| sm国产在线调教视频| 老司机午夜精品| 深夜成人在线观看| 国产一区二区在线免费播放| 亚洲免费国产| 国产一区二区三区免费观看在线 | 麻豆国产高清在线播放| 美国十次综合久久| 亚洲精选一二三| 国产精品swag| 精品欧美一区二区三区免费观看| 涩爱av在线播放一区二区| 一区二区高清| 在线播放日韩专区| 一二三级黄色片| 可以在线观看的黄色网址| 日本在线电影一区二区三区| 欧美日韩精品是欧美日韩精品| 国产奶头好大揉着好爽视频| 亚洲精品久久久久久久久久久久久久 | av免费观看久久| 国产精品23p| 黄色免费在线网站| 99在线精品观看| 国产精品高清在线观看| 精品国产视频一区二区三区| 免费福利在线视频| 久久成人av少妇免费| 欧美高清在线观看| 亚洲av毛片基地| 黄色毛片在线观看| 国产激情一区二区三区| 国产成人精品一区二区在线| 欧美日韩精品在线观看视频| 哥也色在线视频| 久久精品在这里| 国产精品自拍首页| 在线观看中文字幕网站| 黄色成人小视频| 欧美特黄级在线| 人人干视频在线| 同性gay免费| 欧美久久一级| 久久精品欧美视频| www.99热| а√天堂官网中文在线| 中文字幕av在线一区二区三区| 国产精品亚洲综合| 国产xxxx孕妇| 久久亚洲道色| 日韩成人xxxx| 给我免费观看片在线电影的| 深夜福利免费在线观看| 成人av免费在线观看| julia一区二区中文久久94| 国产孕妇孕交大片孕| 91麻豆精品激情在线观看最新 | 色久视频在线观看| 精品一区二区三区免费播放| 国产精品福利在线观看| 亚洲欧美一二三区| 玖玖玖视频精品| 日韩久久久精品| 污污污www精品国产网站| 黄色网址在线播放| 亚洲国产岛国毛片在线| 日韩第一页在线观看| 在线观看私人影院w| 亚洲欧美日韩一区在线观看| 国产福利成人在线| 91亚洲欧美激情| 最新亚洲精品| 日日骚av一区| 免费一级片在线观看| 8av国产精品爽爽ⅴa在线观看 | 97国产一区二区| 欧美一级日本a级v片| 国产精品臀控福利在线观看| 亚洲神马久久| 国产精品自在线| 亚洲欧美高清视频| 欧美第一精品| 久久免费高清视频| 一级黄色a视频| 奇米狠狠一区二区三区| 久久久精品美女| 日韩欧美成人一区二区三区| 一区二区三区免费在线看| 亚洲精品久久久久中文字幕欢迎你| 久久国产柳州莫菁门| 国产欧美一区二区三区精品酒店| 欧美日韩亚洲综合| 捆绑裸体绳奴bdsm亚洲| 高清精品在线| 日韩精品一区国产麻豆| 少妇高潮惨叫久久久久| 小说区图片区亚洲| 国产亚洲欧美视频| 国产精品a成v人在线播放| caoporn成人| 久久天天躁狠狠躁夜夜躁2014| 久久精品五月天| 日韩精品一区二区三区免费观影 | 日韩一级二级三级精品视频| 精品无人区无码乱码毛片国产| 最新中文字幕在线播放| 欧美变态tickle挠乳网站| 美女视频久久久| 精品一区二区三区免费看| 在线精品国产成人综合| 波多野结衣一本一道| 日韩精品免费一区二区三区| 国产精品久久久久久久久| 一二三四日本中文字幕| 久久精品国产77777蜜臀| 日韩免费毛片| 日本按摩中出| 一区二区三区高清| 丰满人妻一区二区三区免费视频棣| 97人人在线视频| 亚洲精品美女在线观看| 日本韩国欧美中文字幕| 99久久亚洲精品蜜臀| 91精品啪在线观看麻豆免费| www.国产在线观看| 久久亚洲捆绑美女| 色乱码一区二区三区在线| 91色在线看| 国产亚洲一区精品| 国产永久免费视频| 天堂在线一区二区| 亚洲一区二区在线观| 天堂资源中文在线| 欧美日韩极品在线观看一区| 国产美女高潮视频| 男男gay无套免费视频欧美| 国产欧美日韩高清| www.撸撸| 一区二区三区中文字幕| 欧美精品黑人猛交高潮| 9l亚洲国产成人精品一区二三| 97在线视频精品| 九色国产视频| 国产午夜亚洲精品午夜鲁丝片| 欧美性猛交xxxx乱大交91| 成人在线不卡| 久久久中精品2020中文| 欧美大交乱xxxxbbbb| www久久精品| 免费观看黄网站| 精品入口麻豆88视频| 国产999精品| 日本黄色免费网站| 一区二区三区欧美在线观看| 能直接看的av| 97精品国产福利一区二区三区| 黄色一区三区| 日本午夜在线视频| 日韩欧美的一区| 国产精品久久久久久无人区| 久久成人综合网| 国内自拍视频一区| 国产精品蜜月aⅴ在线|