图4 C8051F020单片机
C8051F020的MCU具有4KB的RAM可映射在片内,也可映射在64KB外部数据存储器地址空间,还可同时映射到片内和片外三种方式。对于后两种存储器工作模式需通过外部存储器接口使用MOVX和DPTR或MOVX和R0(R1)指令访问外部数据存储器和存储器映像的I/O设备。但是对于高8位地址必须由外部存储器接口寄存器(EMI0CN)提供。而EMIF控制寄存器可将外部数据存储器接口映射到低端口(P0-P3)或高端口(P4-P7),以及配置为复用模式或非复用模式等。
外部存储器接口(EMI)映射为低端口(P0~3)即PRTSEL位(EMIOCH.5)置为0,此时如果EMIFLE位(XBR2.5)被设置为逻辑1,那么数字交*开关将不分配外部设备给 P0.7(/WR),P0.6(/RD),P0.5(ALE)(如果EMI设置为复用模式);如果EMIFLE位设为0,那么P0.7、P0.6、 P0.5的功能将由交*开关或端口锁存器来决定。外部存储器接口只在执行片外MOVX指令期间使用相关的端口引脚,一旦MOVX指令执行完毕,端口锁存器或交*开关又重新恢复对端口引脚的控制(端口3、2、1、0)。对于外部存储器接口的配置只有扩展外部存储器或具有存储器映像的I/O部件时,才配置 EMIF。
本数据处理传输系统使用512k*8bit的SRAM作为外部数据存储器,使用高端口、复用模式(即P7端口数据D0-D7和地址A0-A7复用,P6端口输出地址A8-A15)、片外存储器方式(不使用片内存储器)。DCM8512是512k*8bit自带掉电保护的 SRAM,用于存放数据和VC5409用户程序,需19条地址线(A0-A18),而C8051F020外部数据存储器只支持64k Byte(A0-A15),故使用P5端口来扩充地址线(A16-A20)。
C8051F020最突出的优点之一就是使用交*开关网络。交*开关网络改进了可以控制片内数字资源与外部I/O引脚相连的。通过设置交*开关控制寄存器,将片内的数字资源如计数器/定时器、串行总线、硬件中断、 ADC转换启动输入、比较器输出以及微控制器内部其他数字资源配置为端口I/O引脚,这就允许用户根据自己的特定应用将通用I/O端口与所需要数字资源相结合。
CPU单元工作原理(见图5)。C8051F020的工作频率为11.0592MHz。模拟信号连接至C8051F020的 AIN0.0- AIN0.7脚,进行12位A/D转换。由C8051F020中的时钟单元产生可以变动的抽样频率。CPU单元通过HPI总线将A/D转换后的心电信号送到DSP单元进行运算,运算的结果再通过HPI总线送入CPU单元。HPI总线内包括数据线D0-D7、地址线A0-A3、DSP片选线DSP- addr、读写线WR,RD、DSP复位线及中断线INT0组成。地址线A0-A3选择DSP的HPI寄存器;数据线D0-D7用于C8051F020和 DSP交换数据;当C8051F020向DSP写数据时,将在DSP内部产生中断,该中断将DSP从IDLE状态中唤醒,中断服务程序还将从DSP特定地址的内部存储器中读CPU写的数据;当DSP向C8051F020写数据时,DSP置中断线INT0=0,C8051F020的INT0中断服务程序将从 DSP的HPI数据寄存器读数据。
CPU单元通过RS232接口线TX0和RX0与GSM模块进行硬件连接,用于通过无线移动网传送数据信息。C8051F020单片机和GSM引擎之间采用AT指令实现互相之间的通信,更详细的资料可以参考GSM07.05和GSM07.07规范。例如使用短信方式时,CPU单元发出短信的过程大体如下:用预先设置好的短信息中心地址、短信息的接受地址和要发售的报警数据,形成PDU格式短信;然后发出指令"AT+CMGF=0r"设置GSM引擎为 PDU方式;再发出指令"AT+CMGS=r ",当受到回答信号后,发送已形成PDU格式短信。
5 小结
本文设计了一种基于 Ti公司低功耗DSP芯片和Cygnal低功耗的混合信号系统级单片机移动数据处理传输系统,它能够采集、处理和通过无线移动网传送和接收数据。