嵌入式系统6 嵌入式系统总线ppt课件.ppt

上传人:小飞机 文档编号:1686156 上传时间:2022-12-14 格式:PPT 页数:62 大小:602KB
返回 下载 相关 举报
嵌入式系统6 嵌入式系统总线ppt课件.ppt_第1页
第1页 / 共62页
嵌入式系统6 嵌入式系统总线ppt课件.ppt_第2页
第2页 / 共62页
嵌入式系统6 嵌入式系统总线ppt课件.ppt_第3页
第3页 / 共62页
嵌入式系统6 嵌入式系统总线ppt课件.ppt_第4页
第4页 / 共62页
嵌入式系统6 嵌入式系统总线ppt课件.ppt_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《嵌入式系统6 嵌入式系统总线ppt课件.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统6 嵌入式系统总线ppt课件.ppt(62页珍藏版)》请在三一办公上搜索。

1、嵌入式系统,课程内容,嵌入式系统硬件基础(2学时)嵌入式系统软件基础(2学时)Arduino开源硬件平台应用开发(6学时)嵌入式系统中的总线与网络(2学时)嵌入式操作系统(2学时)嵌入式系统驱动开发方法(2学时)嵌入式数据库(1学时)数据流图(1学时)实时软件设计方法DARTS(2学时)ARM硬件体系结构(2学时)ARM应用开发介绍(2学时) 实时操作系统freeRTOS(2学时) 实时操作系统freeRTOS的移植(2学时)基于freeRTOS的驱动开发(2学时)基于实时操作系统的实时应用开发(20学时,实践),第二部分 嵌入式系统开发2.1 嵌入式系统中的总线,嵌入式系统中的总线,系统级总

2、线板级总线片上总线,板级总线,嵌入式系统中,通过总线在多个互连I/O设备间进行计算机或者主机系统并行通信。PC总线PC104VME,板级总线PC总线,从整体来看,PC总线大致只经过了ISA 和PCI 总线两个阶段以及未来的PCI Express 总线。,ISA总线阶段 1PC/XT总线( PC总线):1981年,IBM,PC/XT 电脑,基于8bit的8088 处理器。2 PC/AT 总线:1984年,IBM ,基于16-bit Intel 80286处理器的PC/AT 电脑。 为了开发与IBM PC 兼容的外围设备,业内逐渐确立了以IBM PC 总线规范为基础的ISA(工业标准架构:Indu

3、stry Standard Architecture )总线。3 EISA(Extended ISA,扩展ISA)总线: 1988年,康柏、惠普等9个厂商协同把ISA 扩展到32-bit,8MHz,与8/16bit 的ISA总线完全兼容。,ISA总线阶段 ISA :8/16bit ,最大传输速率仅为8MB/s ,允许多个CPU 共享系统资源。 兼容性好,是上个世纪80年代最广泛采用的系统总线; 弱点:传输速率过低、CPU占用率高、占用硬件中断资源等。 在PC98 规范中,就开始放弃了ISA 总线,而Intel 从i810 芯片组开始,也不再提供对ISA 接口的支持。 EISA 也由于速度有限,

4、且成本过高,在还没成为标准总线之前,在20世纪90年代初的时候,就给PCI 总线给取代了。,PCI总线阶段,PCI 总线是独立于CPU 的系统总线,采用了独特的中间缓冲器设计,可将显示卡、声卡、网卡、硬盘控制器等高速的外围设备直接挂在CPU 总线上,打破了瓶颈,使得CPU 的性能得到充分的发挥。 最早提出的PCI 总线工作在33MHz 频率之下,传输带宽达到了133MB/s(33MHz X 32bit/8)。 1993年提出了64-bit 的PCI 总线。 后来又提出把PCI 总线的频率提到66MHz。 目前广泛采用的是32-bit、33MHz 的PCI 总线。,PCI总线的特点及系统结构PC

5、I总线是一种兼容性最强、功能最全的计算机总线。他可同时支持多组外围设备,且不受制于处理器。PCI总线有如下主要特点:(1)在全部读写传送中可实现突发传送。(2)并行总线操作。(3)隐式仲裁。(4)访问速度快。(5)软件透明。(6)自动配置。,PCI总线阶段,PCI总线阶段,PCI是一种高性能3264 b地址数据复用总线。 PCI总线不仅可以应用到低档至高档的台式系统上,而且也可应用在便携式机及至服务器的范围中。 在一个PCI系统中,可做到高速外部设备和低速外部设备共享,PCI总线与ISAEISA总线并存。,PCI总线阶段,PCI总线信号与命令接口信号线,通常分为必备的和可选的2大类。 主设备:

6、取得了总线控制权的设备,需要49条接口信号线; “从设备”或“目标设备”:被主设备选中以进行通信的设备,至少需要47条接口信号线。 图中,表示低电平有效,否则表示高电平有效。,PCI总线阶段,PCI总线阶段,PCI总线传输协议PCI总线对协议、时序、负载、电气特性及机械特性等技术指标均有严格的规定和要求。(1)基本的总线传输机制:一次突发传输包括一个地址期和一个或若干个数据期。(2)除RST,INTAINTD之外的所有信号都是在时钟的上升沿被采样。(3)PCI总线上数据传输基本上都由FRAME,IRDY和TRDY三条信号线控制。(4)当FRAME和IRDY都无效时,接口处于空闲状态。FRAME

7、信号建立后的第一个时钟前沿是地址期,在这个时钟前沿上传送地址和总线命令;下一个时钟前沿开始一个或若干个数据期。IRDY和TRDY有效的时钟前沿进行一次数据传输。(5)无论是主设备还是目标设备,一旦承诺了数据传输,就要进行到本次传输完成。(6)FRAME撤销而IRDY建立,表示主设备准备好了最后一次数据传输,等到目标设备发出了TRDY信号,就标志着最后一次传输的完成.,PCI总线阶段,PCI总线配置空间 根据PCI规范,每一个PCI设备都有一个PCI配置空间,容量最大为256字节,称为配置寄存器。配置寄存器是PCI设备的硬件与PCI设备的初始化软件及错误处理软件之间的信息交接区,以便软件对Pci

8、设备进行识别和控制以及PCI设备向软件反映设备状态和要求。,配置空间的组织结构256字节的配置空间分为头标区(Header Region):64个字节,每个PCI设备必备,对所有的PCI设备其寄存器布局和格式大致相同。头标区又分为两部分,头16个字节的对所有类型的PCI设备都是相同的,余下的48字节根据设备的功能类别有不同的布局。设备关联区(Device Dependent Region):192字节,寄存器的设置与布局完全取决于该PCI设备本身的需要,一个PCI设备因本身的特殊功能所需设置的专用寄存器只能放在这个区域中。,PCI总线阶段,配置空间的功能1设备识别 头标区有五个寄存器是识别一个

9、PCI设备的,这五个寄存器都是只读的。(1) 厂商标识(Vendor ID) 这个标识符由PCI规范的权威组织SIG统一分配,以保证惟一性,例如分配给Intel公司的标识码为“8086h”。“FFFFh”是一个无效的标识。(2) 设备标识(Device ID) 标识某一种设备,这个标识符由制造厂商分配。(3) 修订版本标识(Revision ID) 标识设备具体的修订版本,由制造厂商选择。(4) 头标类型(Head Type) 表明头标区中10h到3Fh字节空间的布局类型和该设备是否是多功能设备。位7用来标识一个多功能设备,为1则该设备是一个多功能设备;为0该设备为单一功能设备。位6到0规定头

10、标区中10h到3Fh字节的布局类型,目前只有两种类型:00h和01h,此处讨论的是00h类型。 (5) 分类代码(Class Code) 该寄存器分为三个字节段:高字节(0Bh)是基本分类码,粗略地对设备地功能进行分类;中字节(0Ah)是一个子分类码,标识设备更具体的功能;低字节(09h)标识所用的、寄存器一级的编程接口。,PCI总线阶段,2. 设备控制 位于配置空间04h偏移地址处的命令寄存器是一个读/写寄存器,控制一个PCI设备产生和响应PCI周期的能力。I/O空间使能位控制设备对I/O空间访问的响应,为1时,允许该设备对I/O空间的访问进行响应,为0时禁止。如果该设备内有属于PCI I/

