在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

深度解析Air780EPM模組:LuatOS下CAN總線通信的完整方案!

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2025-05-06 14:22 ? 次閱讀

本文聚焦Air780EPM的CAN通信能力,結合LuatOS實時操作系統,從底層驅動到應用層協議,詳細拆解如何實現工業級CAN總線數據傳輸,助力開發者快速落地項目。

最新資料詳見:https://docs.openluat.com/air780epm/luatos/api/core/can/

一、Can操作庫常量定義

1.1 CAN工作模式常量

can.MODE_NORMAL:

正常工作模式;

can.MODE_LISTEN:

監聽模式(僅接收,不發送);

can.MODE_TEST:

自測模式(自收自發);

can.MODE_SLEEP:

休眠模式。

1.2 CAN狀態常量

can.STATE_STOP:

停止工作狀態;

can.STATE_ACTIVE:

主動錯誤狀態(一般情況下為該狀態);

can.STATE_PASSIVE:

被動錯誤狀態(總線上錯誤較多時進入,但仍可正常收發);

can.STATE_BUSOFF:

離線狀態(總線錯誤非常多,不能收發,需手動退出);

can.STATE_LISTEN:

監聽狀態(選擇監聽模式時進入);

can.STATE_TEST:

自收自發狀態(選擇自測模式時進入);

can.STATE_SLEEP:

休眠狀態(選擇休眠模式時進入)。

1.3 回調消息類型常量

can.CB_MSG:

有新數據寫入緩存;

can.CB_TX:

數據發送完成(需通過param判斷成功/失敗);

can.CB_ERR:

錯誤報告(param為錯誤碼);

can.CB_STATE:

總線狀態變更,后續param參數是新的狀態,也可以用can.state讀出。

1.4 幀格式常量

can.EXT:擴展幀;

can.STD:標準幀。

二、Can操作庫API函數

wKgZO2gRubeAQdadAAi5_7cGeh4708.png

2.1 初始化與配置

1)初始化CAN總線

can.init(id, rx_message_cache_max)

參數:

id:總線ID(0表示can0,1表示can1,通常默認為0)。

rx_message_cache_max:接收緩存消息數最大值(默認使用平臺值)。

返回值:boolean(成功返回true,失敗返回false)。

示例:

wKgZO2gRufeAQgXYAABNDLe5yuQ955.png

2)配置CAN總線的波特率及時序參數

can.timing(id, br, PTS, PBS1, PBS2, SJW)

參數:

id:總線ID。

br:波特率(默認1Mbps)。

PTS:

傳播時間段(范圍1~8,默認5)。

PBS1:

相位緩沖段1(范圍1~8,默認4)。

PBS2:

相位緩沖段2(范圍2~8,默認3)。

SJW:

同步補償寬度(范圍1~4,默認2)。

返回值:boolean。

示例:

wKgZPGgRujyACaIsAABSbqIDDqo119.png

3)設置CAN總線工作模式

can.mode(id, mode)

參數:

id:總線ID。

mode:

模式常量(如 can.MODE_NORMAL)。

返回值:boolean。

示例:

wKgZPGgRumOAdFSPAABMWd0g-8Q844.png

4)設置消息過濾規則

can.filter(id, dual_mode, ACR, AMR)

參數:

id:總線ID。

dual_mode:是否啟用雙濾波模式。

ACR:接受代碼寄存器(過濾 ID 值)。

AMR:接受掩碼寄存器(掩碼值)。

返回值:boolean。

注意:具體實現依賴硬件特性。

5)設置CAN節點ID及類型can.node(id, node_id, id_type)

參數:

id:總線ID。

node_id:節點 ID。

id_type:ID 類型(can.EXT或can.STD)。

返回值:boolean。

示例:

wKgZO2gRupeAI3mCAABNo0Bwtiw035.png

2.2 數據與收發

1)發送CAN消息

can.tx(id, msg_id, id_type, RTR, need_ack, data)

參數:

id:總線ID。

msg_id:消息ID。

id_type:

幀類型(can.EXT 或 can.STD)。

RTR:

