0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AUTOSAR BSW之IO概述

冬至子 来源:AUTOSAR软件攻城狮 作者:啸西风 2023-07-17 14:40 次阅读

01

概述

这里的IO不是指芯片的那种通用GPIO(只有高低电平的那种),这里说的I/O信号包括模拟信号数字信号 ,包括ADC、PWM、DIO等。

图片

I/O Signal Interface :对数据进行初步处理,比如按键输入去抖动

Dirver for ext. ADC: ASIC:ASIC的缩写是Application Specific Integrated Circuit,特殊应用集成电路,外挂ADC芯片驱动。

Dirver for ext. I/O ASIC :外扩I/O口芯片

SPI Handle :一般外挂芯片通过SPI连接,这里就是讲SPI驱动进行封装

ADCPWMDIO :是MCAL驱动,一般由芯片厂商提供

在实际使用中,觉得之所以要弄一个I/O Hardware Abstraction的另外一个原因是,避免APP直接访问底层。实际都是把I/O Hardware Abstraction当做一个CDD来搞,里面的内容自己实现,在达芬奇工具中新建一个SWC,然后自己实现功能(比如实现去斗的操作)。

图片

02

一个示例

MCU检测一个供电电压(KL30,12V),电路简图如下:

图片

开个玩笑,要是直接12V怼在IO口,估计有可能烧片子,

一般是按下面的接法,采取分压电阻分压

图片

假设ADC是12 bit的,ADC值范围是0-4096:

图片

1) Adc_ReadGroup ,Adc_ReadGroup这个函数时ADC MCAL中提供的,用于读取原始的ADC值,假如是3724。

2) Get_SensorValue ,是IoHwAb中的一个Server runable,被Send_Voltage函数调用,在这里获取原始值,你可以做些滤波去斗处理,比如搞一个滑动平均值滤波。

3) Send_Voltage传感器SWC调用Get_SensorValueADC值,最后计算得出真实的电压值,比如

3724 * 3.3 /4096 * 4 = 12V,X4是因为有分压电阻

所有的DIO、PWM、ADC一般都是这么来搞的

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2545

    文章

    50439

    浏览量

    750977
  • 滤波器
    +关注

    关注

    160

    文章

    7703

    浏览量

    177424
  • GPIO
    +关注

    关注

    16

    文章

    1188

    浏览量

    51828
  • ADC芯片
    +关注

    关注

    3

    文章

    76

    浏览量

    20225
  • PWM驱动
    +关注

    关注

    0

    文章

    28

    浏览量

    1180
