12775|0

2

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

SPCE061A的IO扩展方案 [复制链接]

摘 要:本文以举例的方式从硬件和软件原理上阐述了如何运用SPBA01B对MCU进行IO扩展、总线扩展和级联使用。 关键词:SPBA01B SPEC061A 1 引言 随着数字语音、图像处理技术的飞速发展,其在电子产品中也得到广泛应用,如语音智能玩具、PDA、有语音和图像识别技术的机器人等。一个复杂或功能强大的语音图像处理系统需要很大的、不同的存储器(ROM、FLASH、SRAM)的存储空间。由凌阳公司开发的可级连的单片总线扩展芯片SPBA01具有接口简单、扩展能力强、易于应用的特点,极大的适应了语音、图像处理系统和需要总线扩展的其它系统之需求。另外,SPCE061A是由凌阳公司开发的16位带有DSP功能的单片机。它具有语音,图像处理的运算能力。用SPCE061A和SPBA01构成的带数据总线扩展系统,必将推动数字语音、图像处理技术的电子产品进一步发展。 2 SPBA01B芯片简介 2.1 芯片特性 · 用11个IO口可扩展4Mbytes的Memory或25个IO口 · 可最多7个SPBA01B级联 · 支持各种Memory类型的扩展,比如:SRAM、ROM、EPROM、EEPROM 和FLASH · SPBA01B内部结构模块图如图 2.1所示。 2.2 内部结构 图 2.1 SPBA01B内部结构模块图 2.3 管脚说明 SPBA01B的封装为LQFP44-0.8,它的管脚图如图 2.2如所示。 图 2.2 SPBA01B管脚图 SPBA01B的各个管脚说明如表 2.1所示。 表 2.1 SPBA01B的各管脚说明 符号 管脚号 类型 描述 CI 17 I 片选信号 CO 16 O 下一级联芯片的片选 AD7-AD0 4-11 地址/数据总线 MC1、MC0 1、2 读/写(数据/地址)信号线 P2.7 () P2.6-P2.0 27 26-20 I/O 存储器扩展器 P2.7:用作片选 P2.6-P2.0:用作地址线A[14:8] I/O扩展器 输入模式下:内置下拉电阻 P1.7-P1.0 37-44 I/O 存储器扩展器 P1.7-P1.0:用作地址线 A[7:0] I/O扩展器 输入模式下:内置下拉电阻 P0.7 () P0.6 () P0.5-P0.0 28 29 30-35 I/O 存储器扩展器 P0.7:用作Memory 1片选 P0.6:用作Memory 2片选 P0.6-P0.0:用作存储器的BANK地址B[6:0] I/O扩展器 输入模式下:内置下拉电阻 OSCO () 18 O 存储芯片的读使能信号 P55 () 19 O 存储器扩展器:存储芯片的写使能信号 I/O扩展器:仅用输出 XI 12 I 晶振输入引脚 XO 13 O 晶振输出引脚 CLK0 15 O 时钟输出 VDD 36 I 电源 VSS 3 I 参考地 DVP 14 I 测试模式选择,内接下拉电阻,通常悬空 2.4 地址映射 当SPBA01B用作总线扩展时,使用地址$4000H-$BFFFH为存储扩展,存储页的大小为32K Bytes,其中地址$8000H-$BFFFH被映射为存储器的地址$0000H-$3FFFH,地址$4000H-$7FFFH被映射为存储器的地址$4000H-$7FFFH。地址$0000H-$003FH用作寄存器设置。详细的映射图如图 2.3所示。 图 2.3地址映射图 2.5 读写时序 对SPBA01B的读写时序图分别如图 2.4、图 2.5所示。 图 2.4 读SPBA01B的时序 图 2.5 写SPBA01B的时序 从图 2.4、图 2.5可以看出,MC1决定AD总线是地址总线还是数据总线,MC0决定操作模式(读或写)。MC1为高电平时,AD[7:0]是地址输入线,MC1为低电平时AD[7:0]是数据输入/输出线。当作为输入地址时,MC0为高电平时AD[7:0]是高地址A[15:8],MC0为低电平时AD[7:0]是低地址A[7:0]。当作为数据线时,MC0为高电平时AD[7:0]是读数据D[7:0], MC0为低电平时AD[7:0] 是写数据D[7:0]。 MC0、MC1、AD总线三者之间的状态关系如表 2.2所示。 表 2.2 解码表 MC1 MC0 AD总线 H H AH(高地址) H L AL(低地址) L H 读数据 L L 写数据 3 扩展应用方案介绍 3.1 IO扩展应用 本例介绍SPCE061A使用SPBA01B扩展IO。主要实现功能:使用三个按键实现控制LED的亮灭。 3.1.1 电路框图 SPCE061A使用SPBA01B扩展IO的电路框图如图 3.1所示: 图 3.1 IO扩展模块图 3.1.2 电路连接图 SPCE061A与SPBA01B的连接图如图 3.2所示: 图 3.2 IO扩展的电路连接图 3.1.3 功能描述 使用Key1、Key2、Key3三个按键实现控制16个LED灯的亮灭,三个按键的作用如下: · Key1:按下该键的时候,点亮16个LED灯。 · Key2:按下该键的时候,点亮与SPBA01B的P1口相连的LED灯,同时熄灭与SPBA01B的P2口相连的LED灯。 · Key3:按下该键的时候,点亮与SPBA01B的P2口相连的LED灯,同时熄灭与SPBA01B的P1口相连的LED灯。 3.2 总线扩展应用 本例介绍SPCE061A使用SPBA01B扩展Memory。系统主要实现的功能是利用外扩的Memory实现数码录放音。下面介绍使用外扩HM628128、W29C040实现DVR录放音。 3.2.1 外扩HM628128的电路连接图 SPCE061A使用SPBA01B外扩HM628128的电路连接如图 3.3所示。 图 3.3 外扩HM628128的电路连接图 3.2.2 外扩W29C040的电路连接图 SPCE061A使用SPBA01B外扩W29C040的电路连接如图 3.4所示。 图 3.4 外扩W29C040的电路连接图 3.2.3 功能描述 使用Record、Stop、Play三个按键实现控制数码录放音,三个按键的作用如下: · Record:按下该键的时候,开始录音。 · Stop:按下该键的时候,停止录音。 · Play:按下该键的时候,播放录音。 3.2.4 程序流程 SPCE061A使用SPBA01B外扩存储器的时候,主程序以及读、写操作的简易流程如图 3.5所示。 图 3.5 简易流程图 3.3 SPBA01B级联使用介绍 前面说过SPBA01B最多可以级联7个,现在介绍SPBA01B的级联用法。 从图 3.6(为了便于说明,将其中的一个SPBA01B称为BEXA,另一个SPBA01B称为BEXB。)可以看出SPCE061A有11个管脚连接到SPBA01B,其中有一个为OUT管脚,连接到SPBA01B的CI管脚,类似片选的作用。当CI由低电平变为高电平的时候,SPBA01B的VID/SID(Volume ID/Selecting ID)将被复位,使用时必须重新设置;当访问SPBA01B的时候,CI要保持高电平。 SPBA01B中的CI和CO保证各级联芯片的正确初始化。如图 3.6所示,BEXA的CO连接到BEXB的CI。当BEXA的CI由低电平变为高电平,第一个设置VID(设置寄存器$000DH)将被应用到BEXA,当BEXA被配置完后,它的CO变为高电平,这样第二个设置VID(设置寄存器$000DH)被应用到BEXB。若级联多个芯片,以此类推,设置各级联芯片的VID。当所有的级联芯片的VID都被设置完毕后,任何对寄存器$000DH的写,都被当作是SID。 图 3.6 SPCE061A外挂两个级联的SPBA01B的电路图 下面举一个简单例子说明两个级联芯片BEXA和BEXB是如何配合工作的。寄存器$000DH用来为每一个SPBA01B设置唯一的VID。设置完VID后,寄存器$000DH用来选择ID,也就是决定哪一个级联芯片工作。SPCE061A的程序步骤大致如下: 1. 设置OUT为低电平 2. 设置OUT为高电平 3. Send_Addr_Data(0x000d,0x03)设置BEXA的VID为3 4. Send_Addr_Data(0x000d,0x05)设置BEXB的VID为5 5. Send_Addr_Data(0x000d,0x03)设置BEXA和BEXB的SID为3,此时BEXA有效,BEXB 6. Send_Addr_Data(0x0023,0xxx)配置BEXA为“存储器扩展器”或“I/O扩展器” 7. 访问BEXA 8. …… 9. Send_Addr_Data(0x000d,0x05)设置BEXA和BEXB的SID为5, 此时BEXA无效,BEXB 有效 10. Send_Addr_Data(0x0023,0xxx)配置BEXB为“存储器扩展器”或“I/O扩展器” 11. 访问BEXB 在第9步后,BEXA和BEXB的状态如图 3.7所示。 图 3.7 BEXA和BEXB的状态图 3.4 级联应用举例 本例介绍的是SPCE061A外挂两个SPBA01B芯片,扩展两个AT29C020 以及一个8×8按键。它的详细电路连接如图 3.8所示。 图 3.8 SPCE061A外挂两个SPBA01B的电路图 4 结语 SPBA01B具有很强的IO扩展、总线扩展功能,配合凌阳公司提供的SPBA01B底层Driver代码,可以很容易实现SPCE061A的IO、总线扩展。相信以SPBA01B构成的带数据总线扩展系统,必将推动数字语音,图象处理技术的电子产品进一步发展。
此帖出自单片机论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表