当前位置:首页 > 智能硬件 > 智能硬件
[导读]1 引 言如今随着信息产业的飞速发展,以微处理器为核心的嵌入式系统正在智能化仪表、实时控制系统等方面发挥着巨大的作用。在许多实际应用中经常面临的问题是需要支持大容量的数据存储功能。但是采用常规扩展外部数据

1 引 言

如今随着信息产业的飞速发展,以微处理器为核心的嵌入式系统正在智能化仪表、实时控制系统等方面发挥着巨大的作用。在许多实际应用中经常面临的问题是需要支持大容量的数据存储功能。

但是采用常规扩展外部数据存储器的方法,需要大量的地址总线和数据总线引脚,因而在访问外部数据存储器时,其容量受到微处理器地址总线和数据总线数量的极大限制。由于单片机的引脚数都相对较少,没有足够多的引脚用作外部数据存储器的地址总线,为了解决这一矛盾,本文以MSP430F12X2[1]单片机和AT45DB081[2]芯片为例,介绍了一种利用串行外设接口(SPI)扩展大容量数据存储器的方法。并给出初始化以及数据读写操作子程序。

2 硬件简介

MSP43 F12X20是一款超低功耗的混合信号控制器,具有16位RISC结构,有着丰富的片内外设,主要包括有看门狗、定时器、比较器、硬件乘法器、液晶驱动器、ADC、I/O端口、串口(USART)等,还集成有64 kB的FLASHROM和2 kB的RAM。其功能强大,应用场合广泛。特别适合应用于智能仪表、智能化家用电器、电池供电的便携式设备等产品中。相对于其他单片机MSP430 F12X2还具有以下特点:

(1)MSP430F12X2内部预设了JTAG模块,他使得每一个单片机芯片都具有完整的在线调试功能,而不必使用较复杂的仿真调试工具;

(2)MSP430F12X2中的FLASH在线编程技术可以完成除了采用外部编程器进行烧写外,用户可以利用自己的程序修改FLASH内容,且不需要外加编程电压;

(3)MSP430F12X2中的BOOTSTRAP技术使芯片具有片内的BOOT ROM,可以实现程序代码的下载和上载。