11、O空间的单元并允许PCI主设备访问时,此位应置为1。存储器空间使能位控制本设备对存储器空间访问的响应,为1时允许该设备对存储器空间的访问进行响应,为0时禁止。如果该设备内有属于PCI存储空间的单元并允许PCI主设备访问时,此位应置为1。,PCI总线阶段,3 基地址 头标区中有6个双字的基址寄存器,在上电时,这6个基地址寄存器中的内容向POST软件反映该设备需要多少存储器空间和I/O空间。POST软件通过各设备内的基地址寄存器了解到PCI总线上有哪些存储器设备和I/O设备,根据它们的容量需求把它们映射定位到适当的存储器地址和I/O地址,并把起始地址再写入基地址寄存器,然后引导系统。,PCI Ex

12、press 总线,第三代输入/输出总线,简称3GIO(Third-Generation Input/Output),另外它的开发代号是Arapahoe ,所以又称为Arapahoe 总线。 Intel 在2001年春季的IDF上,正式公布了旨在取代PCI总线的第三代I/O 技术,该规范由Intel 支持的AWG(Arapahoe Working Group)负责制定。 在2002 年4月17日,AWG 正式宣布3GIO 1.0规范草稿制定完毕,并移交PCI-SIG 进行审核。,PCI Express总线阶段,CPCI总线1995年11月PCI工业计算机制造者联合会(PICMIG)颁布了Comp

13、actPCI规范1.0版1997年推出CPCI2.0规范CPCI总线规范=PCI总线的电气规范+标准针孔连接器(IEC-1076-4-101)+欧洲卡规范(IEC297/IEEE1011.1),CPCI总线在电气特性上,CPCI总线以PCI电气规范为基础,解决了VME等总线技术与PCI总线不兼容的问题,使得基于PC的x86架构、硬盘存储等技术能在工业领域使用。同时由于在接口等地方做了重大改进,使得采用CPCI技术的服务器、工控电脑等拥有了高可靠性、高密度的优点。在机械结构上,CPCI总线结构使用了欧卡连接器和标准3U、6U板卡尺寸。此外,CPCI总线具有很好的抗震性和通风性,而且还可以从前面板

14、拔插板卡,使更换和维修板卡极为方便。,PC/104是一种工业计算机总线标准,PC/104是一种工业计算机总线标准。PC/104有两个版本:8位和16位,分别与PC和PC/AT相对应。PC/104PLUS则与PCI总线相对应。 PC/104是IEEE-996标准的延伸。第一块PC104产生于1987年,但严格意义的规范说明在1992年才公布,从那以后,对PC104感兴趣的人越来越多,当时就有125个厂家引进PC104规范生产PC104兼容产品。像原来的PC总线一样,PC104一直是以一个非法定标准在执行,而不是委员会设计制定的。1992年IEEE开始着手为PC和PC/AT总线制定一个精简的IEE

15、EP996标准(草稿),PC104作为基本文件被采纳,叫做IEEEP996.1兼容PC嵌入式模块标准。 PC104是一种专门为嵌入式控制而定义的工业控制总线。其信号定义和PC/AT基本一致,但电气和机械规范却完全不同,是一种优化的、小型、堆栈式结构的嵌入式控制系统。,板级总线PC/104总线,PC/104是一种工业计算机总线标准,PC104与普通PC总线控制系统的主要不同是: 1、小尺寸结构:标准模块的机械尺寸是3.6X3.8英寸,即96X90mm 2、堆栈式连接:去掉总线背板和插板滑道,总线以“针”和“孔”形式层叠连接,即PC104总线模块之间总线的连接是通过上层的针和下层的孔相互咬和相连,

16、这种层叠封装有极好的抗震性。 3、轻松总线驱动:减少元件数量和电源消耗,4mA总线驱动即可使模块正常工作,每个模块1-2瓦能耗。,PC/104是一种工业计算机总线标准,PC104和PC104PLUS PC104有两个版本,8位和16位,分别与PC和PC/AT相对应。 8位PC104共有64个总线管脚,单列双排插针和插孔,P1:64针,P2:40针,合计104个总线信号,PC104因此得名。当8位模块和16位模块连接时,16位模块必须在8位模块得下面(见附图2)。P2总线连结在8-位元模块中是可选的,这样让这些模块无论何处都可在堆栈中使用。 PC104PLUS则与PCI总线相对应。PC104PL

