位置:51电子网 » 技术资料 » 其它综合

Microwindows在远程红外抄表器中的应用

发布时间:2007/8/29 0:00:00 访问次数:832

来源:电子设计应用  作者:陈艳 李茜 闫效莺 黄鹏 车小平


摘  要: 本文详细阐述了Mcrowindows在S3C44B0X上的应用,最后给出了Mcrowindows在远程红外抄表器中的应用。


关键词:  S3C44B0X;Mcrowindows;嵌入式mClinux;远程红外抄表器


引言


随着嵌入式系统的广泛应用,面向人机交互的嵌入式产品的需求量越来越大,GUI的设计也变得越来越重要。在Linux之上进行实时嵌入式系统开发的厂商,一般会选择如下几种GUI系统:高度裁减的X Windows 系统、MiniGUI、Microwindows、QT/Embedded等。Microwindows作为一种开放式源码的嵌入式GUI软件,目的是把图形视窗环境引入到运行Linux的小型设备和平台上,其体系结构如图1所示。


Microwindows的可移植性非常好,有多种平台的支持,而以Samsung公司的S3C44B0X嵌入式处理器芯片为核心的ARM平台就是其中的一种。


本文详细阐述了Microwindows在S3C44B0X上的应用,最后给出了Mcrowindows在远程红外抄表器中的应用。



图1  Microwindows的体系结构


Microwindows在S3C44B0X上的应用


内核的裁剪与配置


在嵌入式系统中,内核裁减是必不可少的工作。内核的大小,关系到硬件系统需要多大的存储空间,存储空间越大需要的硬件成本也越高。 mClinux内核采用模块化的设计,即很多功能块可以独立的加上或卸下,开发人员在设计内核时把这些内核模块作为可选的选项,可以在编译系统内核时指定。因此,一种较通用的做法是对mClinux内核重新编译,在编译时选择嵌入式设备所需要的功能支持模块,同时删除不需要的功能。通过对内核的重新配置,可以使系统运行所需要的内核显著减小,从而缩减资源使用量。


以S3C44B0X为核心的Embest EduKit-II目标平台采用了mClinux操作系统,进入显示屏是256色STN LCD,其显示驱动基于Frame Buffer的驱动程序,因此Microwindows的显示需要在内核中有Linux Frame Buffer支持。当然,如果还需要其他的一些功能,例如TFTP下载,则也可以在配制中加载进去。mClinux内核对Frame Buffer支持的配置图如图 2 所示。



图2  mClinux内核配置图(关于Frame Buffer)


基于Microwindows API的应用程序的添加


由于Microwindows API兼容Win32 API的编程模式,所以对于熟悉Win32 API的工程师而言,只要熟悉Microwindows API的函数库,就可以根据客户需求,开发出可以在Microwindows上支持的以Intel 16位、32位CPU,MIPS R4000 以及 ARM 芯片为核心的目标平台上运行的应用程序,从而开发出新一代的嵌入式产品,如红外抄表器,PDA等。


在此GUI的平台搭建过程中,在内核中添加两个应用程序,它们分别为mterm.c、muserfd.c。其中mterm.c是一个显示终端的窗口,在主机上的超级终端上输入信息,在LCD上类似Windows的窗口中就能得到显示。实现过程如下:


(1)修改./config/config.in,在相应的菜单块中增加一行,如下所示:


bool'mterm' CONFIG_USER_
MICROWIN_BIN_MTERM
bool ' muserfd ' CONFIG_USER_
MICROWIN_BIN_MUSERFD


(2)在mClinux-dist\user\
microwin\Makefile文件中增加一行,如下所示:
$(ROMFSINST) -e
 CONFIG_USER_MICROWIN_BIN_ MTERM  /bin/ mterm
$(ROMFSINST) -e CONFIG_USER_MICROWIN_BIN_ MUSERFD   /bin/ muserfd


修改后,对mClinux进行重新编译,就把新的应用程序加载到文件系统中了。


此外,还有一种快速添加应用程序到文件系统中的方法,即省略在系统中添加程序编译加载信息,直接用交叉编译工具自行编译,然后将生成的Flat可执行文件放在romfs/bin目录下,使用命令生成romfs镜像。


编译Microwindows


在应用程序配置界面中,选择Microwindows,按照图 3 的提示配置选定Microwindows中的项,其余不选定。


从Microwindows的配置界面可以看到新添加的应用程序已经出现在配置界面中,设置完毕后保存、退出。在Cygwin环境下依次执行make dep; make clean; make lib_only;  make user_only ; make romfs; make image命令,即可完成编译过程。



图3 Microwindows的编译配置界面


运行Microwindows应用程序


编译完成后,连接PC机上的超级终端,就可以运行新的内核了。在超级终端的sash提示符下,输入如下命令运行Microwindows应用程序:


/>cd /bin
/bin>./ mterm


这时,在LCD上就会显示一个类似Windows的窗口