是否為遠程傳輸請求(true/false)。

need_ack:

是否需要應答(true/false)。

data:

數據(數組,如 {0x01, 0x02})。

返回值:無。

示例:

wKgZO2gRusyARjpWAABIg2VwJu0252.png

2)接收CAN消息

can.rx(id)

參數:id:總線ID。

返回值:消息數據(如 {id=0x123, data={0x01, 0x02}})。

示例:

wKgZO2gRuvmAYkeRAABZA62SthM866.png

2.3 狀態與事件

1)注冊事件回調函數

can.on(id, func)

參數:

id:總線ID。

func:回調函數(參數:id, type, param)。

示例:

wKgZO2gRuzCAbviwAADOxJdoVwI511.png

2)獲取當前總線狀態

can.state(id)

參數:id:總線ID。

返回值:狀態常量(如 can.STATE_ACTIVE)。

3)停止指定總線can.stop(id)

參數:id:總線ID。

4)重置總線(恢復默認配置)can.reset(id)

參數:id:總線ID。

5)反初始化總線can.deinit(id)

參數:id:總線ID。

6)啟用/禁用調試信息輸出can.debug(on_off)

參數:on_off(布爾值)。

三、CAN開發相關注意事項

3.1 初始化順序

wKgZPGgRu6GAYfS9AACmhO3XfNE642.png

3.2 消息發送與接收

使用can.tx發送消息,確保參數正確;通過can.rx拉取消息,或在回調中處理can.CB_MSG。

3.3 狀態監控

定期檢查can.state,處理離線狀態(can.STATE_BUSOFF);錯誤回調can.CB_ERR,需記錄param錯誤碼。

3.4 調試與性能

啟用can.debug(true) 輸出底層日志;接收緩存rx_message_cache_max需根據需求調整,避免消息丟失。

3.5 常見問題

如何解決can.STATE_BUSOFF離線狀態?

需先調用can.reset(id)恢復總線,再重新初始化配置。

如何確保消息發送成功?

通過can.CB_TX回調判斷發送結果,或檢查返回值(若API支持)。

如何處理高頻率消息接收?

增大rx_message_cache_max,或在回調中及時處理消息。

wKgZPGgRu_uAF6U9AAZu0-Z2mm8812.pngwKgZPGgRvAyAZ3ngAAIqztab9BY129.png

更多最新開發資料詳見:www.air780epm.cn

