综合资讯 在线阅读 原文阅读 在线商城 下载专区 DATASHEET 技术论坛 商务频道

嵌入式系统  单片机  D S P  EDA/PLD  接口电路  存储技术  显示光电  电源技术
传感/控制  模拟技术  通信网络  无线通信  电测仪表  消费电子  汽车电子

所在的位置:首页技术文章传感/控制正文
 
基于HMS30C7202自动售货机网络系统的实现
发布日期:2008-09-01 作者:陈滔,梁祖华,商建东 来源:微计算机信息

摘  要:本文以自动售货机控制系统的实际开发为应用背景,针对自动售货机控制系统在局域网内的应用要求,提出了基于HMS30C7202嵌入式硬件平台的控制系统通信结构,设计了相应的硬件和软件系统。通过Linux操作系统开发了相应的通讯及应用系统软件,实现了对自动售货机基于Internet的远程控制、售卖信息的查询和反馈,以及故障信息的智能诊断。
关键词: HMS30C7202;自动售货机;远程控制

0     引言

嵌入式系统以其体积小、功能多、支持以太网技术等优点在很多领域中被广泛使用,ARM处理器近年来发展十分迅速,它提供了丰富的总线接口资源,可以实现数据采集、数据处理、通信以及显示,已成为嵌入式CPU应用和设计的主流。目前,自动售货机多采用硬币或纸币的结算方式,本文针对自动售货机在园区网内的使用,开发基于校园网的自动售货机控制系统通信模块的硬件平台,并采用Linux作为操作系统,设计了运行数据的传送系统结构,数据信息通过TCP/IP协议进行网络通讯传输,可以随时监控自动售货机的工作状态,实现远程管理和控制。

1     系统的硬件组成

1.1     系统总体结构设计

本文所设计的自动售货机控制系统的主控芯片为HMS30C7202,它是Hynix公司设计的32位RISC微处理器,内含ARM公司的ARM720T内核,支持标准Linux操作系统,该芯片的内核运行速率可达70MHz,有8K字节的综合指令/数据的cache,2K字节SRAM可用于内部缓冲器。系统的硬件结构框图如图1所示。

图1  硬件结构框图

系统的SDRAM采用Hynix的HY57V561620,主要用作程序的运行空间,数据及堆栈区;为了存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据,本系统的Flash采用Intel的TE28F128J3A;为了实现远程测控,以太网接口电路是必不可少的,由于HMS30C7202片上不带以太网控制器,为了进行网络通信,必须外接以太网控制芯片,本系统选用CS8900A作为以太网控制器。

1.2     硬件设计

SDRAM的容量大,存取速度快,且成本低,由于ARM芯片内置的SDRAM仅为2K字节,无法运行相对复杂的程序,故需外接SDRAM,而且HMS30C7202在片内有独立的SDRAM刷新控制逻辑,可方便的与SDRAM接口。本系统中使用HY57V561620的存储容量为16M×16,为满足嵌入式操作系统及各种算法的运行要求,采用两片HY57V561620构建32M的SDRAM存储器。HY57V561620的15位地址总线、16位数据总线分别与HMS30C7202的SDRAM数据总线、地址总线相连,由于它只有13位地址总线,需要把块地址线BA0、BA1也作为地址总线;除了其它控制信号外,把片选CS和时钟使能CKE用来选择芯片信号,第一片的CS、CLKE分别接HMS30C7202的nSCS0、SCKE0,第二片的CS、CLKE分别接HMS30C7202的nSCS1、CKE1,这样由HMS30C7202通过命令来控制,以扩大SDRAM的存储空间。

Flash存储器是一种可在系统进行电擦写,掉电后信息不丢失的存储器,它具有低功耗、大容量、擦写速度快、可整片或分扇区在系统编程、擦除等特点。本系统中使用的TE28F128J3A的存储容量是16M×16,为充分发挥HMS30C7202的性能优势,采用两片的Flash存储器构建32位的Flash存储系统。TE28F128J3A的25位地址总线、16位数据总线分别与HMS30C7202的ROM数据总线、地址总线相连,HMS30C7202的片选nRCS通过二四译码器来提供2个片选信号。

CS8900A是CIRRUS LOGIC公司生产的低功耗、性能优越的16位以太网控制器,它包含4KRAM、10BASE-T发送和接收滤波器、24mA驱动能力的ISA接口。由于电平信号的不同以及网络冲击信号的存在, CS8900不能直接与RJ45接口相连,两者之间需要隔离及电平信号转换的元件, 本设计中选用了网络变压器HR61101G。CS8900A的RX+、RX+、TX-、TX-分别与RJ45的对应引脚相连,其余引脚按功能分别与HMS30C7202中的以太网控制器对应引脚相连,CS8900A外部接线图如图2所示


图2  CS8900A外部接线图

2     开发环境的建立

嵌入式系统的开发环境是由主机和自动售货机控制板构成的,首先利用主机上丰富的资源及良好的开发环境,仿真调试自动售货机的各种控制程序;然后通过串口将交叉编译生成的目标代码传输并装载到自动售货机控制板上,使用交叉调试器在监控程序或实时/操作系统的支持下进行分析和调度;最后实现自动售货机控制板的运行。具体步骤如下:

