91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

基于恩智浦MPC5744P的CAN驅(qū)動開發(fā)和測試

嵌入式程序員 ? 來源:嵌入式程序猿 ? 作者:武國平 ? 2021-09-03 11:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

摘要

本篇筆記主要記錄基于恩智浦MPC5744P的CAN驅(qū)動開發(fā)和測試,接口設(shè)計,封裝為BSP驅(qū)動,為之后實現(xiàn)CAN的高層通信打下基礎(chǔ)。。

準(zhǔn)備工作

安裝S32DS for PA, 因為我們在S32DS下開發(fā)MPC5744P。

安裝S32DS 的SDK, 我們使用最新版3.0.3

CAN

恩智浦的MPC5744P控制器局域網(wǎng)絡(luò)CAN,跟我們之前使用的恩智浦Kinetis KV, 等系列的flexCAN結(jié)構(gòu)基本是一樣的,MPC5744P不僅僅支持經(jīng)典CAN,還支持CANFD。

從系統(tǒng)框圖也可以看出,總體包含消息緩沖RAM,發(fā)送仲裁,接收匹配,和協(xié)議引擎。要正常與其他CAN設(shè)備通信,必須外接收發(fā)器。關(guān)于MPC5744P的 flexCAN模塊的特性可以參考收據(jù)手冊,這里不在贅述。有四種工作模式,正常模式,監(jiān)聽模式,回環(huán)模式,和禁止模式。CAN外設(shè)的寄存器比較多,需要多參考查閱手冊。

消息緩沖區(qū)結(jié)構(gòu)

恩智浦不管是ARM系列還是PA系列架構(gòu)的片子, flexCAN模塊的消息緩沖機制基本都是一樣的。這個結(jié)構(gòu)非常重要,是CAN消息數(shù)據(jù)處理的基礎(chǔ),SDK底層這部分的處理代碼就是按照這個結(jié)構(gòu)。自己實現(xiàn)代碼也必須是按照這個結(jié)構(gòu)去實現(xiàn)。

更多CAN詳細的介紹請參考官方收據(jù)手冊。

驅(qū)動實現(xiàn)

良好的驅(qū)動封裝,可以方便應(yīng)用開發(fā),并且可以容易移植到其他項目,代碼重用率高,所以數(shù)據(jù)和接口是你不得不考慮的問題,怎么樣方便的實現(xiàn),還要通用易用。

數(shù)據(jù)封裝

首先根據(jù)MPC5744P的CAN外設(shè)結(jié)構(gòu),我們來封裝數(shù)據(jù)結(jié)構(gòu)體,方便后面軟件實現(xiàn)開發(fā),可以新建bsp_can.c和bsp_can.h, 在頭文件中封裝結(jié)構(gòu)體定義。

88563cf6-0be0-11ec-8fb8-12bb97331649.png

在.c文件中定義封裝一些變量,這些變量數(shù)組也是通用,在多款產(chǎn)品中都采用,大家也可以參照。

886685a2-0be0-11ec-8fb8-12bb97331649.png

可以實現(xiàn)多個CAN口驅(qū)動。如果只有一個CAN口,將CAN_PORTS宏定義為1,幾個就定義為幾。

這個封裝大家可以記著,我在多款器件上都是這么封裝的,之前在NXP的KE06, KEA, KV46, K64等系列,在ST的F103, F446, H743等等CAN通信都采用這種封裝BSP驅(qū)動。

初始化

參考官方的例程,根據(jù)自己的硬件去實現(xiàn),做相應(yīng)修改。我們一般發(fā)送接收要采用中斷或者DMA實現(xiàn),這里以中斷方式實現(xiàn),根據(jù)實際可能還需要添加濾波,配置緩沖等。

888491dc-0be0-11ec-8fb8-12bb97331649.png

中斷回調(diào)函數(shù)

最主要的就是通信傳輸回調(diào)函數(shù)的實現(xiàn),MPC5744P的回調(diào)函數(shù)參數(shù)有事件,所以可以根據(jù)事件來判斷是接收還是發(fā)送。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    59

    文章

    3066

    瀏覽量

    472740
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6391

    瀏覽量

    140038
  • 封裝
    +關(guān)注

    關(guān)注

    128

    文章

    9248

    瀏覽量

    148614

原文標(biāo)題:用這種結(jié)構(gòu)做CAN通信數(shù)據(jù)封裝太爽了