来源:电子设计应用  作者:陈艳 李茜 闫效莺 黄鹏 车小平


摘  要: 本文详细阐述了Mcrowindows在S3C44B0X上的应用,最后给出了Mcrowindows在远程红外抄表器中的应用。


关键词:  S3C44B0X;Mcrowindows;嵌入式mClinux;远程红外抄表器


引言


随着嵌入式系统的广泛应用,面向人机交互的嵌入式产品的需求量越来越大,GUI的设计也变得越来越重要。在Linux之上进行实时嵌入式系统开发的厂商,一般会选择如下几种GUI系统:高度裁减的X Windows 系统、MiniGUI、Microwindows、QT/Embedded等。Microwindows作为一种开放式源码的嵌入式GUI软件,目的是把图形视窗环境引入到运行Linux的小型设备和平台上,其体系结构如图1所示。


Microwindows的可移植性非常好,有多种平台的支持,而以Samsung公司的S3C44B0X嵌入式处理器芯片为核心的ARM平台就是其中的一种。


本文详细阐述了Microwindows在S3C44B0X上的应用,最后给出了Mcrowindows在远程红外抄表器中的应用。



图1  Microwindows的体系结构


Microwindows在S3C44B0X上的应用


内核的裁剪与配置


在嵌入式系统中,内核裁减是必不可少的工作。内核的大小,关系到硬件系统需要多大的存储空间,存储空间越大需要的硬件成本也越高。 mClinux内核采用模块化的设计,即很多功能块可以独立的加上或卸下,开发人员在设计内核时把这些内核模块作为可选的选项,可以在编译系统内核时指定。因此,一种较通用的做法是对mClinux内核重新编译,在编译时选择嵌入式设备所需要的功能支持模块,同时删除不需要的功能。通过对内核的重新配置,可以使系统运行所需要的内核显著减小,从而缩减资源使用量。


以S3C44B0X为核心的Embest EduKit-II目标平台采用了mClinux操作系统,进入显示屏是256色STN LCD,其显示驱动基于Frame Buffer的驱动程序,因此Microwindows的显示需要在内核中有Linux Frame Buffer支持。当然,如果还需要其他的一些功能,例如TFTP下载,则也可以在配制中加载进去。mClinux内核对Frame Buffer支持的配置图如图 2 所示。



图2  mClinux内核配置图(关于Frame Buffer)


基于Microwindows API的应用程序的添加


由于Microwindows API兼容Win32 API的编程模式,所以对于熟悉Win32 API的工程师而言,只要熟悉Microwindows API的函数库,就可以根据客户需求,开发出可以在Microwindows上支持的以Intel 16位、32位CPU,MIPS R4000 以及 ARM 芯片为核心的目标平台上运行的应用程序,从而开发出新一代的嵌入式产品,如红外抄表器,PDA等。


在此GUI的平台搭建过程中,在内核中添加两个应用程序,它们分别为mterm.c、muserfd.c。其中mterm.c是一个显示终端的窗口,在主机上的超级终端上输入信息,在LCD上类似Windows的窗口中就能得到显示。实现过程如下:


(1)修改./config/config.in,在相应的菜单块中增加一行,如下所示:


bool'mterm' CONFIG_USER_
MICROWIN_BIN_MTERM
bool ' muserfd ' CONFIG_USER_
MICROWIN_BIN_MUSERFD


(2)在mClinux-dist\user\
microwin\Makefile文件中增加一行,如下所示:
$(ROMFSINST) -e
 CONFIG_USER_MICROWIN_BIN_ MTERM  /bin/ mterm
$(ROMFSINST) -e CONFIG_USER_MICROWIN_BIN_ MUSERFD   /bin/ muserfd


修改后,对mClinux进行重新编译,就把新的应用程序加载到文件系统中了。


此外,还有一种快速添加应用程序到文件系统中的方法,即省略在系统中添加程序编译加载信息,直接用交叉编译工具自行编译,然后将生成的Flat可执行文件放在romfs/bin目录下,使用命令生成romfs镜像。


编译Microwindows


在应用程序配置界面中,选择Microwindows,按照图 3 的提示配置选定Microwindows中的项,其余不选定。


从Microwindows的配置界面可以看到新添加的应用程序已经出现在配置界面中,设置完毕后保存、退出。在Cygwin环境下依次执行make dep; make clean; make lib_only;  make user_only ; make romfs; make image命令,即可完成编译过程。



图3 Microwindows的编译配置界面


运行Microwindows应用程序


编译完成后,连接PC机上的超级终端,就可以运行新的内核了。在超级终端的sash提示符下,输入如下命令运行Microwindows应用程序:


/>cd /bin
/bin>./ mterm


这时,在LCD上就会显示一个类似Windows的窗口

相关IC型号

热门点击

 

推荐技术资料

罗盘误差及补偿
    造成罗盘误差的主要因素有传感器误差、其他磁材料干扰等。... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!