打印

对boot熟悉的兄弟指点下: boot如何为应用软件服务?

[复制链接]
1320|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
walnutcy|  楼主 | 2009-1-18 01:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
armecos| | 2009-1-18 07:23 | 只看该作者

《ecos增值包》里有BOOT的详细说明,

字库、图标、输入法等都可以存入ROMFS文件。
API函数调用使用软中断即可。

**************************
* 第九讲 图形用户接口GUI *
**************************
    2007/02/25  asdjf@163.com  www.armecos.com
    
    ......
    
    为了运行MiniGUI应用程序,我们还需要准备文件系统和运行时配置文件以及资源文件。
    一般,需要将这些文件存放到ROMFS文件系统里。我们配置的ecos支持romfs,ROMFS文件系统有两种实现方法:1、用程序头文件实现,作成数组放到H文件里,由编译器决定地址;2、用ROM映像实现,使用固定的flash地址。ecos提供了三个ROM文件系统制作工具:
    mk_romfs.exe    将romfs目录转化成BIN
    file2c.tcl      将BIN转化成H文件
    gen             批处理,从目录直接生成H文件
    
    先准备好文件目录:
    /etc
          MiniGUI.cfg      MiniGUI运行时配置文件
    /res
          app              MiniGUI应用程序资源
          bmp              BMP图片
          cursor           光标图形
          font             字体库
          icon             图标
          imetab           输入法

    res资源文件直接由minigui-res-str-1.6安装,app应用程序资源由用户指定,MiniGUI.cfg中要配置相关项:
    
    ......
    
    在cygwin中使用$ mk_romfs -v ./romfs minigui.bin将romfs目录制作成ROMFS文件系统映像minigui.bin,
    在redboot中用lo -b 0x81010000 -r -h 192.168.0.1 minigui.bin下载映像到RAM中,
    在redboot中用fis create -b 0x81010000 -l 0x160000 minigui将RAM中的映像烧写到flash中,并命名为minigui,
    用fis list查看到redboot把此映像自动分配到了0x80020000地址。
    在程序中定义CYGNUM_FS_ROM_BASE_ADDRESS为0x80020000,就可以使用这个ROMFS了。
    
    如果想用头文件的方式实现,只要用file2c.tcl就可以转换为C头文件,如下:
    sh file2c.tcl minigui.bin miniguifs.h(或者直接用gen从目录生成H文件)
    把这个头文件包含在C应用程序里,并将ROMFS挂装在这个数组上即可。不过这样每次更改目录/文件都要重新编译程序。
    
    现在可以编译调试bomb程序了,可以看到液晶屏上显示出扫雷的图片,不过速度比较慢,刷屏的过程看得很清楚,可以看到一列一列摆放地雷的过程,不过这对于了解程序运行过程有好处。
    
    ......
    
上述文档可能不完整或已被更新,想获得该资料的最新最全版本,请访问:www.armecos.com

更多内容,详见:
我的培训中心
我的研发团队
我的技术顾问
    文件系统整体解决方案咨询套餐
    IP协议栈整体解决方案咨询套餐
    USB整体解决方案咨询套餐
    BootLoader整体解决方案咨询套餐

使用特权

评论回复
板凳
computer00| | 2009-1-18 09:33 | 只看该作者

一般使用软中断,传递一个中断号和相关参数即可

使用特权

评论回复
地板
walnutcy|  楼主 | 2009-1-18 09:53 | 只看该作者

谢谢先, 除了软中断,应该还有别的办法吧??

假如boot提供的函数较多,软件岂不要做好多,

记得dos软件中断也没多少,

使用特权

评论回复
5
computer00| | 2009-1-18 10:20 | 只看该作者

本来就是啊,功能多,代码能不多吗?

dos的软中断没多少吗?

使用特权

评论回复
6
walnutcy|  楼主 | 2009-1-20 21:31 | 只看该作者

在stm32上作一个结构指针,实现了函数的传递,

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

111

主题

1443

帖子

5

粉丝