0 引言
提出了将SDHC卡作为CC2530的外部存储设备实现数据存储的方法。SDHC卡具有体积小、存储容量大的特点,通过CC2530组建的无线传感网络适用于工业监测,而将SDHC卡与CC2530相结合,则能够长期连续工作并记录大量数据,可以满足各种长期监测状态场合的需要。
关键词:SDHC卡;CC2530;SPI模式;FAT32
1 硬件设计
1.1 SDHC卡简介
SDHC卡有SD总线模式和SPI总线模式。SD总线模式采用四条数据线并行传输数据,传输效率高,但传输协议复杂,且不易用软件模拟;而SPI总线模式工作时只用一条数据传输线,虽然数据传输效率低,但很容易用软件来模拟,而且SPI总线模式传输协议简单。所以采用SPI总线,由主控制器在每次传输时产生8个时钟脉冲给SDHC卡作为同步时钟,即可控制数据的输入与输出。
1.2 CC2530简介
CC2530集成了一个高性能的RF收发器和一个低功耗的8051内核,其RAM达8 KB,具有两个USART、12位ADC和21个通用GPIO。其本身自带2.4 GHz高性能RF收发器,配上适合的天线就构成了无线通信模块。CC2530可配备TI的RemoTI、Z-Stack或SimpliciTI等专有或标准兼容的网络协议栈来简化开发。
1.3 主控电路接口设计
CC2530与SDHC卡的接口连接图如图1所示。
CS为SDHC卡使能端,DI为写命令和写数据端,DO为读响应与读数据端,CLK为SPI时钟输入端。CC2530的P0口与SDHC卡的对应端口相连,口线之间需要连接上拉电阻。
2 软件设计
2.1 SDHC卡初始化程序设计
为完成SDHC卡的上电过程,CC2530必须向SDHC卡发送至少74个时钟周期,之后SDHC卡会自动进入SD总线模式。若在SD总线模式下,使片选信号CS处于低电平状态,向SDHC卡发送复位命令(CMD0),SDHC卡将进入SPI总线模式,否则SDHC卡工作在SD总线模式。SDHC卡进入SPI工作模式之后,使用CMD8命令识别卡的版本,然后主机不断地向SDHC卡发送命令ACMD41(CMD55与CMD41的组合),使卡处于空闲状态,最后通过CMD58命令区别是标准容量卡还是大容量卡。SPI模式的一般初始化流程如图2所示。
CMD指令是6字节指令,第1字节高两位分别为起始位(对应0)、传输位(对应1),剩余6位为命令号,如CMD0的命令号为000000,合起来第1字节就是40H。因为SPI模式是无需CRC校验位的,所以在CMD0与CMD8之后的CMD命令,是无需关心CRC校验位的。命令的具体内容见表1所列。
2.2 SDHC卡的读写程序设计
SPI模式支持单块和多块读写操作。当初始化完成后,用CMD16命令设置SDHC卡读写长度为单块512字节。设置好之后,向SDHC卡发送单块写命令CMD24,在接收到正确的响应信号后,发送数据起始标志(0xFE)和512字节的数据,并跟两字节的CRC校验码。当SDHC卡的回应信号为05H时,即表明SDHC卡接收到正确的数据,若SDHC卡的输出口变为低电平,表明正在向SDHC卡写数据,当输出口变为高电平时表明写操作完成,SDHC卡的单块写数据软件流程如图3所示。单块读操作与单块写操作类似,也是先接收起始位,然后接收数据。
3 结语
本文给出了CC2530对SDHC卡读写操作的方法。通过实验验证了将体积小、容量大的SDHC卡用于CC2530,能使CC2530适应各种需要长期记录大量数据的场合,满足实际的需要。
关键字:CC2530 SDHC卡
编辑:神话 引用地址:基于CC2530的SDHC卡读写设计
推荐阅读最新更新时间:2023-10-12 20:39
ZigBee-CC2530单片机 - 1路硬件PWM控制舵机角度(精度为1us)
程序源码 #include ioCC2530.h typedef unsigned char uchar; typedef unsigned int uint; //系统时钟初始化 void SystemClockInit() { CLKCONCMD &= ~0x40; //设置系统时钟源为32MHZ晶振 while(CLKCONSTA & 0x40); //等待晶振稳定为32M CLKCONCMD &= ~0x07; //设置系统主时钟频率为32MHZ } //定时器1输出PWM void Timer1PwmInit() { uint value; CLKCONCMD |= 0x28;
[单片机]
东芝推出大容量4GB的micro SDHC存储卡
6月28日东芝公司 ——闪存世界的缔造者在京宣布东芝小型、高速、大容量存储卡家族又添新品--4GB microSDHC存储卡。该新产品将使microSDHC卡阵容进一步扩大,作为手机首选用卡,可以提供256MB至4GB的多种产品。该新产品将从7月上旬开始在全球销售。 东芝4GB microSDHC存储卡以为实现2GB以上大容量而制定的SD存储卡规格Ver2.00为标准。除了可以满足将来手机等市场的大容量化需求以外,使用适配器后,还可以用于搭载SDHC插槽的数码相机及DVC等设备。 近年来,随着搭载处理动画、音乐以及高清晰度图片功能的手机等数码产品不断普及,大容量存储卡的需求也不断扩大。东芝将继续为SDHC及SD存储卡系列扩大并
[焦点新闻]
CC2530基础 二、流水灯
流水灯程序 #include iocc2530.h //引入头文件之后才能使用其中定义的一些寄存器的名称 #define D3 P1_0 #define D4 P1_1 #define D5 P1_3 #define D6 P1_4 void delay(unsigned int t) { while(t--); } void Init_Port() //端口初始化函数。 { P1SEL&=~0X1B;//0001 1011。选择端口的功能,将其设为通用I/O端口,则将相应的位清0 P1DIR|=0X1B; //0001 1011。配置端口的方向,设为输出,将其置1 } void Led_Runing() { D4
[单片机]
CC2530基础 一、CC2530简介
寄存器快速操作 其实可以直接赋值,相对好理解,但是熟练之后还是这个方法比较快。 一、只将寄存器中的某些位置1而不影响其它位 使用或操作 “|” 。 任何值与0相或,保持原值。 任何值与1相或,结果为1. 例如:寄存器TMP的当前值为0X62,要将第2、3、6位置1。C语言表达式:TMP|=0X4C。 0X62:0110 0010 0X4C:0100 1100 TMP= 0110 1110 那么这个0X4C的值如何快速得到的? 先假设寄存器所有位的值都是0,如TMP=0000 0000。再将要操作的位置全部改为1,即0100 1100,也就快速得到了这个值 :0X4C。 二、将寄存器中某些位清
[单片机]
基于CC2530的Zigbee网络节点设计
1 引言 基于zigbee技术的无线传感器网络适用于网点多、体积小、数据量小,传输可靠、低功耗等场合,在环境监测、无线抄表、智能小区、工业控制等领域已取得一席之地 。同时,zigbee规范与协议日臻完善 。从zigbee1.0、zigbee1.1到目前最新的zigbee2007/pro,zigbee协议规范的演进对硬件系统提出了更高的要求 。 2 设计要求 2.1 zigbee网络结构 从网络结构上看,zigbee网络有星形,树形,网状3种模式,按照网络节点功能划分可分为终端节点(ep)、路由器节点(rp)和协调器节点(cp)3种 。其组织结构如图1示。 图1 zigbee网络拓扑结构 其中,协调器节点负责发起并维护
[嵌入式]
基于ZigBee无线传感网络的SMT厂房温湿度监控系统设计
电子电路表面组装技术(SMT)是一种将片式组装元器件安装在印制电路板的表面,通过回流焊等方法加以焊接组装的电路装连技术,是目前电子组装行业里最流行的一种技术和工艺。随着电子技术的进步,电子元器件逐渐向小型化、精密化、多功能方向发展,元器件的精密程度的提高对电子组装的环境要求的越来越苛刻。生产环境不合适的温度和湿度不但会对电子元器件的组装造成危害,而且还会影响SMt机器设备的正常运行,所以,对SMT厂房温度和湿度自动化的实时而准确的监测和控制,使厂房实时处在一个良好的生产环境,对设备运行和SMT产品质量保障都有着重大的现实意义。 传统的SMT厂房的温湿度监测系统常常采用有线方式,其优点是可靠稳定,明显的缺点是布线困难,组网不灵
[单片机]
基于CC2530的无线路灯节能智能监控系统
随着我国城乡一体化建设和城市化建设的不断深入, 对道路照明扩展规模越来越大, 因此对道路照明及景观照明提出了更高、更新的要求。与此同时, 路灯的电能消耗和灯具损耗也越来越大。传统的路灯控制系统存在着智能化程度低、线路稳定度差等问题, 给城市照明系统的管理和维护带来很大困难。为了解决以上问题,本论文提出了基于CC2530 的ZigBee 无线路灯节能智能监控系统方案。该方案能够灵活开关灯, 自动及时发现故障, 提高设备智能化管理。本系统根据实际要求, 对每一组路灯进行控制, 实现照明模式的多样化和灵活性,若有损坏的路灯, 系统会及时显示其信息, 并通知管理人员, 有效地提高了城市照明系统的管理水平。 1 ZigBee 技术 ZigB
[电源管理]
SDHC高容量SD存储卡
SDHC是“High Capacity SD Memory Card”的缩写,即“高容量SD存储卡”。2006年5月SD协会发布了最新版的SD 2.0的系统规范,在其中规定SDHC是符合新的规范、且容量大于2GB小于等于32GB的SD卡。
SDHC最大的特点就是高容量(2GB-32GB)。另外,SD协会规定SDHC必须采用FAT32 文件系统,这是因为之前在SD卡中使用的FAT16文件系统所支持的最大容量为2GB,并不能满足SDHC的要求。
作为SD卡的继任者,SDHC主要特征在于文件格式从以前的FAT12、FAT16提升到了FAT32,而且最高支持32GB。同时传输速度被重新定义为Class2(2MB/sec
[模拟电子]