收藏 人收藏

    评论

    相关推荐

    AUTOSAR系统中如何将BSW模块分配到不同的分区和内核呢?

    AUTOSAR 提供了一系列机制来解决这些问题,支持高效、安全的 BSW 多核分配。
    的头像 发表于 11-16 17:49 2892次阅读
    在<b class='flag-5'>AUTOSAR</b>系统中如何将<b class='flag-5'>BSW</b>模块分配到不同的分区和内核呢?

    AUTOSAR架构深度解析 精选资料推荐

    AUTOSAR架构深度解析本文转载于:AUTOSAR架构深度解析目录AUTOSAR架构深度解析AUTOSAR分层结构及应用软件层功能应用软件层虚拟功能总线VFB及运行环境RTE基础软件
    发表于 07-28 07:40

    AUTOSAR软件架构是由哪些部分组成的

    章节回顾AUTOSAR软件架构(一)中描述了以下内容:Application Layer应用层Runtime Environment (RTE)运行时环境Basic Software (BSW
    发表于 12-09 07:30

    为什么使用AUTOSAR

    文章目录一、总概述1 为什么使用AUTOSAR?1.1 AUTOSAR出现之前的行业现状1.2 AUTOSAR出现之后可以实现如下目标2、AUTOS
    发表于 12-09 07:50

    AUTOSAR的相关资料推荐

    AUTOSAR基础篇EcuM_wto9109的博客-CSDN博客【AutoSAR】【EcuM】ECU状态管理专注汽车软件开发、AutoSAR、车载以太网、SOA、EE架构。07-08
    发表于 01-27 08:25

    AUTOSAR基础软件层是由哪些部分组成的

    AUTOSAR基础软件层即BSW(Basic Software)层,与应用层、运行环境层共同搭建了AUTOSAR的软件体系。三个层从上而下,层层递进,实现了从人机交互到底层硬件的联系。AUTO
    发表于 02-17 08:00

    基于RT-Thread内核的AUTOSAR在n32g上的实现方案

    AUTOSAR从上往下分为应用层、RTE层和基础软件层(BSW)。应用层由多个软件组件SWC组成,每个SWC是具有一定功能的模块,如汽车发动机控制逻辑,这些模块可以由matlab的autosar软件包依据
    发表于 07-27 14:30

    AUTOSAR软件架构概述

    文章目录一、总概述1 为什么使用AUTOSAR?1.1 AUTOSAR出现之前的行业现状1.2 AUTOSAR出现之后可以实现如下目标2、AUTOS
    发表于 11-26 17:06 127次下载
    <b class='flag-5'>AUTOSAR</b>软件架构<b class='flag-5'>概述</b>

    基于AUTOSAR规范的操作系统知识

    汽车电子控制器中目前基本遵循AUTOSAR规范,而其中操作系统作为BSW的重头戏,始终让学习AUTOSAR的同学望而生畏,进而望而却步。所以,今天整理下基于AUTOSAR规范的操作系统
    的头像 发表于 02-13 14:03 1567次阅读
    基于<b class='flag-5'>AUTOSAR</b>规范的操作系统知识

    关于AUTOSAR-DEM模块的简要介绍和几点思考

    DEM全称“Diagnostic Event Management”,该模块作为AUTOSAR架构中的BSW模块之一,对于ECU软件开发也是必需的软件模块
    的头像 发表于 04-15 17:12 3058次阅读

    浅谈AUTOSAR车载安全通信(SecOC)SecOC

    自动合成孔径雷达: 一种AUTOSAR BSW模块 与PDU路由器BSW并行 关键数据的有效认证 议定书层面的保护 数据单位(PDU)-网络不可知
    发表于 05-24 14:26 898次阅读
    浅谈<b class='flag-5'>AUTOSAR</b>车载安全通信(SecOC)SecOC

    一文入门AUTOSAR OS

    Autosar Os 在Autosar 框架中上至RTE 下至驱动,中间可以和BSW 基础模块进行交互。是整个autosar 框架下最重要的组成部分。
    的头像 发表于 06-29 10:34 4018次阅读
    一文入门<b class='flag-5'>AUTOSAR</b> OS

    AUTOSAR BSW层介绍

    上一篇文章提到了基础软件层BSW包含微处理器抽象层(MCAL)、ECU抽象层、服务层以及复杂驱动,而每一层按照功能模块可以进一步划分,如下图所示。
    的头像 发表于 07-08 17:30 1439次阅读
    <b class='flag-5'>AUTOSAR</b> <b class='flag-5'>BSW</b>层介绍

    AUTOSAR软件开发环境EB tresos Studio简介

    EB tresos是一款经典的AUTOSAR软件开发环境,依赖于一致的单一工具环境来通过汽车开放系统架构 AUTOSAR 开发电子控制单元 (ECU);它能够实现配置、验证和生成 ECU 基础软件 (BSW)的功能。
    的头像 发表于 09-19 10:06 8170次阅读
    <b class='flag-5'>AUTOSAR</b>软件开发环境<b class='flag-5'>之</b>EB tresos Studio简介

    AUTOSAR经典平台介绍

    汽车电子系统的软件组件、运行时环境和通信机制,以实现模块化、可重用和可扩展的系统开发。 在AUTOSAR CP中,软件组件被分为应用软件组件(SWC)和基础软件组件(BSW)。SWC是实现特定功能的软件模块,例如引擎控制、制动系统等。B
    的头像 发表于 10-27 15:30 1319次阅读
    <b class='flag-5'>AUTOSAR</b>经典平台介绍