AUTOSAR Mcal Dio - 模塊介紹 + EB配置工具介紹

文章目錄

  • 1. 模塊簡介
  • 2. 主要功能
  • 3. 縮略語
  • 4. API接口
  • 5. 功能介紹
    • 5.1. ChannelGroup
    • 5.2. Dio_MaskedWritePort
  • 6. 序列圖
    • 6.1.讀GPIO電平
    • 6.2. 設置GPIO電平
  • 7. EB 工具配置
    • 7.1.General
    • 7.2.DioPort
  • 8. 參考資料

1. 模塊簡介

Dio,全稱“Digital Input Output”。Dio模塊(Digital Input/Output Driver)是MCAL層(微控制器抽象層)的核心基礎驅動,負責對微控制器(MCU)的數字引腳進行標準化、硬件無關的訪問與控制。通俗講就是給Pin和Port做一層抽象,可根據具體功能去命名。
在這里插入圖片描述

2. 主要功能

  • 提供通道(Pin)的讀寫操作
  • 提供端口組(Port)的讀寫操作
  • 提供通道組(一個端口中相鄰Pin的組合)的讀寫操作
  • 翻轉輸出端口狀態,周期為T的任務中循環調用,就能得到一個周期2T,50%占空比的方波
    備注:Pin相關配置(輸入/輸出、上拉/下拉、推挽/開漏等配置)均在Port模塊完成,Dio模塊僅負責數字接口的讀寫操作

3. 縮略語

在這里插入圖片描述

4. API接口

在這里插入圖片描述
備注:除Dio_GetVersionInfo以外,其他函數的參數,均使用Dio_Cfg.h中的宏定義,就不會出現開發錯誤。
Eg:P00端口的P00.3是LED0的GPIO引腳,對Pin命名時即可考慮端口號 + 功能作為描述。
在這里插入圖片描述
在這里插入圖片描述

5. 功能介紹

主要提供數字IO讀寫相關的操作。此處主要講一下Dio_ReadChannelGroup、Dio_WriteChannelGroup和Dio_MaskedWritePort三個接口,Channel和Port分別對應硬件的哪個Pin和哪個端口,無特殊講解。

5.1. ChannelGroup

Dio_ReadChannelGroup、Dio_WriteChannelGroup傳入的參數是一個結構體類型地址,而不是簡單的某個ChannelId或PortId,此處結構體中包含端口號、掩碼、偏移三個參數。通過三個參數去確認具體的哪個Port下的哪些相鄰的Pin。
在Ifx的EB配置頁面中,偏移固定為0,用戶不可配,只能通過掩碼確認ID號,例如下面的14對應二進制的1110B,即端口組包括P00.1~P00.3四個引腳。用戶使用時同樣使用Dio_Cfg.h中的宏定義。
在這里插入圖片描述

5.2. Dio_MaskedWritePort

非標準接口,作為Dio_WriteChannelGroup的補充,可以同時設置任意不相鄰通道的輸出電平在工具配置頁面只有該功能的使能開關,該接口有PorId、Level、Mask三個參數。
PortId:端口號
Level:uint16類型的變量,bit0bit15分別對應Pxx.0Pxx.15
Mask:需要操作的引腳
在這里插入圖片描述

6. 序列圖

6.1.讀GPIO電平

在這里插入圖片描述

6.2. 設置GPIO電平

在這里插入圖片描述

7. EB 工具配置

Dio模塊簡單,只是對Channel、Channel組、Port進行抽象,無太多注意事項。

7.1.General

無特殊講解,都是針對功能進行裁剪的開關。
在這里插入圖片描述

7.2.DioPort

根據實際需要增加相應的Port組,一般情況下Port的名字與物理的端口號或某個功能保持一致,增加可讀性。
在這里插入圖片描述
選中某個Port組向下展開后,可配置需要使用的Channel或ChannelGroup。
在這里插入圖片描述

8. 參考資料

