|
[求助] windml有一些入门的问题想请教,希望大家帮忙.
[复制链接]
我现在使用的是tornado 2.2.1 +windmlv3.0
在动手以前一直在看别人发过来的打包的代码,就是target/h/ugl 和target/src/ugl 里面的驱动部分以及ddk sdk
今天才刚把windml装上去开始准备着手做点实验.不过我有一些比较入门的问题想问.
我现在的状况是这样CD用SPI总线连接,CPU为MIPS32,没有什么显存只有一个简单的LCD驱动芯片已经和SPI连接好,SPI驱动也没调好了,LCD为黑白的,能够以按我的意思在LCD上打点.既然能打点自然也能做出其他的图形只是都要靠直接调底层代码.现在想把WINDML支持起来然后用WINDML里的库.
这样问题就来了,在configuration里没有我所需要的芯片或驱动型号,我想自己添加和移植这部分代码,请问如何去做呢??DDK中先复制一个文件夹云云有看没懂,因为目录下的例子基本都是PCI总线设备,没有近似的.读了下网上关于windml文章发现有一段相关的文字,不过很短,说是直接在uglinit.h和.c进行修改,最后用命令行make.这里我有点没看懂,在DOS编BSP的时候都是直接敲了torvars后到BSP目录下make bootrom之类的.但是我到ugl/graphics/driver目录下make ugl或者make后,显示一些错误,比如没找到"makearch.mf"之类的.
我也尝试到其他SRC目录下进行make也失败,我想应该是一些设置没有做.但是我不知道需要做什么.
郁闷了半天最后决定把所有修改都推倒重来,windmlv3.0恢复成刚刚安装的状态,没有进行任何配置.自己的SPI LCD驱动什么的也都在,想从头做一编,希望各位高手能给予指点
首先我想正确配置windml让它能被tornado加到工程里.
第二我想知道我自己的自定义驱动应该怎么放呢??我目前完成的功能只有在任意的一个地方打上黑或白点,没有其他的扩展,我想其他的windml函数都用common里那些general的函数,那么我需要创建哪些文件放在啥地方呢??还有怎么编进image里??
目前已经完成的是在对应的src目录和h目录加入了自己的独立文件夹,找了一个direct的模版复制进去,也基本已经改为了1bit mono等等.相关的程序也不难改.
我的模版是epson目录下的806direct那套代码.
第三个问题实际上我感觉跟第二个是一起的.我没接触过显卡的驱动,从读代码来看windml里pixel set/get函数一般都是直接对"显存"操作.那么我目前只有一块很简单的驱动IC,由于是SPI总线通过I/O写命令的方式控制IC上的片上显存,所以如果支持起来我的windml显存实际上就是普通的内存空间,那么这个时候所有操作最终落实到pixelget/set的时候,我应该直接在windml下就挂上对spi的操作呢?还是仍然使用general的函数,然后单独启一个任务专门定时对LCD刷新?.另外有一点就是屏幕的刷新跟windml有关系吗?是不是windml只是设置硬件寄存器后由硬件直接自己刷新了??
还有在网上搜索WindML相关知识和图形设备驱动程序开发(一)\(二)的文章中有这么一小段:
在路径 target/h/ugl/config 下复制uglTemplateCustom.h到相同路径下并重命名为uglCustom.h(或者其他的名字)。 对uglCustom.h作一些必要的修改uglCustom.h能够表明是自定义的驱动。
但是我在windmlv3.0里没有找到这个uglCustom.h 这咋办??
渴望高手的解答
|
|