首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
W90P710评估板的开发与应用研究
来源:本站整理  作者:佚名  2008-01-14 14:11:00



    华邦W90P710/W90N745采用ARM的ARM7TDMI微处理器核以及0.18μm工艺生产,标准工作频率可达80 MHz,内建一个Ethernet MAC,采用176/128引脚LQPF封装,具有省电与低成本的优势。此外,W90P710/W90N745还集成了USB 1.1主/设备控制器,让各种应用可以透过USB接口连接各种计算机周边产品,增添了产品的整体附加价值。W90P710/W90N745内建的4KBI-Cache以及4KB D-Cache,也可以随产品开发人员的需求,设定为On-Chip RAM。
    W90P710/W90N745集成具高扩展性的EBI(Exter-nal Bus Interface)接口,可通过EBI访问ROM、Flash、SDRAM、PCMCTA Card等各种I/O部件。W90P7lO支持了高分辨率的TFT、STN LCD控制器。除了USB与EBI之外,W90P710/W90N745也留有UART接口,可以让客户设计各种应用时,连接更多设备,比如条形码扫描仪、VFD模块、调试口及Bluetooth模块等。除了POS(Point-Of-Sale)应用外,W90P710也适用于数据采集器、电子相框等需要用到LCD显示的产品。


1 华邦W90P710硬件评估板
   
目前华邦专门针对710的一款开发板,集成了所有W90P710的功能模块,并配有板级开发包,完善的设计技术和技术支持体系使华邦的710市场变得更为广泛。
    如图1所示,W90P7lO评估板由以下部分组成。

    MCU:标准操作频率为80 MHz,W90P710在ARM7TDMl基础上集成了丰富的片上资源,使成本费用降至最低,同时减少了系统的扩展,减小了产品的体积。
    智能卡:通过EBI总线挂载性价比高、性能可靠的TDA8007芯片,可支持税控卡和用户卡。卡槽在评估板背部。
    存储模块:本设计中存储器通过EBI总线挂载在系统中,内存可达16MB。程序存储器采用8MB的NORFlash,分两个区,第一个分区存储BOOT代码、内核映像和文件系统,第二个分区用来存储数据。为了满足存储大数据的需要,本设计还实现了可插拔式NAND存储器,将数据存储模块与系统主板分离。
    通信模块:W90P710支持3个串口,用户可接扫描枪、VFD模块、调试口及Bluetooth模块等。W90P710内建了1个MAC,只需外加PHY即可组建成一个10/100Mbps的网口,同时内建USB主和USB设备控制器,USB设备可以模拟串口使用。
    显示模块:W90P710内建高分辨率的TFT、STNLCD控制器,支持8位LCD模块,192×64点,支持简单的图形界面.包括菜单和滚动条等。通过SPI接口支持VFD模块显示。
    键盘:支持16键的矩阵键盘和PS2键盘。
    SD卡:支持SD卡操作,卡槽在评估板背部。
    Audio:耳机插槽,可以播放声音。
    Debug模块:采用ICE进行跟踪调试和bootloader的第一次烧录。

2 华邦W90P710的板级支持包
2.1 uClinux在W90P710评估板上的移植
    uClinux主要是针对处理器没有存储管理单元的嵌入式系统而设计的。它保留了Linux的大多数优点:稳定、良好的移植性,优秀的网络功能,对各种文件系统完备的支持和标准丰富的API,编译后目标文件可达几百KB数量级,非常适合嵌入式系统的设计。鉴于uClinux的以上优点,同时由于Linux2.4是非常成熟的版本,本设计使用了uClinux-2.4.20版本的uClinux作为评估板的操作系统。
    在W90P7lO板上移植uClinux的主要步骤:
    ①选择蓝本S3C4510B,然后编译该内核。期间可能会出现编译不能通过的现象,需要选择最小配置和进行适当的调试来解决。
    ②S3C4510B内核编译通过后,直接下载到华邦7lO开发板上运行。由于芯片不同,系统肯定会停止在某个地方,这时需要用ICE或者printk的方法跟踪调试。但由于此时串口是不能使用的,所以printk方法无法使用,可以先针对华邦W90P710写一个简单的屏幕打印串口代码,把这段代码放在/kernel/printk.c的printk函数中。这样就可以用printk跟踪调试了。
    ③修改相应的中断函数。此步骤主要修改arch/armnornmu/kernel/irq.c中的init_IRQ及其头文件,对W90P710的中断控制器进行初始化。
    ④修改相应的tinier函数。在arch/armnommu/kernel/time.c中定义,同时调用arch/ammonmm/mach-w90p710/time.c文件,对应的头文件time.h也要作相应修改。
    ⑤修改irq和timer之后,操作系统基本上可以运行起来。由于串口驱动比较简单且很实用,所以首先针对W90P710进行串口驱动编程,这样一个基本的uClinux内核就可以运行在华邦W90P710评估板上了。
2.2 华邦W90P710评估板各模块驱动
   