AUTOSAR Mcal Port - 模塊介紹 + EB工具配置介紹
General Purpose I/O Ports and Peripheral I/O Lines (Ports)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/916689.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/916689.shtml
英文地址,請注明出處:http://en.pswp.cn/news/916689.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ICT模擬零件測試方法--晶體管測試

ICT模擬零件測試方法–晶體管測試 文章目錄ICT模擬零件測試方法--晶體管測試晶體管測試晶體管測試配置晶體管測試配置晶體管測量選項晶體管測試 i3070 在線測試軟件為每個晶體管提供兩種測試: 使用二極管測試對晶體管的兩個 PN 結進行測試。這是檢查設備存在的快速…

AI算法實現解析-C++實例

基于C++實現的AI 以下是基于C++實現的AI/機器學習相關示例,涵蓋基礎算法、計算機視覺、自然語言處理等領域,適合不同階段的學習者參考: 基礎機器學習算法 線性回歸 使用梯度下降法預測連續值,核心公式: 損失函數: 邏輯回歸 二分類問題實現,Sigmoid函數: K-Means…

亞馬遜云科技實戰架構:構建可擴展、高效率、無服務器應用

對于今天的開發者、架構師和技術愛好者而言,云計算早已超越了簡單的“虛擬機租賃”或“服務器托管”階段。它已經演化為一套豐富、強大且精密的工具集,能夠以前所未有的方式設計、部署和擴展應用程序。真正的云原生思維,是掌握并運用多種架構…

論文閱讀:《無約束多目標優化的遺傳算法,群體和進化計算》

前言 提醒: 文章內容為方便作者自己后日復習與查閱而進行的書寫與發布,其中引用內容都會使用鏈接表明出處(如有侵權問題,請及時聯系)。 其中內容多為一次書寫,缺少檢查與訂正,如有問題或其他拓展…

嵌入式單片機中位帶操作控制與實現

STM32 單片機的SRAM有兩個區支持位帶(bit-band)操作。 那么,什么是位帶,位帶操作的原理是怎樣的呢? 今天來梳理一下這個知識點。 在介紹位帶操作之前,先看一看 ARM Crotext-M3 的存儲器映射。 CM3 的地址空間是 4GB, 程序可以在代碼區,內部 SRAM 區以及外部 RAM 區中執…

考研初試專業分146!上岸新疆大學!信號與系統考研經驗,通信考研小馬哥。

信號與系統專業課分數146,希望以下的經驗能夠幫助到正在努力學習的學弟學妹們更好的學習專業課。本人是從四月份開始學習專業課,當時我覺得專業課應該要盡早開始越拖到后期學習壓力越大,所以在周邊同學還在只學習公共課的時候我就開始了專業課…

負載均衡算法中的加權隨機算法