17、US是专为PCI总线设计的,可以连接高速外接设备。PC104PLUS在硬件上通过一个3X40即120孔插座,PC104PLUS包括了PCI规范2.1版要求的所有信号。为了向下兼容,PC104PLUS保持了PC104的所有特性。,PC/104是一种工业计算机总线标准,PC104PLUS与PC104相比有以下3个特点: 1相对PC/104连接,增加了第三个连结接口支持PCIbus. 2改变了组件高度的需求,增加模块的柔韧性. 3加入了控制逻辑单元,以满足高速度bus的需求.,PC/104是一种工业计算机总线标准,PC104PLUS总线与PCI总线规范的不同: 1PC104PLUS是用120针2mm

18、孔堆栈插座连接,而32位PCI总线用124针插槽连接 2120针的PCI不支持64位扩展,和JTAG,PRSNT或 CLKRUN 信号. PC104PLUS规范包含了两种总线标准:ISA和PCI,所以向其他PC机一样,可以双总线并存。 由于PC104的管脚定义与ISA、PCI的规范完全兼容,所以公司在产品内部用PC/104模块时,也可以应自己的需要设计生产更多的专业应用PC/104模块种类。,串行总线扩展- I2C串行总线,I2C总线是一个简单的双向两总线。通过此总线对IC进行控制非常方便。 引入I2C共用总线接口的原因 消费电子、通信和工控的一些系统一般都有: 智能控制,如使用微处理器进行控

19、制。 通用的电路,如 LCD驱动、I/O 端口、RAM、EEPROM和一些数据转换电路。 面向应用的电路,如数字解调和数字信号处理等。 为了充分利用以上设计的相似之处,使硬件工作更有效,电路更简单,引入了I2C总线。,片上总线IC器件之间进行连接,串行总线扩展- I2C串行总线,I2C总线的特点 仅有两条总线信号线 SDA(数据信号线)和SCL( 串行时钟信号线)。 每一个连在此总线的设备是可编址的 采用I2C总线连接的设备处于主从模式,主方既可接受数据,也可发送数据。 一个真正多总线 含冲突检测和竞争功能,从而确保当多个主方同时发送数据时不会造成数据冲突。 串行的8位双向数据传送总线 在标准

20、模式下,数据传输速率为100Kb/s;在快模式下,数据传输率为400Kb/s;在高速模式下,数据传输率为3.4Mb/s。,串行总线扩展- I2C串行总线,I2C总线的结构和数据传输规范 I2C总线是一种用于IC器件之间进行连接的二进制总线。 通过两根信号线(SDA和SCL)传输信息。 通过地址识别连接此总线接口的设备,如存储器、键盘接口等。SDA(串行数据信号线)和SCL(串行时钟信号线)都是双向的I/O线,它们通过上拉电阻连接到正电源。当总线空闲时,两条信号线(SDA和SCL )都是高电平,连接在总线上的器件的输出级必须是开漏或集电极开路,以实现线与功能。,SPI总线概述SPI总线结构SPI

21、总线工作模式与数据传输SPI总线应用示例SPI总线应用代码示例,片上总线SPI总线,一、SPI总线概述,SPI(Serial Peripheral Interface,同步串行外设接口)是由Motorola公司首先提出的全双工三线同步外设接口,采用主从模式架构(Master-Slave),支持多从设备模式应用,一般只支持单主设备。SPI总线大量应用于主设备与EEPROM,RTC,ADC和显示驱动器之类的慢速外设通信。SPI接口在内部硬件实际上是个简单的移位寄存器,时钟由主设备(Master)控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后。,一、SPI总线概述,4. 主要特点: 同步通

22、信由主设备发起; 支持全双工工作模式; 工作在主-从设备模式下; 时钟相位和极性可编程; 带有写冲突保护和总线竞争保护机制; 最大传输波特率5Mbps,总线频率最高可达2MHz; 工作在主设备模式下时,支持最大的时钟频率=系统时钟/4; 工作在从设备模式下时,支持最大的时钟频率=系统时钟/2。,二、SPI总线结构,SPI设备可以只是一个移位寄存器,也可以是一个独立的子系统。命令代码和数据值都是串行传输的。移位寄存器的长度不是固定的,不同设备可能不同。正常来说,移位寄存器是8位的,或者是8的整数倍(integral multiples)。当然,移位寄存器的长度并不一定要遵循这个规范,比如两个级联