根据图1的评估板硬件组成,可以给出主要模块的软件驱动。
    智能卡:通过EBI总线挂载性价比高、性能可靠的TDA8007芯片,驱动程序文件为1inux/driver/char/tda8007b_sc.c,驱动程序经过完整的测试,性能可靠,在税控机中广泛应用。
    存储模块:NOR Flash驱动文件在linux/driver/mtd/chips下面,名称为winbond.c,NAND Flash驱动文件在linux/driver/mtd/nand下面,名称为w90p710_hand.c,用户可以按照自己的需要修改驱动程序里面相应的分区。目前华邦710BSP支持yaffs和jffs2两种针对NANDFlash和NORFlash的文件系统。存储模块的驱动进行了大量的模拟掉电等边缘测试,性能良好。
    通信模块:W90P7lO支持3个串口,分别是linux/drlvers/char/w90p710_uart_1.c和w90p710_uart_2.c和w90p710_uart_3.c。W90P710内建了一个MAC,驱动程序为linux/deriver/net/w90p710_mac.c,usb device驱动为linux/drivers/char/w90p710_usb.c。
    显示模块:W90P710内建高分辨率的TFT、STN LCD控制器,驱动程序为linux/drivers/media/vedio/w90p7l0_lcd.c,支持VFD模块显示,驱动程序为linux/driv-ers/media/vedio/w90p710_vfd.c。
    键盘:支持16键的矩阵键盘,驱动程序为linux/drivers/char/w90p710_keypad.c和ps2键盘,驱动程序为linux/drivers/char/w90p710_ps2.c。
    SD卡:支持SD卡操作,驱动程序为linux/drivers/scsi/w90p710_sdio.c。
    Audio:驱动程序为linux/drivers/souod/w90p710_Aodio.c。
    华邦板级开发包所包含的驱动程序都是经过严格的测试,且由广大客户共同维护的,所以程序严谨,性能优越。可以从www.udinux.org网站下载uClinux-dist20051110.tar.gz,以获得华邦W90N740、710系列的板级开发包。
2.3 交叉编译器制作
2.3.1 构建交叉编译器组件
   
要构建交叉编译器.需要构建GNU套件中的3大组件:
    Binutils:包含基本的二进制工具,如汇编器、链接器和Size、Strip等相关工具。二进制工具主要是一些用于构建应用程序的核心组件和用来构建、操作目标机器执行格式的工具。例如,Strip工具用来移除目标文件或者应用程序的符号表、调试信息以及其他“无用”的信息。
    Gcc:编译过程中的主要组件。Gee包括C预处理器和编译器,用来将C代码转换为目标CPU的汇编语言。
    Gcc还在整个过程中担当着接口作用,调用相应的预处理器、编译器、汇编器和链接器。
    uClibe:标准C库。为了能够应用于嵌入式目标而设计,在交叉编译器中,体积小,更加友好。
    此外还需要有目标操作系统的头文件。这些是在构建应用程序时,如果要访问所有操作系统级的函数和系统调用所必需的。对于uClinux,获得头文件是相当容易的,可以拷贝现存的头文件。
    目前,华邦板级开发包提供2种交叉编译器,分别是根据组件Gcc版本号命名。一个是用来编译内核以及所有C语言程序的arm_tools3.O,另一个是专门用来编译C++程序的arm_tools3,3.4,两个版本的编译器除了 Gcc版本不同外,uClibc版本也不相同。具体比较如表1所列。

2.3.2 构建交叉编译器步骤
   
现在的交叉编译器已经能够提供安装脚本文件,无须手动分别制作了。这在很大程度上给用户提供了方便,但是使我们对编译器的理解程度大大较低。
    首先,应从www.uclinux.org/pub/uClinux/uclinux-elf-too1s/下载相应的源码包和安装脚本文件build_uclinux-tools.sh。然后按要求修改好适合自己的目录和选项,运行sh build uclinux_tools.sh build即可。
    值得注意的是,并不是所有的软件包都能一次性编译通过,它受到用来编译它的编译器版本的因素等制约,所以制作交叉编译器需要有一定的调试能力。另外在交叉编译器完全制作好后,用其编译出来的程序能不能很好地运行在开发板上也是一个问题,这需要用户不断地修正uClibc等组件的程序来适应自己的开发板。
2.3.3 板级支持包提供的主要应用程序组件
   
目前在华邦BSP里面有TestApp文件夹,里面包括了所有的驱动测试程序样例和目前比较流行的开源Linux组件程序,例如mysql、boa、pppoe等。这些已经移植到W90P710评估板上,而且严格测试过,用户可以直接做应用。

3 华邦W90P710的应用
3.1 华邦W90P710在税控收款机上的应用
   
基于W90P710的税控收款机的设计方案具有嵌入式操作系统、图形化操作界面、网络处理、MODEM通信和文件操作等,产品扩展方便。使用大屏幕LCD显示屏,实现了较好的人机界面。独有的数据保护电路,实现高可靠性、高抗干扰性,确保税务数据的生成、存储、传递万无一失。其硬件结构图如图2所示。

3.2 华邦W90P710在远程监控上的应用
   
监控系统一般可分为实时监控和触发模式监控两种,可以根据具体的情况设计合适的监控方式。如果采用实时监控,则将占用较多网络资源,成本相对较高,而采用触发模式的运行成本较低。
    触发监控终端被触发后,开始拍摄图片;同时其内部的嵌入式控制模块完成Internet的接入(包括拨号、PPP和TCP/IP协议的处理等),并把拍摄到的图片数据经打包后发送给控制中心主机;控制中心主机登录到Internet上后,运行服务器端软件就可以浏览由监控点发来的图片。其硬件结构图如图3所示。

4 总 结
   
本文针对华邦最新推出的W90P7lO芯片,从硬件和软件两个方面对其评估板进行了研究。这款芯片接口丰富,很好地满足了当前复杂多变的嵌入式应用的要求,此外华邦还提供了板级支持包,有着丰富的底层驱动,包括网络、USB、串口、键盘、SPI、I2C、并口、智能卡和各种NOR/NAND Flash驱动,可以很容易地开发出相应的产品,节省了工程师的宝贵时间,为企业降低了成本。

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:12,214.84000 毫秒