嵌入式架构理解归纳

为了各位同学少挖坑,依据需求将系统层次划分为以下6个层次的架构,适合自己写小系统框架,对于RT thread, nuttx等优秀嵌入式系统有更好的实现方式,去官方网站既能得到很好的学习指导

第一层:应用逻辑层
第二层:具体业务层
第三层:设备抽象层
第四层:具体设备层
第五层:硬件抽象层
第六层:具体硬件板卡层

一、层次关系
数字越小层次越高,
抽象层向上提供接口,向下提供注册接口

二,每层具体含义
1.具体硬件板卡层:
举例STM32,此层封装好SPI,IIC,UART,GPIO等直接操作硬件接口

2.硬件抽象层(Hardware abstraction layer):
将SPI,IIC,UART,GPIO等硬件接口封装成外部统一调用函数,如:
hal_xx_init();
hal_xx_uninit();
hal_xx_read();
hal_xx_write();
hal_xx_control();
以上为向上层提供接口
hal_xx_registered();—>为下层提供注册接口

如硬件板卡层写好硬件接口之后,直接调用hal_xx_registered将接口注册即可。

3.具体设备层:
顾名思义,此层用来写具体的设备,比如LCD设备,温度传感器设备等,但是LCD和温度传感器种类繁多,此层就是具体的某一种类型号的驱动,如LCD的有使用SPI,UART,FSMC等,温度传感器的有单总线,IIC等,组成种类繁多的各类设备。

4.设备抽象层(Device abstraction layer):
为某一类相同性质的设备提供统一接口,与硬件抽象层类似
xx_init();
xx_uninit();
xx_read();
xx_write();
xx_control();
以上为向上层提供接口
xx_registered();—>不同的驱动设备写好上述实现函数之后调用此接口注册

以温度芯片为例(DS18B20和HDC1080),这两颗是单总线和IIC总线,只需要提供上述接口,设备抽象层不需要管底层具体实现逻辑,只需要知道调用xx_read可以读取温度数据即可

5.业务层:
可以加入一些算法属性,具体某一类对象的处理逻辑,如果需要用到设备,则只认设备抽象层提供的函数即可,这一层

以温度设备为例,读取到的温度,可以在这一层做滤波算法,
GPS模块可以在这一层做数据的运用,计算距离,路线,方向等
高度计模块可以在这一层做温度和气压的融合处理,得到更加准确的高度值等等

6.应用层:
应用层就可以根据具体的客户需求,将业务层做好的东西组合成相应的逻辑操作即可

三、扩展性:
如果涉及到操作系统,不同的任务之间调用相同的设备需要加入互斥锁机制,这个时候只需要在硬件抽象层和设备抽象层之间加锁即可,而不用对原有代码进行大改动

说明:这个框架目的在于帮助各位同学更好地填坑,才疏学浅,用到的函数接口只是举例说明,具体实现看功能逻辑,这里想表达的是整体的框架思想,有更好见解者望多多点评

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
by 阿蛋