23、的EEPROM就可以存储18位数据。,二、SPI总线结构,SPI要求两条控制线SCLK(时钟)、CS(片选)和两条数据线SDI(数据输入)、SDO(数据输出)。Motorola将这些数据线命名MOSI和MISO,即Master-Out-Slave-In和Master-In-Slave-Out。片选线则称为SS(Slave-Select)。CS对应被选中的外设。这个引脚大多时候是低电平有效的。若没被选中,SDO线是高阻的,故是未被激活的。主设备决定它要连接的是哪个外设。无论设备有没有被选中,时钟线SCLK都会被接入该设备。时钟信号用于数据通信的同步。大多数SPI设备提供这四条线。有时候,SDI和

24、SDO线会翻倍,比如National Semiconductor公司的在温度传感器LM74;有时候,这些线中的一根会缺失。若某个外围设备一定不能被配置,它就无需输入线,只需要输出线;一旦它被选中了,它就开始发送数据。有一些ADC设备没有SDI线,比如Microchip的MCCP3001。也有些设备是没有数据输出的。比如LCD控制器,它可以被配置,但不能发送数据或状态信息。(比如National Semiconductor的COP472-3)。,二、SPI总线结构,主设备与从设备连接,主设备与从设备通信环路,SPI主设备-从设备连接及通信环路示意图:,二、SPI总线结构,主设备与级联SPI设备连

25、接,左图中的几个级联SPI设备显然可以看作是一个大型设备,可以共用同一个片选信号。前一个设备的输出数据和下一个设备的输入数据绑定在一起,这样就形成了一个更宽的移位寄存器。,二、SPI总线结构,主设备与多个独立从设备连接,如果独立从设备与主设备直接连接,则需要右图所示的总线结构。这时候主设备的SCKL时钟和SDI数据线都和每个从设备直接连接。此时,SDO数据线也还是绑定在一起,然后一起返回给主设备。只有片选信号是独立连接到每一个SPI设备的。,三、SPI总线工作模式与数据传输,Motorola没有定义任何通用的SPI时钟规范,但实际上,SPI总线有四种模式可以使用,这四种模式由时钟极性(CPOL

26、,Clock Polarity)和时钟相位(CPHA,Clock Phase)组合决定。CPOL和CPHA的设置决定了数据采样的时钟沿。,1.SPI总线工作模式,CPOL对传输协议没有重大影响。若CPOL = 0,串行同步时钟的空闲状态为低电平;若CPOL = 1,串行同步时钟的空闲状态为高电平。CPHA能够配置用于选择两种不同的传输协议之一进行数据传输。若CPHA = 0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;若CPHA = 1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。,三、SPI总线工作模式与数据传输,1.SPI总线工作模式,SPI的四种工作模式,其中,使用最

27、广泛的是SPI0和SPI3方式。,三、SPI总线工作模式与数据传输,1.SPI总线工作模式,CPOL决定空闲时时钟的电平如果CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平,CPHA决定从时钟的第几个跳变沿开始数据采样,三、SPI总线工作模式,CPHA = 0时,SPI总线数据传输时序,CPHA = 1时,SPI总线数据传输时序,2.SPI总线数据传输时序图,四、SPI总线应用举例,有一个主设备和从设备进行通信,分别有1个8位双向移位寄存器进行数据交换。其中主设备待发送数据为10101010,上升沿发送,下降沿接收,高位先发送,当第一个下降沿到来时

28、,MISO上的电平将存到寄存器中,此时主设备寄存器=0101010,MISO;从设备上移位寄存器数据为01010101,发送过程与主设备的相反。这样,8个时钟脉冲后,两个寄存器的内容就相互交换一次,这样就完成了一个SPI时序。,四、SPI总线应用举例,五、SPI总线应用代码示例,/ SPI_defs.h/ 此文件定义SPI 引脚/ SPI 引脚映射到P0.0 - P0.3, 但也可以定义到器件/ 的其它任何可用的GPIO引脚#ifndef SPI_DEFS#define SPI_DEFSsbit MOSI = P00; / 主出/从入(输出)sbit MISO = P01; / 主入/从出(输