今天的內容就分享到這里了~

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • CAN通信
    +關注

    關注

    5

    文章

    97

    瀏覽量

    18296
  • 總線通信
    +關注

    關注

    0

    文章

    59

    瀏覽量

    11973
  • LuatOS
    +關注

    關注

    0

    文章

    91

    瀏覽量

    2160
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    COD監測革新!Air780EPM一站式替代STM32+4G模組的物聯網方案 ~

    通過將4G通信、COD數據處理與低功耗控制集成于Air780EPM芯片,本方案徹底顛覆STM32+外置模組的松散架構。實測顯示,設備啟動時間從STM32
    的頭像 發表于 05-21 16:51 ?80次閱讀
    COD監測革新!<b class='flag-5'>Air780EPM</b>一站式替代STM32+4G<b class='flag-5'>模組</b>的物聯網<b class='flag-5'>方案</b> ~

    如何解決Air780EPM開發中的調試難題?深度解析高效調試方法

    Air780EPM項目開發中,調試效率往往直接影響進度。面對代碼報錯、邏輯漏洞等常見痛點,開發者亟需一套系統化的方法論。本文將揭秘實戰中驗證的調試技巧,助您快速定位問題并優化代碼流程。
    的頭像 發表于 05-17 10:46 ?91次閱讀
    如何解決<b class='flag-5'>Air780EPM</b>開發中的調試難題?<b class='flag-5'>深度</b><b class='flag-5'>解析</b>高效調試方法

    大公開!用Air780EPM重構水質COD監測,替代STM32+4G模組的技術路徑

    方案采用Air780EPM單芯片替代STM32+4G模組,集成COD傳感器驅動、數據加密與4G通信功能。 水質COD(化學需氧量)監控是評估水體有機污染程度的核心手段,涉及多種技術、
    的頭像 發表于 05-16 15:34 ?87次閱讀
    大公開!用<b class='flag-5'>Air780EPM</b>重構水質COD監測,替代STM32+4G<b class='flag-5'>模組</b>的技術路徑

    快速開發實戰——4路低功耗ADC接口,Air780EPM二次開發必看!

    Air780EPM 模組,內置4MB大內存RAM,支持LCD、攝像頭、Modbus、以太網、CAN;具備更強大的二次開發資源,更完善的外設能力,也更適于工業場景。 ? 最新開發資料詳見
    的頭像 發表于 04-01 14:56 ?172次閱讀
    快速開發實戰——4路低功耗ADC接口,<b class='flag-5'>Air780EPM</b>二次開發必看!

    從零開始:Air780EPMLuatOS的硬件與軟件配置全解析

    在物聯網開發領域,選擇合適的硬件平臺與操作系統是項目成功的關鍵。本文將帶領你從零開始,通過詳細的步驟與示例代碼,掌握Air780EPMLuatOS的入門開發流程,并深入探討其核心功能與擴展潛力
    的頭像 發表于 03-25 16:45 ?1753次閱讀
    從零開始:<b class='flag-5'>Air780EPM</b>與<b class='flag-5'>LuatOS</b>的硬件與軟件配置全<b class='flag-5'>解析</b>

    血淚教訓總結:Air780EPMLuatOS二次開發——OneWire協議調試注意事項

    的OneWire通信,大幅提升項目開發效率。 一、LuatOS 及 OneWire 說明 ? LuatOS 支持 OneWire 通信協議,本文以 DS18B20 溫度傳感器和
    的頭像 發表于 03-20 17:52 ?348次閱讀
    血淚教訓總結:<b class='flag-5'>Air780EPM</b>的<b class='flag-5'>LuatOS</b>二次開發——OneWire協議調試注意事項

    新手必看!4G模組Air780EPM——GPIO的設計說明

    Air780EPM的GPIO設計需兼顧硬件可靠性與軟件靈活性,開發者應基于具體應用場景權衡復用功能優先級,并遵循電源管理規范以延長設備生命周期。通過模塊化配置與精細化調試,可最大化釋放模組性能潛力
    的頭像 發表于 03-20 17:48 ?253次閱讀
    新手必看!4G<b class='flag-5'>模組</b><b class='flag-5'>Air780EPM</b>——GPIO的設計說明

    干貨預警!4G模組Air780EPM其他硬件接口

    Air780EPM 4G模組不僅憑借高速穩定的數據傳輸能力在智能終端、工業自動化、車載設備等領域大放異彩,更以其“全棧式”硬件接口設計,為開發者提供了近乎無限的擴展可能。 一、ADC 接口設計指導
    的頭像 發表于 03-17 17:37 ?279次閱讀
    干貨預警!4G<b class='flag-5'>模組</b>:<b class='flag-5'>Air780EPM</b>其他硬件接口

    手把手教你!4G模組Air780EPM——GPIO的設計說明

    4G模組Air780EPM作為廣和通推出的高性能Cat.1bis無線通信模塊,憑借其低功耗、高集成度及豐富的外設接口,在工業物聯網、智能終端、車載設備等領域展現出卓越的適配性。 一、概述
    的頭像 發表于 03-17 16:07 ?303次閱讀
    手把手教你!4G<b class='flag-5'>模組</b><b class='flag-5'>Air780EPM</b>——GPIO的設計說明

    快速上手!4G模組Air780EPM的供電設計以及選型推薦

    ,PCB 布局要縮短走線減少干擾。針對鋰電池和長待機場景,還提供了充電管理和升壓電路設計技巧,幫工程師避開常見問題,確保模塊穩定省電,希望能夠幫助到你! 常見的物聯網應用場景Air780EPM的供電方式有如下三種: 一、LDO供電方式 使用LDO電源芯片線性降壓的供電
    的頭像 發表于 03-10 17:53 ?298次閱讀
    快速上手!4G<b class='flag-5'>模組</b><b class='flag-5'>Air780EPM</b>的供電設計以及選型推薦

    Air780EPM 模塊串口電路設計硬件指導

    串口作為Air780EPM模塊的核心通信接口,承擔著設備控制、數據傳輸及外設交互等關鍵功能,在物聯網終端、智能設備、工業自動化等場景中不可或缺。 一、概述 ? 串口作為 Air780EPM 模塊最最
    的頭像 發表于 03-07 17:56 ?190次閱讀
    <b class='flag-5'>Air780EPM</b> 模塊串口電路設計硬件指導

    4G模組Air780EPM的開機啟動及外圍電路設計!

    本文介紹了4G模組——Air780EPM 模塊開機的完整硬件設計指南,涵蓋供電要求、管腳配置、電路示例及常見問題排查方法,希望能夠幫助大家避免設計錯誤,確保模塊穩定啟動!常見開機電路。 ? 這些內容
    的頭像 發表于 03-07 16:06 ?428次閱讀
    4G<b class='flag-5'>模組</b><b class='flag-5'>Air780EPM</b>的開機啟動及外圍電路設計!

    初學者必看!4G模組Air780EPM的開機啟動及外圍電路設計

    本文介紹了4G模組——Air780EPM 模塊開機的完整硬件設計指南,涵蓋供電要求、管腳配置、電路示例及常見問題排查方法,希望能夠幫助大家避免設計錯誤,確保模塊穩定啟動!常見開機電路。 ? 這些內容
    的頭像 發表于 03-07 16:02 ?177次閱讀
    初學者必看!4G<b class='flag-5'>模組</b><b class='flag-5'>Air780EPM</b>的開機啟動及外圍電路設計

    解析Air780E模組LuatOS開發的隨機數(random) 示例篇

    本文主要解析的是低功耗4G模組Air780E的LuatOS開發隨機數(random)實例,我以整理成文分享給大家。
    的頭像 發表于 11-29 20:23 ?450次閱讀
    <b class='flag-5'>解析</b><b class='flag-5'>Air780</b>E<b class='flag-5'>模組</b><b class='flag-5'>LuatOS</b>開發的隨機數(random) 示例篇

    Air780E模組的ADC之旅 LuatOS開發實例

    今天學習一個新的示例,關于Air780E模組LuatOS開發的ADC應用實例,希望大家有所收獲。
    的頭像 發表于 11-11 09:33 ?521次閱讀
    <b class='flag-5'>Air780</b>E<b class='flag-5'>模組</b>的ADC之旅  <b class='flag-5'>LuatOS</b>開發實例
    主站蜘蛛池模板: 69日本xxxxxxxxx56 69日本xxxxxxxxx78 | 一 级 黄 色 片生活片 | 免费一级大毛片a一观看不卡 | 大美女久久久久久j久久 | 欧美瑟瑟 | 不卡免费在线视频 | 色天使色婷婷在线影院亚洲 | 天天色操 | 亚洲大成色www永久网址 | 快色视频免费 | 天堂网久久 | 日本亚洲免费 | 免费久久精品国产片香蕉 | 中文免费观看视频网站 | 一区二区在线免费视频 | 黄色大片视频在线观看 | 亚洲一区二区三区四区五区六区 | 精品国产中文一级毛片在线看 | 成人免费视频一区二区三区 | 久久ww| 天天色综合5| 亚洲欧美一区二区三区在线播放 | 天天射日日操 | 亚洲成人激情片 | 色偷偷尼玛图亚洲综合 | 日本不卡在线一区二区三区视频 | avtt加勒比手机版天堂网 | 欧美人与动另类在线 | 一级色视频 | 黄色香蕉网站 | 未成人禁止视频高清在线观看 | 97国内精品久久久久久久影视 | 李丽莎尤物福利视频 | 亚洲二区在线 | 欧美黄色一级网站 | 国产成人精品本亚洲 | 亚洲欧美在线一区二区 | 你懂的在线观看视频 | 成人永久免费视频 | 放荡女同老师和女同学生 | 婷婷影院在线综合免费视频 |