嵌入式架构 小型系统相关推荐

  1. 互联网架构的软件架构是否会对车用软件等传统嵌入式领域的系统架构产生影响

    转载于:互联网架构的软件架构是否会对车用软件等传统嵌入式领域的系统架构产生影响?? - 辣笔小星的回答 - 知乎 https://www.zhihu.com/question/34875160/ans ...

  2. 嵌入式计算机与pc机架构,高清录播系统 PC架构与嵌入式架构区别讲解

    远程教学录播系统得到了广泛的应用,但是不同厂家产品不一定能兼容,所以导致不同厂家的系统有可能不能很好互联互通.而如今市面上数不胜数的录播主机也带来麻烦.现在一个录播主机是一间录播课室的核心设备,它关系 ...

  3. 【科研论文】基于HTTP协议的嵌入式远程监控系统的研究

    内容简介: 利用网络实现局域乃至全球范围内的监测与控制,是信息与控制系统的主要发展趋势.嵌入式系统因其体积小.功能强.可靠性高.灵活方便等优点,已渗透到工业.农业.国防.教育.科研以及消费等各个领域, ...

  4. 嵌入式计算机与pc机架构,PC架构与嵌入式架构的录播主机的区分

    原标题:PC架构与嵌入式架构的录播主机的区分 录播主机是一间录播课室的核心设备,它关系到视频录制的最终质量效果.那么,我们该如何选择稳定性能高的录播主机?在选购的过程中又如何区别PC架构上与嵌入式架构 ...

  5. ARM公布“物联网”嵌入式mbed OS系统软件平台

    继ARM公司发布了为嵌入式微控制器设计的Cortex-M7架构处理器,ARM又公布了专为廉价低功耗"物联网"设计的新版软件及系统平台,以加速物联网设备的发展及部署.该软件为基于AR ...

  6. 三个小白是如何在三个月内搭一个基于kaldi的嵌入式在线语音识别系统的

    前面的博客里说过最近几个月我从传统语音(语音通信)切到了智能语音(语音识别).刚开始是学语音识别领域的基础知识,学了后把自己学到的写了PPT给组内同学做了presentation(语音识别传统方法(G ...

  7. 什么是系统架构?系统架构的特点分析!

    系统构架是对已确定的需求的技术实现构架.作好规划,运用成套.完整的工具,在规划的步骤下去完成任务.抽象来说,它是计算机系统结构,或称计算机体系结构,是一个系统在其所处环境中最高层次的概念:它确定一台计 ...

  8. 嵌入式架构到底有多重要?看完惊呆了

    嵌入式架构有多重要? 要做到嵌入式应用的代码逻辑清晰,且避免重复的造轮子,没有好的应用架构怎么行? 如果没有好的架构,移植将会是一件很痛苦的事情. 如果没有好的架构,复用是最大的难题,没法更大限度的复 ...

  9. 程序人生【2】 论嵌入式架构的重要性

    文章目录 1.引言 2 嵌入式系统的基本架构 2.1 硬件架构 2.2 软件架构 3 嵌入式程序设计思路 4 一个引以为戒的实例 5.嵌入式项目也来分个层 1.引言 [问题] 嵌入式架构有多重要? 要 ...

最新文章

  1. WebAPI增加Area以支持无限层级同名Controller
  2. python3哪个教程好-Python3 教程
  3. 快速排序的基本原理及实现
  4. NO.111 禅道导出数据做透视表,让你轻松做年终工作总结。
  5. linux系列(六):rmdir命令
  6. 用户怒了!红帽公司宣布CentOS 8将停止维护,“免费” RHEL 寿终正寝
  7. 学报格式和论文格式一样吗_学报投稿格式有哪些
  8. 用Java写有关早上的语录,实用的适合早上发的早安问候语语录汇编39句
  9. 计时装饰器python_使用python装饰器制作计时函数
  10. 漯河首富,一年杀猪5000万头
  11. MMDetection的调试笔记
  12. java工程师有前途吗_java开发工程师的前途怎么样
  13. C++开源DirectUI库SOUI简介
  14. 短信api接口的一些使用建议
  15. 免费支持顺丰、四通一达、EMS等快递物流单号查询的开放接口?
  16. 个人笔记-如何学习(上)
  17. 使用nodejs + wecharty打造你的个人微信机器人
  18. Ubuntu windows双系统没有引导界面的解决办法
  19. vscode点击ctrl+c 光标变粗,且复制粘贴不了
  20. 5VUSB微孔雾化器IC方案FS150C SOP8带自动扫频加湿器IC

热门文章

  1. 独立站跨境电商怎么做??
  2. python数据正则化_Python数据科学:正则化方法
  3. 智慧城市到底是建怎样的城市?
  4. Wannamine家族挖矿病毒处置
  5. 部署docker registry
  6. 丛林生存法则——狼与鹿
  7. 主数据供应商有哪些!
  8. 【微机原理与接口技术】--第六章--基本输入输出接口技术
  9. 空间计量xsmle命令遇到(3200)error,
  10. C#判断上班时间和下班时间(含周末)的方法实现