29、入)sbit SCK = P02; / 串行时钟(输出)sbit NSS = P03; / 从选择(输出到片选)#endif,注意:此代码适用于CYGNAL公司的AN028-C8051F30X系列单片机产品,以模式0为例。,五、SPI总线应用代码示例,/ SPI_MODE0.c/ 此文件包含一个模式0 执行SPI 器件的C 程序。/ 目标t: C8051F30 x/ 链接工具 KEIL C51 6.03 / KEIL EVAL C51#include / SFR 声明#include SPI_defs.h / SPI 端口定义/ SPI_Transfer/ 使用SPI 协议同时发送和接受一个字

30、节 / SCK 空闲为低在SCK 上升时位锁存/ 此程序的时序如下/参数时钟数/ MOSI 有效到SCK 上升沿 6/ SCK 上升到 MISO 锁存 2/ SCK 下降到 MOSI 有效 7/ SCK 高时间 8/ SCK 低时间 13,五、SPI总线应用代码示例,char SPI_Transfer (char SPI_byte)unsigned char SPI_count; / SPI 办理计数器 / 单个字节 SPI 循环for (SPI_count = 8; SPI_count 0; SPI_count-) MOSI = SPI_byte / 结束 SPI_Transfer,五、SP

31、I总线应用代码示例,/ SPI_F300_Test.c/ 此程序示范C8051F30X 处理主SPI 程序集是如何在一个C 程序中使用的/ 此程序设置C8051F30X 器件的通用IO 引脚为适当功能/ 接着用 SPI_Transfer 函数通过SPI 引脚发送和接收信息/ 当发送信息时通过UART 口与PC 机的终端程序连接来/ 监视程序进程/ 为了实现代码功能下列文件之一应该被编译或汇编/ 最终生成的目标文件必须与从这些文件产生的目标文件连接/ SPI_MODE0.c 模式0 主SPI 器件的C 语言实现/ 目标器件: C8051F30 x/ 连接工具: KEIL C51 6.03 / K

32、EIL EVAL C51,五、SPI总线应用代码示例,#include / SFR 声明#include / 标准 I/O#include SPI_defs.h / SPI 端口定义/ C8051F30X 的16 位SFR 定义sfr16 DP = 0 x82; / 数据指针sfr16 TMR2RL = 0 xca; / 定时器T2 重装值sfr16 TMR2 = 0 xcc; / 定时器T2 计数器sfr16 PCA0CP1 = 0 xe9; / PCA0 模式1 捕捉/比较sfr16 PCA0CP2 = 0 xeb; / PCA0 模式2 捕捉/比较sfr16 PCA0 = 0 xf9;

33、/ PCA0 计数器sfr16 PCA0CP0 = 0 xfb; / PCA0 模式0 捕捉/比较/ 全局变量#define SYSCLK 24500000 / 系统时钟频率Hz#define BAUDRATE 115200 / UART 波特率bps,五、SPI总线应用代码示例,/ 函数原型void PORT_Init (void); / 端口I/O 配置void SYSCLK_Init (void); / 系统时钟初始化void UART0_Init (void); / UART0 初始化extern char SPI_Transfer (char); / SPI 传输程序/ 主程序voi

34、d main (void) unsigned char test_counter, SPI_return; / 用于测试SPI 程序/ 禁止WDTPCA0MD / 使能全部中断,五、SPI总线应用代码示例,while (1)for (test_counter = 0; test_counter = 0 xFF; test_counter+)NSS = 0 x00; / 选择SPI 从器件 / 发送/接收SPI 字节SPI_return = SPI_Transfer(test_counter); NSS = 0 x01; / 取消选择SPI 从器件printf( nSPI Out = 0 x%0

35、2X, SPI In = 0 x%02X , (unsigned)test_counter,(unsigned)SPI_return);/ 发送SPI 数据到UART/ 为校验目的,五、SPI总线应用代码示例,/ 初始化子程序/ PORT_Init/ 配置数据交叉开关和GPIO 端口/ P0.0 - MOSI / P0.1 - MISO/ P0.2 - SCK / P0.3 - NSS / P0.4 - UART TX / P0.5 - UART RX/ P0.6 -/ P0.7 -void PORT_Init (void)XBR0 = 0 x0F; / 在XBAR 中跳过SPI 引脚XBR1