1)         在主机上安装交叉编译工具,将以下七个文件安装到/home目录下:

HLDK_Root.tar.gz  根文件系统

HLDK_x86.tar.gz   x86工具

HLDK _App.tar.gz  应用

HLDK_Kernel_7202_2.4.18-rmk3.tar.gz  内核软代码

LDBoot.bin  bootloader二进制代码

vmlinux.bin  内核二进制代码

rootfs.img.gz 根文件系统压缩文件

2)         在主机上利用vi或vim编辑器编写C程序;

3)         通过arm-linux-gcc将编写的C程序进行编译、连接,从而生成可在控制板上运行的可执行程序;

4)         运行成功后,在主机上把该程序代码编译集成文件系统,然后主机通过Windows超级终端发送文件,利用下载应用程序烧写到控制板的Flash中。

5)         自动售货机控制板的网络配置,首先配置IP地址(ifconfig eth0 192.168.0.22),然后配置网关(route add default gw 192.168.0.43),最后配置(dns echo domain sysic.net >> resolv.conf,echo nameserver 61.134.1.4 >> resolv.conf)。

3     系统的软件实现方法

软件设计的关键是通信模块的设计,即网路通讯Socke编程,系统的软件体系框图如图3所示。

 

 

图3 软件体系框图

Linux下进行网络数据传输主要利用Socke套接字,Linux的套接字通信模式与日常生活中的电话通信类似,套接字代表通信线路中的端点,端点之间通过通信网络来相互联系。常用的socket类型主要有三种:流式套接字(S0CK_STREAM)、数据报套接字(S0CK_DGRAM)和原始套接字。本系统采用流式套接字,服务器端主要用到的函数:socket() , bind(), listen() , accept()等。客户端用到的函数主要有:bind(),connect(),send()等。

自动售货机通过RJ45接口与Internet联网,而服务器通过通讯程序来访问自动售货机,获得从自动售货机传出的信息。本系统用自动售货机控制板做客户端,实现与服务器间的Linux的通信。简单的通信过程为服务器向自动售货机发送数据,自动售货机将收到的数据显示在标准输出设备上,并给出连接信息。自动售货机控制板main()函数中的主要代码如下:

if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1)

/*创建socket,如果socket出错并退出 */

……

if (connect(sockfd, (struct sockaddr *)&their_addr, sizeof(struct sockaddr))== -1)

/*如果connect()建立连接错误,则显示错误信息并退出 */

……

If((send(sockfd, buf,MAXDATASIZE, 0)) == -1)

/* 如果接受数据错误,则显示错误信息并退出 */

……

printf("client: got connection from %s\n",inet_ntoa(their_addr.sin_addr)); 

/* 给出连接的服务器信息 */

close(sockfd);} 

4     结束语

自动售货机不受场地限制,方便快捷,本文针对HMS30C7202的特点,提出了一种基于HMS30C7202和Linux的网络系统的实现,也是对嵌入式Linux应用的一种崭新尝试,本文给出HMS30C7202 的硬件连接方法和软件设计已经得到过实践的验证,能够方便地实现嵌人式系统的网络应用。

研究嵌入式系统是计算机技术的发展趋势和要求,采用嵌入式技术的微处理器遍及各类 电子产品,在汽车、消费娱乐、成像、工业控制、网络、存储、安保和无线等市场, 嵌入式技术无处不在。本文作者创新点是避免开发新系统,降低操作和维护费用,以基于ARM的自动售货机的控制和管理为目标,提供一种适于现实应用的系统解决方案,使得自动售货机的管理自动化、网络化。

 

参考文献

[1] 孙秋野,孙凯,冯健.ARM嵌入式系统开发典型模块[M],北京:人民邮电出版社,2007.

[2] 杨健,张慧慧.基于ARM系列S3C4510B和uClinux的面向网络的数据通讯实现 [J],微计算机信息,2006,2:122-124.

[3] 张正,张其善.基于GPRS 的车载信息平台的研制与关键技术 [J],北京航空航天大学学报,2005,1:98-101

[4] 施卫强,吴敏,曹卫华.基于嵌入式系统的Internet接口开发[J],计算机系统应用,2006,5:88-91.

[5] 聂伟,李云瑞.基于ARM 和μC/OS-II 的车载移动终端设计[J],北京化工大学学报,2006,5:71-74.

[6] HMS30C7202 Datasheet Version 1.2[M],Hynix Semiconductor Inc,2002.

[7] David Seal. ARM Architecture Reference Manual (2nd Edition) [M],Addison-Wesley Pub Co,2000.


 (全文结束)

信息发布:   转引自: 【 】 【打印】 【关闭
 相 关 文 章
ARM HMS30C7202与触摸屏接口电路的设计 (03-07)
关于我们 ┋ 友情链接


深圳市福田区海滨广场恒福花园恒华阁11F
电话:0755-88305872 传真:0755-88305880
Copyright©2005-2007 无忧电子开发网版权所有

粤ICP备05064233号