文章出處:【微信號:InterruptISR,微信公眾號:嵌入式程序員】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    攜手COMPREDICT加速邊緣AI在汽車應(yīng)用落地

    攜手COMPREDICT將邊緣AI帶入汽車應(yīng)用領(lǐng)域,降低車輛物料清單 (BoM) 成本,助力汽車制造商與一級供應(yīng)商加速邁向更智能、軟件驅(qū)動出行的轉(zhuǎn)型。
    的頭像 發(fā)表于 02-27 14:31 ?1236次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>攜手COMPREDICT加速邊緣AI在汽車應(yīng)用落地

    EasyEVSE開發(fā)平臺榮膺綠色出行獎

    日前,EasyEVSE開發(fā)平臺在布加勒斯特舉行的行業(yè)盛會“Automotive Today”上,榮膺“綠色出行獎”。該獎項認可并表彰出行領(lǐng)域的創(chuàng)新與可持續(xù)發(fā)展成就。
    的頭像 發(fā)表于 02-01 11:25 ?926次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>EasyEVSE<b class='flag-5'>開發(fā)</b>平臺榮膺綠色出行獎

    亮相RT-Thread 20周年開發(fā)者大會

    日前,“開源向?qū)崱どa(chǎn)力進化啟示錄”全球峰會暨RT-Thread 20周年開發(fā)者大會在上海成功舉辦,作為RT-Thread的緊密合作伙伴,在活動中重磅亮相,展示雙方在共建RT-Thread OS
    的頭像 發(fā)表于 01-26 09:07 ?552次閱讀

    推出全新eIQ Agentic AI框架

    半導(dǎo)體宣布推出全新eIQ Agentic AI框架,進一步鞏固其在安全實時邊緣AI領(lǐng)域的領(lǐng)導(dǎo)地位。該工具支持在邊緣設(shè)備上直接實現(xiàn)自主智能體功能,助力資深與新手設(shè)備開發(fā)人員簡化并加速智能體AI
    的頭像 發(fā)表于 01-13 11:15 ?1303次閱讀

    CES 2026參展精彩紛呈

    的展館中,有哪些不容錯過的“芯”看點?今天,我們跟隨執(zhí)行副總裁兼中國事業(yè)部總經(jīng)理李曉鶴先生的探展腳步,一起去劃重點!
    的頭像 發(fā)表于 01-13 11:10 ?985次閱讀

    嵌入式HMI應(yīng)用開發(fā)工具GUI Guider 1.10.1全新上線

    嵌入式HMI應(yīng)用開發(fā)工具GUI Guider 1.10.1全新上線啦!新版本重點聚焦性能提升、工具鏈升級、多點觸控體驗以及開發(fā)板適配,進一步優(yōu)化IDE界面,增強功能穩(wěn)定性,并完善
    的頭像 發(fā)表于 12-28 09:45 ?1584次閱讀

    MCX E系列5V MCU發(fā)布

    MCX E系列是豐富的MCX產(chǎn)品組合中特別注重可靠性與安全性的系列。隨著該系列的推出,進一步豐富了其5V兼容的MCU產(chǎn)品線,為從3V到5V的設(shè)計提供一致的
    的頭像 發(fā)表于 08-16 17:36 ?4636次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>MCX E系列5V MCU發(fā)布

    大聯(lián)大世平兩款全新開發(fā)板上架云實驗室

    云實驗室(Cloud Lab)致力于提供云測試平臺,讓開發(fā)者可以通過云端,在線遠程探索
    的頭像 發(fā)表于 08-13 17:43 ?1714次閱讀
    大聯(lián)大世平兩款全新<b class='flag-5'>開發(fā)</b>板上架<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>云實驗室

    安富利榮獲多個獎項

    日前,在(NXP)2025 GC DFAE培訓(xùn)大會頒獎典禮上,安富利多位現(xiàn)場應(yīng)用工程師憑借卓越的技術(shù)支持能力和杰出的解決方案支持能力,榮獲2024年度大中華區(qū)代理商DFAE
    的頭像 發(fā)表于 07-09 14:08 ?1369次閱讀

    完成對TTTech Auto的收購

    半導(dǎo)體宣布,根據(jù)先前宣布的2025年1月生效的協(xié)議,正式完成對TTTech Auto的收購。TTTech Auto是一家專注于為軟件定義汽車(SDV)開發(fā)獨特的安全關(guān)鍵系統(tǒng)和中間件的領(lǐng)先企業(yè)。
    的頭像 發(fā)表于 06-24 16:43 ?1378次閱讀

    啟揚智能受邀參加2025技術(shù)峰會

    2025年5月14日創(chuàng)新技術(shù)峰會在上海舉行,本次峰會聚焦前沿性的賦能技術(shù),覆蓋汽車電子架構(gòu)、ADAS、汽車電氣化、車載信息娛樂系統(tǒng)、智能工業(yè)、電力和能源管理、智能家居、醫(yī)療保健等熱門應(yīng)用,啟揚
    的頭像 發(fā)表于 05-14 17:34 ?1096次閱讀
    啟揚智能受邀參加2025<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>技術(shù)峰會

    米爾誠邀您參加2025NXP峰會

    ,預(yù)約報名正在進行中,千萬別錯過!屆時,米爾電子將攜帶新品米爾基于NXPi.MX93核心板及開發(fā)板亮相此次盛會,誠邀您蒞臨現(xiàn)場參觀指導(dǎo)。▼▼▼▼▼▼2025年,
    的頭像 發(fā)表于 05-08 08:08 ?1080次閱讀
    米爾誠邀您參加2025<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>NXP峰會

    MPC5744P C55閃存驅(qū)動程序,間歇擦除怎么解決?

    我們正在調(diào)查閃存的特定部分未按預(yù)期擦除的兩個問題。 我們使用的是 v.1.1.0 c-array 軟件驅(qū)動程序,直到構(gòu)建了新一批硬件,才觀察到此問題。MCU 具有掩碼集 1N15P 和日期代碼
    發(fā)表于 04-10 06:55

    FRDM-MCXA156開發(fā)實踐指南》上線啦

    RT-Thread率先支持NXPFRDM-MCXA156,并聯(lián)合半導(dǎo)體推出了NXPFRDM-MCXA156開發(fā)板評測活動。測評活動順利完成,并且有了不錯的產(chǎn)出,我們將大家的測試
    的頭像 發(fā)表于 04-06 10:51 ?3572次閱讀
    《<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>FRDM-MCXA156<b class='flag-5'>開發(fā)</b>實踐指南》上線啦

    智能家電創(chuàng)新方案一文看盡 智能家電技術(shù)日給你答案

    ? 科技賦能,將會讓我們?nèi)粘5募揖由钭兊枚嘀悄??讓我們一起?“智能家電技術(shù)日” 中找答案—— 在日前舉辦的“智能家電技術(shù)日”活動中,
    的頭像 發(fā)表于 03-28 11:46 ?7467次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>智能家電創(chuàng)新方案一文看盡  <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>智能家電技術(shù)日給你答案