36、 = 0 x03; / UART0 TX 和RX 引脚使能XBR2 = 0 x40; / 使能数据交叉开关和弱上拉P0MDOUT |= 0 x1D; / 允许TX0, MOSI, SCK 和NSS 为推挽输出,五、SPI总线应用代码示例,/ SYSCLK_Init/ 此程序初始化系统时钟用内部24.5 MHz 时钟/ 作为时钟源void SYSCLK_Init (void)OSCICN = 0 x07; / 选择内部振荡器作为系统时钟源/ UART0_Init/ 使用定时器T0 作为波特率发生器和8-N-1 模式void UART0_Init (void)SCON0 = 0 x10; / SC

37、ON0: 8 位可变速率位/ 忽略停止位/ RX 使能/ 第九位为0/ 清RI0 和TI0 位,五、SPI总线应用代码示例,if (SYSCLK/BAUDRATE/2/256 1)TH1 = -(SYSCLK/BAUDRATE/2);CKCON SCA1:0 = 10,五、SPI总线应用代码示例,TL1 = 0 xff; / 立即设置定时器T1 溢出TMOD |= 0 x20; / TMOD: 定时器t1 8 位自动重装TMOD / 表示TX0 就绪,CAN总线,Controller Area Network,控制器局域网,现场总线之一。是一种多主方式的串行通讯总线,基本设计规范要求有高的位速

38、率,高抗电磁干扰性,而且能够检测出产生的任何错误。主要应用于汽车电控制系统、电梯控制系统、安全监控系统、医疗仪器、纺织机械、船舶运输等方面CiA(CAN in Automation)为全球应用CAN技术的权威。,系统级总线,CAN总线特点,低成本 远距离传输(长达10Km) 相对高速的数据传输速率(1Mbit/s) 可根据报文的ID决定接收或屏蔽该报文 可靠的错误处理和检错机制 发送的信息遭到破坏后,可自动重发 节点在错误严重的情况下具有自动退出总线的功能,CAN总线控制器体系结构,在嵌入式系统中实现CAN总线接口有两种方式,一种是处理器本身带有CAN总线控制器,另一种是使用CAN总线控制芯片

39、实现。下图是CAN总线控制器体系结构。,嵌入式系统上的CAN总线接口,处理器本身带有CAN总线控制器使用CAN总线控制芯片SJA1000Philips独立CAN控制器,替代82C200,支持CAN2.0AB,同时支持11位和29位ID,位速率可达1M,具有总线仲裁功能,扩展的接收缓冲器(64字节FIFO),增强的环境温度范围(-40-+125)。并行总线接口。MCP2510/5MicroChip支持CAN2.0AB,同时支持11位和29位ID,位速率可达1M,具有总线仲裁功能。2个接收缓冲区,3个发送缓冲区。高速SPI接口。,CAN总线驱动芯片,82C250CAN总线收发器,是CAN协议控制器

40、和物理总线之间的接口,该器件对总线提供差动发送能力并对CAN控制器提供差动额接收能力,有很强的抗电磁干扰(EMI)的能力 ,至少可挂110个节点。TJA1050、1040替代82C250产品,电磁辐射更低 ,无待机模式,总线和总线桥,嵌入式系统的广域网络接入,嵌入式系统的局域网与广域网 成熟的嵌入式系统局域网 RS422/485、CAN总线等 延伸到对象体系的嵌入式系统网络(汽车电子、状态监测、参数采集) 成熟的互联网广域网络技术 互联网新协议IPv6的无限广域 电信网的无限延伸嵌入式系统接入以太网的技术支持 独立的网络控制器 单片机内嵌网络接口 网络单片机:Dallas公司网络单片机 DS80C400(10/100以太网控制器、CAN2.0B控制器、 1-Wire,寻址16M),嵌入式系统的广域网络接入,广域网络的无线接入方式 电信无线网络的数据通信 GSM短信息 SMS(Short Message Service)方式、 GPRS通用分组无线业务 (General Packet RadioService) CDMA的DDN(Digital Data Network) 无线传感器网络向末端延伸 嵌入式系统的一个新兴领域 诞生于美国军情系统“智能微尘(Smart dust)” 的情报系统 使广域网向物理参数信息延伸 已有较完善的技术平台可用,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号