import org.apache.commons.lang3.tuple.Pair;import java.util.Arrays; import java.util.List; import java.util.concurrent.ThreadLocalRandom; import java.util.stream.Collectors;/*** 加權隨機,nacos*/ public class RouterWeightRandom {/**** param list [{"a&q…

AI時代SEO關鍵詞優化策略

內容概要 在人工智能(AI)技術深度融入數字營銷的背景下,搜索引擎優化(SEO)的關鍵詞優化策略正經歷一場智能變革,這不僅重塑了傳統研究方式,還為企業帶來了全新的競爭機遇。本文將從AI時代SEO的變…

復矩陣與共軛轉置矩陣乘積及其平方根矩陣

設 是一個 的復數矩陣,其共軛轉置矩陣(Hermitian 共軛)記為 (即 ),則矩陣 ( )和 ( )的性質如下文所述。1. Hermitian 性(自共軛性&#x…

Vue 框架 學習筆記

作為初學者對于Vue框架的學習筆記 總結了Vue框架的核心知識點,包括:1. 基礎概念:漸進式框架、兩種使用方式、Vue實例創建流程、模板語法和響應式特性。2. 常用指令:詳細介紹了v-html、v-show/v-if、v-for、v-on、v-bind、v-model等…

飛牛系統安裝DataEase自定義Docker包

飛牛系統安裝DataEase自定義Docker包背景構造DataEase Docker包1.在Linux 系統中(比如我這里選麒麟V10)安裝Docker2.準備打包文件3.執行打包4.驗證打好的包上傳DataEase Docker包1.把本地docker 容器導出1.1查看鏡像列表命令:docker images1.…

可配置的PWM外設模塊

🔧 可配置的PWM外設模塊 基于FPGA的PWM信號發生器,支持 動態周期與占空比配置,無需外部控制信號,適用于 LED 呼吸燈、舵機控制、電機驅動等場景。 仿真波形 參數修改后會晚一個pwm周期才生效📌 模塊功能 🧮…

從零到一:我是如何用深度學習打造高性能書籍推薦系統的

作者:笙囧同學 | 發布時間:2025年7月28日 | 閱讀時長:15分鐘 🎯 前言:為什么要做這個項目? 大家好,我是笙囧同學!最近在學習《機器學習基礎》課程時,被推薦系統的魅力深…

OpenRLHF:面向超大語言模型的高性能RLHF訓練框架

“四模型協同調度破資源壁壘,讓70B模型RLHF訓練觸手可及” OpenRLHF 是由 OpenLLMAI 團隊于2024年推出的開源強化學習人類反饋(RLHF)框架,旨在解決大語言模型(LLM)對齊訓練中的多模型協調瓶頸與超大規模擴展…

DMETL安裝流程及簡單使用

目錄 安裝調度器 安裝執行器 安裝管理器 啟動服務 進入web管理端 創建數據源 ?編輯 添加表 添加影子表增量 節點監控 DMETL工程流搭建實踐 創建表/視圖 添加sql腳本 添加數據清洗與轉換模塊 添加排序模塊 創建輸出表 連接各模塊并啟動 查看驗證結果 監控管理 …

如何通過代碼操作文件?

1. 為什么使用文件不使用文件,我們所寫的程序存在電腦內存中,程序結束,內存回收,數據就丟失了。再次運行程序也是看不到上次運行時的數據的,如果想要將數據進行持久化保存,就需要使用文件。2. 文件分類&…

unbuntn 22.04 coreutils文件系統故障

文章目錄核心思路具體操作步驟(需借助 Ubuntu Live USB)1. 準備 Ubuntu Live USB2. 從 Live USB 啟動并掛載系統分區3. 從安裝包中提取完好的 /bin/dir 文件并替換4. 重啟系統并驗證總結前提說明具體操作步驟(分階段執行)階段1&am…

若依【(前后端分離版)SpringBoot+Vue3】

文章目錄什么是若依使用若依驗證碼的前端實現📌 前后端驗證碼流程說明文檔1、前端初始化驗證碼2、前端界面顯示3、后端生成驗證碼接口(GET /captchaImage)4、用戶提交登錄信息5、后端驗證驗證碼邏輯(POST /login)6、登…

Ubuntu24安裝MariaDB/MySQL后不知道root密碼如何解決

Ubuntu 24.04 安裝 MariaDB 后 root 密碼未知?解決方案在此在 Ubuntu 24.04 上新安裝 MariaDB 后,許多用戶會發現自己不知道 root 用戶的密碼,甚至在安裝過程中也沒有提示設置密碼。這是因為在較新的 MariaDB 版本中,默認情況下 r…

Cloudflare CDN 中設置地域限制并返回特定界面

文章目錄 什么是CDN 什么是Cloudflare 注冊Cloudflare 賬號,添加域名、修改DNS并激活郵箱 阻止或允許特定國家或地區訪問 常見規則表達式 WAF自定義規則 + 自定義錯誤頁面 使用Workers腳本 什么是CDN CDN 是一種優化網站請求處理的機制。它是在用戶訪問網站 (服務器) 時用戶與…