Internet+EducationSolutions单片机与嵌入式中智讯(武汉)科技有限公司EducationSolutions目录ContentsInternet+嵌入式系统概述常用嵌入式平台嵌入式开发方法嵌入式常用外设嵌入式开源硬件17:56/4嵌入式定义总结:嵌入式系统是以应用为中心,计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。广义定义:任何一个非计算机的计算系统17:56/5嵌入式组成嵌入式系统一般由嵌入式硬件和软件组成嵌入式硬件:微处理机(Microprocessor)/微控制器(Microcontroller)内存(Memory)特殊用途之集成电路芯片(ASIC)输入与输出(Input/Output,I/O)接口与输入与输出装置软件包括:初始化代码及驱动、嵌入式操作系统和应用程序等,这些软件有机地结合在一起,形成系统特定的一体化软件。硬件应用程序图形用户接口通用接口D/A文件系统嵌入式操作系统HAL/BSP嵌入式微处理器软件A/DI/OROMSDRAM人机交互接口应用层OS层驱动层硬件层17:56/6从传统计算机到嵌入式嵌入式操作系统:Linux,windowsCE,…•资源有限•实时要求:时间确定性•成本要求•功耗要求•开发主要专用工具和特殊方法桌面操作系统:WindowsXP/7/10专用微处理器:51,AVR,PIC,MSP,ARM,DSP…外围接口电路:IIC、UART、SPI、USB、LCD、MMC…X86处理器17:56/7嵌入式与物联网ARMEmbeddedSolutionIntelligentHardware/IoTCortex-MSeriesApplicationPlatform/MobileCortex-ASeries全新嵌入式架构:ARMCortex-A&Cortex-M万物智能互联全新嵌入式架构:ARMCortex-A&Cortex-M双平台让万物智能互联EducationSolutions目录ContentsInternet+嵌入式系统概述常用嵌入式平台嵌入式开发方法嵌入式常用外设嵌入式开源硬件17:56/9嵌入式平台分类嵌入式处理器嵌入式片上系统SoC嵌入式DSP处理器DSP嵌入式微控制器MCU嵌入式微处理器MPU17:56/10嵌入式微控制器MCU嵌入式微控制器一般以一种微处理器的CPU为核心,芯片内部集成ROM/RAM/EPROM、FlashRAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A等各种必要功能和外设。嵌入式微控制器的典型代表是单片机,常见的是C51、AVR、MSP430、PIC、STM32(ARMCortex-M系列)等。微控制器的最大特点是单片化,体积小,从而使功耗和成本下降、可靠性提高。微控制器的片上外设资源一般比较丰富,适合应用于控制领域。微控制器是目前嵌入式系统工业的主流。17:56/11常用MCU平台比较类别架构总线主流型号开发环境说明8051C518位AT89C51/STC89C51Keil简单,纯IO,外设基本靠扩展AVRRISC8位Atmega16aAVRStudio/IAR较高性能,外设丰富PICRISC8位PIC16F873MPLAB指令少,开发简单MSP430RISC16位MSP430F系列CCS/IAR较高性能,外设丰富STM32ARM32位STM32F系列Keil/IARARMCortex架构,主流MCU,高性能,可运行微操作系统17:56/12嵌入式微处理器MPU嵌入式微处理器是由通用计算机中的CPU演变而来的。与计算机处理器不同,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求,主要特点如下:功耗低;处理器结构可扩展;调试功能丰富;支持实时多任务及操作系统。目前主要的嵌入式处理器类型有ARMCortex-A系列、PowerPC、MIPS等。17:56/13常见的MPU平台及操作系统EducationSolutions目录ContentsInternet+嵌入式系统概述常用嵌入式平台嵌入式开发方法嵌入式常用外设嵌入式开源硬件17:56/15嵌入式系统设计过程1234567第一阶段:产品定义第三阶段:硬件与软件划分第五阶段:详细硬件设计第二阶段:系统建模第四阶段:迭代设计与选择85第五阶段:详细软件设计第六阶段:硬件与软件集成第七阶段:系统测试第八阶段:系统维护与升级17:56/16嵌入式硬件设计嵌入式方案选型设计:性价比先进性软硬件资料嵌入式硬件设计流程:设计:方案论证-原理图-Layout-样板生产调试:硬件检测-软硬件调试生产:N次小批量-批量嵌入式硬件功能调试:电源、时钟复位、JTAG内存、Flash总线、控制器17:56/17嵌入式软件设计宿主机仿真器评估板IDE开发环境宿主机开发模式PC、IDE开发环境、仿真器、评估板、串口线、网线在线仿真、Trace、LED、Printf……查阅官方例程掌握官方软件库工具选型掌握原理图阅读数据手册17:56/18嵌入式软件设计(Hal层)硬件层和软件层之间为中间层,也称为硬件抽象层(HardwareAbstractLayer,HAL)或板级支持包(BoardSupportPackage,BSP)该层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置等功能HardwareIndependentSoftwareApplicationsI/OSystemFileSystemRTOSLibrariesRTOSKernelTCP/IPStackHardwareAbstractionLayer:BSP&DeviceDriverSCSIDriverFlashDriverMMUDriverCacheDriverSerialDriverEthernetDriverDeviceDriverHardwareEducationSolutions目录ContentsInternet+嵌入式系统概述常用嵌入式平台嵌入式开发方法嵌入式常用外设嵌入式开源硬件17:56/20嵌入式最小系统与外设MCU三轴加速传感器温湿度、超声波继电器系统电源模块小车姿态控制电机、可调灯LCDRFID、指纹识别语音识别光线感应烟雾传感器霍尔磁感应雨滴传感器系统时钟多路ADCI2CGPIOUARTSPIDACPWM17:56/21常用接口技术数字量IOA/DPWM总线接口显示接口17:56/22数字量IO单片机接口系统:键盘输入、显示输出、打印输出、数据采集、伺服系统、数据存储、数据通信等众多功能,皆通过I/O端口实现与MCU的信息交互;某些特定的传感器时序需求,很多都直接使用数字量IO来模拟接入;复用性:部分IO可复用其他功能;驱动能力:不同端口的驱动能力不同。17:56/23A/DA/D转换是把模拟量信号转化成与其大小成比例的数字信号;A/D的主要参数(CC2530):可选的抽取率,这也设置了分辨率(7到12位)8个独立的输入通道,可接受单端或差分信号参考电压可选为内部单端、外部单端、外部差分或AVDD5产生中断请求转换结束时的DMA触发温度传感器输入电池测量功能17:56/24PWM脉冲宽度调制(PWM),是英文“PulseWidthModulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。17:56/25总线接口-串口RS-232C总线是由美国电子工业协会EIA于1969年修定的一种串行通信接口标准;一般称为UART,串口;UART模式的操作具有下列特点:8位或者9位负载数据奇校验、偶校验或者无奇偶校验配置起始位和停止位电平配置LSB或者MSB首先传送独立收发中断独立收发DMA触发17:56/26总线接口-485RS-485是一种2线,半双工,多点通信的标准;RS-485的电气特性:逻辑“1”以两线间的电压差为+(2~6)V表示;逻辑“0”以两线间的电压差为-(2~6)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL电路连接;RS-485的数据最高传输速率为10Mbps;RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好;RS-485最大的通信距离约为1219m,最大传输速率为10Mbps,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。17:56/27总线接口-IICI2C总线是PHILIPS公司推出的一种串行总线。它是具备多主机系统所需的包括总线裁决和高低速设备同步等功能的高性能串行总线,是一种近年来应用较多的串行总线;I2C串行总线只有两根信号线,一根是双向的数据线SDA,一根是时钟线SCL;I2C总线是多主机总线;I2C总线为双向I/O总线,通过上拉电阻接正电源。17:56/28总线接口-SPISPI串行总线是Motorola公司推出的一种串行总线技术;SPI串行总线是一种四线同步串行技术,数据通信从器件选择或片选(CSB)为低时有效。全双工,串行数据同时输入输出,1.05Mbps的最大主机数据传输速率,总线竞争保护;SPI串行总线包含四个信号线:串行数据输入(MOSI)、串行数据输入(MOSI)、串行数据输出(MISO)、串行时钟信号(SCK)、串行片选信号线(SS)。17:56/29总线接口-CANCAN总线是控制器局域网络(ControllerAreaNetwork,CAN)的简称,CAN总线是由德国BOSCH公司提出,目的是为了解决汽车内部硬件信号线的复杂走线,是国际上应用最广泛的现场总线之一;CAN总线采用差分信号传输,有很强的错误检测能力,通信距离远,因此被用到一些特殊的场合,比如汽车,厂矿等干扰较强的地方;CAN为多主方式工作,网络上任一节均可在任意时刻主动向网络上其他节点发送信息,不分主从;CAN节点只需通过对报文的标志符进行滤波就可以方便的实现点对点,点对多点及全局广播等几种传送接收方式。17:56/30显示接口EducationSolutions目录ContentsInternet+嵌入式系统概述常用嵌入式平台嵌入式开发方法嵌入式常用外设嵌入式开源硬件17:56/32Arduino-开源硬件Arduino是一个开放源码电子原型平台,拥有灵活、易用的硬件和软件。Arduino基于单片机/ARM微控制器,可以接收来自各种传感器的输入信号从而做到监测环境的效果,并通过控制光源,电机以及其他驱动器来影响其周围环境Arduino的硬件原理图、电路图、IDE软件及核心库文件都是开源的,在开源协议范围内里可以任意修改原始设计及相应代码。硬件低廉,软件免费,入门简单全球最流行的开源硬件17:56/33Arduino-开发环境17:56/34Arduino各种衍生版本17:56/35Arduino周边外设及作品展示17:56/36RaspberryPi(树莓派)-卡片电脑树莓派由英国的慈善组织“RaspberryPi基金会”开发,刚开始为了学生编程而设计。2012年3月,英国剑桥大学埃本·阿普顿(EbenEpton)正式发售世界上最小的台式机,又称卡片式电脑,外形只有信用卡大小,却具有电脑的所有基本功能,这就是RaspberryPi,中文译名树莓派。由于开源和丰富的外扩接口而吸引了广大的学生和玩家。17:56/37RaspberryPi(树莓派)-卡片电脑17:56/38RaspberryPi(树莓