AT45DB081是Atreel公司推出的工作电压为2.7~3.6 v,可在系统可重复擦写并兼容SPI的FLASH数据存储器。内部有4 096页、每页264个字节,共计8 MB的主存储器容量以及2个264字节的SRAM数据缓存器。支持在系统重复编程,不需要较高的编程电压,只需要芯片的工作电压2.7~3.6 V就可以完成对FLASH的读写操作。AT45DB081通过一个三线接口(包含串行输入SI、串行输出SO、串行时钟SCK)在片选信号的配合下进行访问。这种串行接口FLAS[{存储器十分适用于要求存储量大而引脚资源较少、电源电压低和低功耗的应用领域。

3 硬件原理图

MSP430F12X2与AT45DB081的硬件连接原理图如图1所示。

图1中将MSP430F12X2的P3.1,P3.2和P3.3引脚配置为SPI的MOSI(主出从人)、MISO(主出从入)CLK(串行时钟)和信号线,分别与AT、45DB081的串行输入、串行输出和时钟引脚相连。将P2.0,P2.1,P2.2与AT45DB081的芯片片选、复位和忙闲状态引脚相连。由于RDY/BUSY为漏极开路,因而需加上拉电阻输出[2]。

4 AT45DB081的操作及操作码

对AT45DB021B的操作是由主机发出的指令控制,一个有效的指令在

的下降沿开始,包括一个8位的操作码和要进行操作的页地址和缓冲区地址的位置。表1列出了AT45DB021B的主要的操作方式和对应的操作码。

(1) 状态存储器

他是AT45DB021B内的一个8位的只读存储器,用于指示其工作状况,如表2所示,BIT7用于显示AT45DB021B的状态,BIT7位=1时,说明AT45DB021B不忙,可以对其进行指令操作,BIT7位=0时,指示AT45DB021B忙,可以通过检测BIT7位实时了解AT45DB021B的状态。BIT6 COMP用于显示主存储器页面与缓存器进行数据比较的结果,当比较结果匹配COMP=0,否则COMP=1。

(2) 通过缓冲存储器对主存储器写操作

命令码为:操作码5位保留码10位页地址码9位页内起始地址码,其中操作码为82H时,数据通过缓冲存储器1向主存储器写,为85H时,数据通过缓冲存储器2向主存储器写操作。

(3) 主存储器页读

主存储器页读指令可以对1024页中的任意页进行读操作,命令码为:8位操作码,5位保留码,10位页地址码,9位页内起始地址码,32位无关码;操作码为52H或D2H,5位保留码用于对片子的上下兼容,10位页地址码用于确定对主存储器的哪一页进行操作,9位页内起始地址码来确定页内操作的起始地址,后32为无关码用来配合时序。当 为0时,主机向器件的SCK引脚发送时钟信号,引导操作码和地址从SI引脚写入器件,当最后一位写入后的下一个时钟周期,页内数据将从SO引脚输出。

5 软件流程及读写程序

MSP430F12X2单片机对AT45DB081进行初始化以及数据读写操作的软件流程图如图2所示。图2中系统初始化包括系统时钟初始化、将P3.1,P3.2和P3.3引脚配置为SPI接口,设置SPI特殊状态寄存器和复位数据存储器。

单片机通过P2.2读取AT45DB081的忙闲状态引脚来判断存储器是否空闲,若P2.2为1表示存储器空闲,否则表示存储器忙。当存储器空闲时通过P2.0引脚输出0作为存储器的片选信号。选中存储器后可以参照表1,通过SPI发送命令字完成对AT45DB081的相应读写操作。对AT45DB081进行初始化以及数据读写操作的子程序[3]如下。

6 结 语

本文的创新意义在于在占用:MSP430F12X2单片机引脚数极少的情况下实现了大容量外部存储器的扩展方法,使得单片机在扩展外部数据存储器中改并行访问为串行访问,不再需要大量的地址和数据总线引脚。这种方法同样可推广到其他带有SPI接口的微处理器。在数据采集,智能仪表中都具有很强的实用意义。

更多计算机与外设信息请关注21ic计算机与外设频道

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

检查电解电容的胶管或引脚,通常胶管一端印有负极标识,引脚处有带网格的一端代表负极。

关键字: 电解电容 正负极 引脚

SPI,Serial Peripheral Interface,串行外围设备接口,是一种同步通信协议,通常用于芯片间进行数据交互。

关键字: SPI 通信协议 外围设备

单片机的串口可以使单片机与单片机、单片机与电脑、单片机与各式各样的模块互相通信,极大地扩展了单片机的应用范围,增强了单片机系统的硬件实力。简单双向串口通信有两根通信线(发送端TX和接收端RX);TX与RX要交叉连接;当只...

关键字: 串行通信 SPI

今天,小编将在这篇文章中为大家带来SPI总线和I2C总线的有关报道,通过阅读这篇文章,大家可以对二者具备清晰的认识,主要内容如下。

关键字: SPI I2C 总线

纽约2023年3月12日 /美通社/ -- 领先的数字绘图设备创新者和制造商绘王(Huion),在所有平台上欢庆诞生12周年,包括社交媒体网站和官方社区。 绘王于2011年...

关键字: SPI TE BSP DESIGN

北京2023年2月20日 /美通社/ -- CEiC被投企业俱乐部成员、新加坡金融科技服务商Aspire近日完成1亿美元的C轮融资,本轮投资方由Lightspeed和红杉资本SEA领投,PayPal Ventures、腾...

关键字: SPI IC CE TOP

单片机是一种数字器件,只能处理数字量,在工业生产和日常生活中,常用于电流、电压、温度、湿度和压力等信号的监测或处理。而这些信号都是连续变化的模拟量,被单片机处理之前必须转成数字量,而单片机处理后得到的数字量也要根据需要转...

关键字: ADC0809芯片 A-D转换器 引脚

MCS-51系列单片机产品有8051,8031,8751,80C51,80C31等型号(前三种为CMOS芯片,后两种为CHMOS芯片)。它们的结构基本相同,其主要差别反映在存储器的配置上。8051内部设有4K字节的掩模R...

关键字: MCS-51 单片机 引脚

MCS-51单片机内部集成了微处理器、存储器、输入接口和输出接口,其体系结构如图2-1所示。在MCS-51单片机中,ROM存放程序代码,RAM存放数据,因此ROM和RAM分别被称为程序存储器和数据存储器。因为,程序存储器...

关键字: MCS-51 单片机 哈佛体系结构 数据存储器

舍弗勒收购高品质陶瓷部件专业供应商,进一步增强工业事业部技术实力 通过收购,舍弗勒获得战略性技术并进一步强化供应链 进一步提升陶瓷技术解决方案能力,满足工业客户需求 赫尔佐根奥拉赫2022年11月21...

关键字: SPI CE 供应链 滚动轴承
关闭
关闭