chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

CANOpen系列教程11_ 深度分析CanFestival_3架構(gòu)

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 2020-03-06 15:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1寫在前面

教程上一篇文章《關(guān)于Canfestival及對象字典生成工具環(huán)境搭建》中我們簡單認識了一下Canfestival這套免費開源CANOpen協(xié)議的框架。

那么,本文將會以下載的PDF手冊(源碼里面也有)為導向,來深入解析Canfestival這套框架。

本文大概分兩部分來講述:

1.manual手冊概要內(nèi)容;

2.解析Canfestival源碼;

2

manual手冊概要內(nèi)容

請先下載我們教程上一篇文章《關(guān)于Canfestival及對象字典生成工具環(huán)境搭建》提到的PDF手冊(解壓源碼,在目錄objdictgen doc下面也有manual_en.pdf手冊文檔)。

打開PDF手冊,我們可以清楚的看到手冊共有12章。對于使用STM32開發(fā)的初學者來說,相對重要一點的章節(jié)有:2, 3, 4, 9這些章節(jié)。

為了照顧初學者,這里先把每一章節(jié)內(nèi)容概述一下,后面在重點講述部分的內(nèi)容。

2.1 內(nèi)容概要

第1章Introduction介紹

主要介紹了CanFestival是一個開源(LGPL和GPL) CANopen框架,CanFestival項目的起源及支持。同時,也介紹了什么是CANOpen協(xié)議,以及協(xié)議相關(guān)的規(guī)范。

第2章CanFestival特征

1.工具:提供對象字典GUI圖形化編輯器、代碼生成,以及腳本等配套工具;

2.多平臺:庫源代碼是ANSI標準C,支持多平臺編譯和開發(fā);

3.CANopen標準:支持DS-301、302、305等標準的CANOpen協(xié)議。

第3章How to start如何開始

這一章節(jié)其實主要就是對一些環(huán)境的要求和配置,及如何獲取CanFestival等。

其實,對我我們使用MCU開發(fā)的人來說,重要的就是對象字典編輯和生成工具的環(huán)境(具體請參看教程上一篇文章《對象字典生成工具環(huán)境搭建》)。其它基于Windows、Linux開發(fā)的環(huán)境,大家可以參考文檔配置一下,這里不講述。

第4章理解Canfestival

主要講述:理解源代碼文件目錄劃分情況、在應用程序中實現(xiàn)CanFestival以及源文件結(jié)構(gòu)關(guān)系、CAN底層驅(qū)動接口的調(diào)用和實現(xiàn)、對事件調(diào)度的實現(xiàn)方法。

本章節(jié)內(nèi)容直接牽涉源代碼相關(guān)內(nèi)容,所以說比較重要,下面章節(jié)將進一步詳解。

第5、6章

這兩章節(jié)主要是針對Linux、Windows平臺的配置和開發(fā)相關(guān)內(nèi)容,感興趣朋友可以認真研究一下,這里不講述。

第7章

主要講述源碼提供的HCS12例程相關(guān)的編譯、下載、硬件連接以及演示。這里參考意義也不大,如果你有對應的板卡,可以參考進行演示一下。

第8章例程和測試程序

這一章節(jié)講述了配套提供的一些例程的相關(guān)說明。比如TestMasterSlave主從站測試例程中心跳發(fā)生器時間為1000毫秒等。

這些說明在源代碼中也有,通過查看提供的源代碼一目了然。所以,參看價值也不是很大。

第9章開發(fā)一個新節(jié)點

這一章比較重要,我們開發(fā)一個新的節(jié)點,就需要編輯其對象字典,那么就需要通過編輯器編輯對象字典并生成代碼。

簡單的說,這章節(jié)的重要內(nèi)容就是讓你學會如何使用這個對象字典編輯器工具。

第10章FAQ常見問題

這一章節(jié),初學者能看懂的還建議看下有些問題可能對你有幫助,比如:CanFestival3是否符合DS301 V4.02版本?

第11章文檔資源

主要就是一些參考網(wǎng)址。

第12章關(guān)于這個項目

不是重點,可以了解一下這些信息。

3

解析Canfestival源碼

3.1 源文件目錄

解壓下載的源碼壓縮包,會看到如下圖文件及文件夾:

我們主要需要的三個.c .h源文件目錄:

drivers:底層驅(qū)動;

include:.h頭文件;

src:.c源代碼;

一個對象字典生成工具:

objdictgen:object dictionary generate.

examples:例程,初學者可以參考;

3.2 源代碼結(jié)構(gòu)關(guān)系及應用程序如何實現(xiàn)

這里有一張源文件的結(jié)構(gòu)關(guān)系圖,大致就是將源文件按照其作用進行了劃分,初學者需要多看多理解。

從圖中我們可以看出,將源代碼劃分成三塊。中間的Library庫文件我們不會去動它。主要修改左右兩邊的代碼。

左邊CAN底層驅(qū)動接口(前面我提供過STM32例程)。Target目標接口,如定時器。

右邊底部對象字典,我們需要通過工具事先配置好,不需要人為編寫。最后就是我們通過調(diào)用API函數(shù),實現(xiàn)應用程序。

提示:最右邊的英文希望大家理解一下,對初學者有幫助,如打開CAN接口(也可以叫初始化)、初始化定時器......等。

3.3 CAN底層接口實現(xiàn)和要求

我們底層發(fā)送要求非阻塞的方式實現(xiàn),一般我建議跑一個操作系統(tǒng),加一個隊列的方式實現(xiàn)。

需要一個發(fā)送線程、一個接收線程,同時需要定時器實現(xiàn)事件的調(diào)度。

這一節(jié)的內(nèi)容,對于初學者理解起來相對較難,可以先了解,有一個概念,后面我會結(jié)合代碼讓大家更容易理解其中含義。

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

    關(guān)注

    58

    文章

    2975

    瀏覽量

    470397
  • CANopen
    +關(guān)注

    關(guān)注

    8

    文章

    443

    瀏覽量

    46620
  • manual
    +關(guān)注

    關(guān)注

    0

    文章

    17

    瀏覽量

    11675
  • 編輯器
    +關(guān)注

    關(guān)注

    1

    文章

    825

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    迅為Hi3403V610開發(fā)板海思Cortex-A55架構(gòu)核心板卡

    迅為電子重磅推出基于海思Hi3403處理器的高性能核心板,采用先進的四核Cortex-A55架構(gòu),主頻高達1.4GHz,以強勁算力、超凡能效比與卓越的圖像處理能力,為千行百業(yè)的智能化升級注入核心動力。無論是智能視覺、工業(yè)互聯(lián),還是AIoT邊緣計算,它都能輕松駕馭,助您暢快開發(fā)!
    的頭像 發(fā)表于 09-30 14:18 ?239次閱讀
    迅為Hi3403V610開發(fā)板海思Cortex-A55<b class='flag-5'>架構(gòu)</b>核心板卡

    移植CANfestival,發(fā)現(xiàn)can無法接收數(shù)據(jù),為什么?

    最近在研究Canopen協(xié)議,在f407的板子上移植了canfestival協(xié)議棧 移植成功后遇到一些問題,總線上我在沒有發(fā)數(shù)據(jù)的情況下還是可以進入can接收中斷,我不清為什么會進入中斷,后來我自己
    發(fā)表于 09-11 07:46

    CanFestival軟件包下載失敗的原因?

    如上圖,因為Gitee服務器不穩(wěn)定,下載不成功. 如果大佬們有最新版本的canfestival軟件包,麻煩給我下載一下.
    發(fā)表于 09-11 06:39

    EtherCAT轉(zhuǎn)CANopen,噴碼機高效通訊秘籍

    CANopen
    北京開疆智能技術(shù)有限公司
    發(fā)布于 :2025年08月19日 17:08:06

    制藥行業(yè)新突破:CANOpen轉(zhuǎn)PROFINET網(wǎng)關(guān)配置案例解析

    CANopen
    北京開疆智能技術(shù)有限公司
    發(fā)布于 :2025年07月25日 11:14:31

    3步搞定!Canopen轉(zhuǎn)EtherCAT網(wǎng)關(guān),驅(qū)動伺服新突破

    CANopen
    北京開疆智能技術(shù)有限公司
    發(fā)布于 :2025年07月19日 11:44:35

    GPU架構(gòu)深度解析

    GPU架構(gòu)深度解析從圖形處理到通用計算的進化之路圖形處理單元(GPU),作為現(xiàn)代計算機中不可或缺的一部分,已經(jīng)從最初的圖形渲染專用處理器,發(fā)展成為強大的并行計算引擎,廣泛應用于人工智能、科學計算
    的頭像 發(fā)表于 05-30 10:36 ?849次閱讀
    GPU<b class='flag-5'>架構(gòu)</b><b class='flag-5'>深度</b>解析

    存儲示波器的存儲深度對信號分析有什么影響?

    ) 采樣率:≥6.4GS/s(數(shù)據(jù)速率×2)。 存儲深度:≥10Mpts(記錄時間≥1.56μs,支持突發(fā)信號)。 優(yōu)化:啟用分段存儲(如1000段×10kpts)或外部觸發(fā)。 3. 電源紋波分析(如
    發(fā)表于 05-27 14:39

    盟通方案|專業(yè)的CANopen總線分析軟件

    在CAN/CANopen產(chǎn)品開發(fā)過程中,數(shù)據(jù)分析是非常關(guān)鍵的一環(huán)。數(shù)據(jù)幀分析軟件就如您工作中的萬能工具。不但能夠抓取CAN數(shù)據(jù)包,還能夠協(xié)助您分析數(shù)據(jù)功能,甚至用規(guī)則的數(shù)據(jù)時序排列,以
    的頭像 發(fā)表于 05-23 16:06 ?410次閱讀
    盟通方案|專業(yè)的<b class='flag-5'>CANopen</b>總線<b class='flag-5'>分析</b>軟件

    東風嵐圖發(fā)布L3級智能架構(gòu)天元智

    近日,東風嵐圖在北京正式發(fā)布L3級智能架構(gòu)天元智,并首發(fā)兩大核心智能化技術(shù)集群——青云L3級智能安全行駛平臺和鯤鵬L3級智能安全駕駛系統(tǒng),
    的頭像 發(fā)表于 04-18 15:36 ?489次閱讀

    使用ES32實現(xiàn)CANopen從機

    字典。CANopen設備模型如下圖。對象字典描述了CANopen設備的所有行為和參數(shù)。CanFestival是一套開源免費的CANopen協(xié)議棧。它功能強大,且提供
    的頭像 發(fā)表于 03-26 19:05 ?1158次閱讀
    使用ES32實現(xiàn)<b class='flag-5'>CANopen</b>從機

    Arm發(fā)布基于Armv9架構(gòu)的Cortex-A320處理器

    邊緣 AI 需要更卓越的計算性能、更強大的安全性,以及更出色的軟件靈活性。隨著軟件愈發(fā)復雜化,Armv9 架構(gòu)應運而生,以提供先進的機器學習 (ML) 和 AI 功能,并具備增強的安全特性。該架構(gòu)現(xiàn)已在 Cortex-A3xx
    的頭像 發(fā)表于 02-27 17:10 ?998次閱讀

    DeepSeek V3/R1架構(gòu)解讀:探討其是否具有國運級創(chuàng)新

    DeepSeek的最新模型DeepSeek-V3和DeepSeek-R1都屬于MoE(混合專家)架構(gòu),并在開源世界產(chǎn)生了較大的影響力。特別是2025 年 1 月開源的DeepSeek-R1,模型性能
    的頭像 發(fā)表于 02-10 10:15 ?6063次閱讀
    DeepSeek V<b class='flag-5'>3</b>/R1<b class='flag-5'>架構(gòu)</b>解讀:探討其是否具有國運級創(chuàng)新

    發(fā)現(xiàn)基于Zen 5架構(gòu)的AMD Threadripper “Shimada Peak” 96核和16核CPU

    AMD Threadripper “Shimada Peak” CPU 出現(xiàn)在 NBD 發(fā)貨清單中,揭示了 16 核和 96 核 Zen 5 CPU AMD 尚未推出采用 Zen 5 架構(gòu)
    的頭像 發(fā)表于 11-28 16:13 ?1301次閱讀
    發(fā)現(xiàn)基于Zen 5<b class='flag-5'>架構(gòu)</b>的AMD Threadripper “Shimada Peak” 96核和16核CPU

    CANopen協(xié)議架構(gòu)和應用原理

    穩(wěn)健的通信協(xié)議和接口在工業(yè)電機控制應用中發(fā)揮著重要作用。在工業(yè)驅(qū)動應用中,當需要多個處理器元件來持續(xù)通信以完成復雜任務時,CANopen因其易于集成、高度可配置,以及支持高效、可靠的實時數(shù)據(jù)交換等特性,受到了眾多工程師青睞。本文從低功耗電機控制應用的角度深入探討CANopen
    的頭像 發(fā)表于 11-04 13:49 ?1592次閱讀