接口技术与硬件设计片内外设

发布时间:2023-11-08
本文介绍lpc2000系列微控制器片内外设的接口设计,主要介绍以下几种:
gpio(通用i/o)
uart、modem
i2c
spi
gpio外设接口设计
lpc2000系列的绝大多数gpio为真正的全双向i/o口,可以独立控制每一根i/o口线的状态是输入还是输出,绝大多数gpio的输出为推挽输出,可以独立控制每一根i/o口的输出状态。虽然lpc2000系列的i/o电压为3.3v,gpio的输出最高为i/o口电源电压,但绝大多数gpio能够承受5v电压的输入,绝大多数gpio作为输入时是处于高阻状态。
因为lpc2000系列的gpio有以上特性,所以可以用它们(通过程序)模拟很多器件的时序达到控制相应器件的目的。
gpio外设接口设计
——按键
gpio外设接口设计
——led控制
gpio外设接口设计
——蜂鸣器
gpio外设接口设计
——模拟总线
lpc2000系列部分芯片没有外部总线,当它们需要外接总线设备时就必须用gpio模拟总线了。因为总线需要大量的信号线,而lpc2000的gpio资源是宝贵的,所以模拟总线的设计的首要任务是节省gpio的使用量,这就需要地址、数据总线复用了。
uart、modem外设接口设计
uart简介:
通用异步收发器uart(即universal asynchronous receiver and transmitter)是用硬件实现异步串行通信的通信接口电路。uart异步串行通信接口是嵌入式系统最常用的接口,可用来与上位机或其它外部设备进行数据通信。
lpc2000系列arm7微控制器均具有两个uart,它们的结构及寄存器符合16c550工业标准。
uart:
是通用异步串行通信接口的总称,uart允许在串行链路上进行全双工的通信,输出/输入的电平为ttl电平。一般来说,全双工uart定义了一个串行发送引脚(txd)和一个串行接收引脚(rxd),可以在同一时刻发送和接收数据。
16c500:
是一种工业标准的uart,此类uart芯片内部集成了可编程的波特率发生器、发送/接收fifo、处理器中断系统和各种总线状态错误检测电路等等,并具有完全的modem控制能力。
rs232:
是美国电子工业协会(eia)制定的串行通讯标准,又称rs-232-c 。rs232是一个全双工的通讯标准,它可以同时进行数据接收和发送的工作。
lpc2000系列arm7微控制器包含有两个uart接口, 详细请参考5.10节。使用uart时,数据位的宽度是由波特率而定。
如果要使用uart0与rs232接口的设备进行基本的通讯,那么就需要一个rs232转换器将ttl电平转换成rs232电平。
lpc2000系列arm7微控制器的uart1带有完整的调制解调器(modem)接口,只要使用sp3243eca转换芯片将信号转换成rs232电平,即可与modem连接,控制modem拔号、通讯等等。
2c总线接口
i2c bus(inter ic bus)是philips推出的芯片间串行传输总线,它以2根连线实现了完善的全双工同步数据传送,可以极方便地构成多机系统和外围器件扩展系统。i2c总线采用了器件地址的硬件设置方法,通过软件寻址完全避免了器件的片选线寻址方法,从而使硬件系统具有最简单而灵活的扩展方法。详细信息请参看5.12节。
——名词解释
发送器:本次传输中发送数据到总线的器件;
接收器:本次传输中从总线接收数据的器件;
主机:初始化发送、产生时钟信号和终止发送的器件,它可以是发送器或接收器。主机通常是微控制器;
从机:被主机寻址的器件,可以是发送器或接收器。
——总线信号
——常用i2c器件
随着i2c总线技术的推出。很多电子厂商都推出了许多带i2c总线接口的器件,大量应用于视频、音像及通讯等领域。表6.2给出了常用的通用i2c接口的种类、型号及寻址字节。
——zlg7290
zlg7290为键盘和led驱动器,它提供了i2c串行接口和键盘中断信号,方便与处理器连接;可驱动8位共阴数码管或64只独立led和64个按键, 可控扫描位数以及可控任一数码管闪烁,提供数据译码和循环移位、段寻址等控制,8个功能键可检测任一键的连击次数,无需外接元件即可直接驱动led即可扩展驱动电流和驱动电压。下图为zlg7290的引脚排列。
——cat24wc02
cat24wc02是一款i2c总线接口的e2prom器件,其引脚如下图所示。
cat24wc02的i2c总线地址的高4位固定为1010,低四位由a2、a1和a0决定。当a2a1a0引脚悬空时,默认值为000。
——i2c应用示例
lpc2000系列微控制器都提供了硬件i2c总线接口和i2c总线控制器。由于lpc2000微控制器的sda和scl端口为开漏输出,所以必须在sda和scl线上分别外接一个上拉电阻。
该示例利用lpc2000微控制器作为i2c总线的主机,在总线上挂接着两个i2c器件作为从机,分别为e2prom器件cat24wc02和键盘和led驱动器zlg7290。r46和r48即为i2c总线上的两个上拉电阻。
spi总线接口
spi(serial peripheral interface——串行外设接口)总线系统是一种同步串行外设接口,允许mcu与各种外围设备以串行方式进行通信、数据交换。外围设备包flash、ram、a/d转换器、网络控制器、mcu等。spi系统可直接与各个厂家生产的多种标准外围器件直接接口,一般使用4条线:串行时钟线sck、主机输入/从机输出数据线miso、主机输出/从机输入数据线mosi和低电平有效的从机选择线ssel(有的spi接口芯片带有中断信号线int,有的spi接口芯片没有主机输出/从机输入数据线mosi)。详细信息参看5.13节。
——引脚描述
sck串行时钟,用于同步spi接口间数据传输的时钟信号。该时钟总是由主机驱动并且从机接收;
ssel从机选择,spi从机选择信号是一个低有效信号,用于指示被选择参与数据传输的从机。每个从机都有各自特定的从机选择输入信号。在数据处理之前,ssel必须为低电平并在整个处理过程中保持低电平。如果在数据传输中ssel信号变为高电平,传输中止;
miso主入从出,该信号是一个单向的信号,它将数据从从机传输到主机。当器件为从机时,串行数据从该端口输出;当器件为主机时,串行数据从该端口输入;当从机没有被选择时,将该信号驱动为高阻态;
mosi主出从入,该信号是一个单向的信号,它将数据从主机传输到从机。当器件为主机时,串行数据从该端口输出;当器件为从机时,串行数据从该端口输入。
——发送与接收
将数据写到spi发送缓冲区后,时钟信号sck的1次作用对应一位数据的发送(miso)和另一位数据的接收(mosi);在主机中数据从移位寄存器中自左向右发出送到从机(mosi),同时从机中的数据自右向左发到主机(miso),经过8个时钟周期完成1个字节的发送。输入字节保留在移位寄存器中,然后从接收缓冲区中读出一个字节的数据。
——总线连接
spi总线可在软件的控制下构成各种简单的或复杂的系统,如:1个主mcu和几个从mcu;几个从mcu相互连接构成多主机系统(分布式系统);1个主mcu和1个或几个从i/o设备。
大多数应用场合中,使用1个mcu作为主机,它控制数据向1个或几个从外围器件的传送。从器件只能在主机发命令时才能接收或向主机传送数据。其数据的传输格式通常是高位(msb)在前,低位(lsb)在后,在一些增强型的mcu中高位在前或低位在前都是可通过软件设置的,如lpc2000系列微控制器。
——应用示例
在把spi与几种不同的串行i/o芯片相连时,应特别注意这些串行i/o芯片的输入输出特性。
(1) 输入芯片的串行数据输出是否有三态控制端。平时未选中芯片的输出端应处于高阻态。若没有三态控制端,应外加三态门。否则mcu的miso端只能连接1个输入芯片。
(2) 输出芯片的串行数据输入是否有允许控制端。即应该只有在这片芯片允许时,sck脉冲才把串行数据移入该芯片;芯片禁止时,sck对芯片无影响。若没有允许控制端,应在外部用门电路 对sck进行控制后,再加到芯片的时钟输入端,或者spi只连接1个芯片,不能再连接其它输入或输出芯片。
上一个:单区域ospf特点(单区域ospf配置的实验总结)
下一个:电气设备防爆的类型及标志有哪些?

RTT05155JTP现货库存,最新价格
室内隐蔽工程的小知识
饰面板接缝如何处理?
i5电脑笔记本哪款性价比高些,笔记本i5几代的性价比最高
华为交换机telnet命令详解(华为交换机 telnet配置)
观赏石榴的养护方法
一台电脑怎么安装双系统(一台电脑怎么装两个系统)
污水处理工艺选择时应该考虑哪些基本因素?
AC0603JR-075R6L,国巨车规电阻0603 5.6Ω ±5% 1/10W
茶叶流通之商茶