发 帖  
原厂入驻New

什么是嵌入式系统中的外设?

45 嵌入式 嵌入式系统
分享
什么是嵌入式系统中的外设
嵌入式系统的各种常见外设总结
0
2021-4-2 07:06:08   评论 分享淘帖 邀请回答
1个回答
  背景
  嵌入式系统中,硬件方面,有很多常见的外围设备。
  在此,专门整理一下。
  什么是嵌入式系统中的外设
  外设==外部设备==Peripheral
  · 外部:主要指的是除了嵌入式系统中主要的CPU,即SoC,MCU等之外的
  · 设备:某种硬件功能模块
  外设==接口
  此处,所指的外设,也常被称为各种接口,硬件接口。
  因为是:存在对应的物理上的看得见的,以及那些属于硬件内部的肉眼不容易看见的,各种接口,通过对应接口连接外部设备。
  下面总结一下,常见的,有哪些外设。
  嵌入式系统的各种常见的外设
  AFE(Analog Front End)
  一个模块,包含了一堆的模拟电路,实现对应的模拟方面的功能。
  比如功放amplifiers, filters过滤器等等。
  常常和数据采集,音频等方面有关。
  ADC/DAC
  Analog Digital Converter/ Digital Analog Converter
  模拟数字转换器 / 数字模拟转换器
  在模拟和数字之间进行转换。
  比如:
  常常ADC,用于外挂某种传感器,然后通过ADC或DAC,转换成对应的数字信号,然后可以通过嵌入式SoC去读取对应的数据。
  CRC硬件模块
  当然,CRC算法,是可以通过软件实现的。
  但是为了提高计算的效率,有时候可以利用已有的CRC模块去实现CRC计算。
  比如:
  Using the CRC Module on the Flexis AC Family
  CRC本身,又有一些细节划分和叫法
  比如:
  CRC16-CCITT
  CRC32
  等等。
  CAN
  CAN总线接口。
  比如:
  http://www.freescale.com/zh-Hans/webapp/sps/site/prod_summary.jsp?code=MCF5227X
  中就有:“FlexCAN”
  比如:http://www.microchip.com/pagehandler/en-us/family/32bit/architecture.html
  就有:“2x CAN 2.0B Ports”
  USB
  USB Host:固定的作为USB的Host
  USB Slave:固定的作为USB的Slave
  USB OTG:即可以做Host,也可以做Slave,可以通过软件配置
  现在很多手机,如果号称支持USB Host,那么往往都是对应的内部硬件上有个USB OTG模块的。
  关于相关知识的整理,可参考:
  【整理】关于安卓(Android)手机是否支持USB主机(USB Host)功能
  比如:
  (1)
  http://www.freescale.com/zh-Hans/webapp/sps/site/prod_summary.jsp?code=MCF5227X
  中,就有:“USB OTG”(2)
  http://www.microchip.com/pagehandler/en-us/family/32bit/architecture.html
  就有:“Full-speed USB Host/Device/OTG”
  Video Codec视频解码
  硬件实现视频解码
  包括:
  JPEG
  VC1
  WMV
  视频解码方面,常常还会涉及到一个
  pp:post processing,后处理
  的功能。
  比如图像的混合,图形的旋转,等等。
  也是通过硬件模块去实现的,比软件处理,效率更高,更快。
  一些资料供参考:
  Chapter 9. Pre- and Post-Processing
  SAM9M10 Hardware Video Decoder Post Processing Engine Features
  Audio Codec音频解码
  硬件实现音频解码:
  · AAC
  · MP3
  · WMA
  · WMA8 + Microsoft PDDRM
  · WMA9 + DRM10
  · OGG
  · WAV
  音频解码,往往还涉及相关的内容
  比如:
  Equalization均衡
  等等。
  时钟Clock相关模块:晶振Crystal,CCU
  晶振,crystal,产生对应的时钟
  然后用CCU,Clock Unit Control,去控制对应的时钟频率,变高或变低,达到对应的频率
  然后输送给外设各个模块。
  LCDC(LCD Controler)
  LCD的controller,LCD的控制器 ,LCD显示屏的控制器
  可以支持外接很多种不同类型的显示屏。
  比如:
  http://www.freescale.com/zh-Hans/webapp/sps/site/prod_summary.jsp?code=MCF5227X
  中,就有个LCDC
  硬件加密模块crypto
  比如AES加密等等。
  DMA
  常见的接口之一。
  GPIO
  常见的接口之一。
  I2C
  常见的接口之一。
  I2C
  比如:
  http://www.freescale.com/zh-Hans/webapp/sps/site/prod_summary.jsp?code=MCF5227X
  中,就有个I2C
  I2S
  主要用于音频。
  往往和声卡,音频,有关。
  之前转载的帖子供参考:
  I2S标准
  IDE
  IDE硬盘。
  更多的用于PC端。
  但是,偶尔也会遇到,嵌入式系统中挂IDE硬盘的。
  Keyboard [Matrix]
  嵌入式中的键盘,
  主要指的是,
  有限的几个按键
  所以往往是键盘矩阵Keyboard Matrix
  之前折腾过,PC端的键盘,其本质的原理是类似的,也可以参考参考:
  键盘Keyboard中的扫描码Scan Code 通码Make code 断码Break Code
  Memory Controller:MPMC
  内存控制器MPMC
  可以外挂各种存储介质
  主要指的是SDRAM
  Nor Flash
  Flash本身,虽然分Nand Flash和Nor Flash但是,Flash这个词,本身常常代表Nor Flash本身。
  又分:Nor Flash有时候也是指的是EEPROM比如
  http://www.microchip.com/pagehandler/en-us/family/32bit/architecture.html
  就有:“Up to 512 KB Flash”
  Nand Flash
  Nand Flash中可能会涉及到bch算法。
  电源管理PMU
  Power Management Unit
  用于管理电源的。
  可以控制各种硬件模块的电源,的电压,以达到:
  · 可以使得硬件工作稳定和正常
  · 可以实现功耗管理
  · 正常电压时,性能好,但是功耗大
  · 低电压时,功耗相应降低,但是性能相对弱
  wiki的解释供参考:
  http://en.wikipedia.org/wiki/Power_Management_Unit
  实时时钟RTC(Real Time Clock)RTC,常见的,嵌入式中的基本功能之一。断电也可以正常运行。
  比如:
  http://www.freescale.com/zh-Hans/webapp/sps/site/prod_summary.jsp?code=MCF5227X中,就有个RTC
  SD/MMC、SSP
  也是常见接口之一。
  Synchronous Serial Port
  http://en.wikipedia.org/wiki/Synchronous_Serial_Port
  SSP与SPI接口的区别是什么?
  http://zhidao.baidu.com/question/247087991.html
  Touch Panel触摸屏
  也是属于显示屏相关的,但是支持触摸。
  TVOUT
  显示内容输出格式之一。
  显示到电视上。
  包括对应的PAL或NTSC等格式。
  UART/RS232/串口
  WatchDog看门口
  简称WDT
  JTAG
  用于支持JTAG口去调试芯片
  属于调试方面的东西
  Ethernet
  网卡,以太网卡比如:
  http://www.microchip.com/pagehandler/en-us/family/32bit/architecture.html
  就有:“10/100 Ethernet MAC with MII/RMII Interfaces”
  总结
  嵌入式系统,的开发过程中,往往,更多的时候,可能就是去学习和了解这些外设的工作原理,然后接着去实现对应的驱动。这往往是常见的,典型的,嵌入式开发,所要做的事情之一。
2021-4-2 15:51:20 评论

举报

只有小组成员才能发言,加入小组>>

412个成员聚集在这个小组

加入小组

创建小组步骤

快速回复 返回顶部 返回列表