首页
登录 | 注册

contiki中的图形库部份ctk最小系统

这两天看了一下CTK部份的源码,简化了最小的图形系统,能顺利的编译成功了,但还没有实现任何功能。

我的思路是不修改系统中的任何文件,只修改它的配置文件(contiki-conf.h、contiki.h)和增加功能性的文件,达到使用的目的。

先上一下使用的系统文件:

-[F]whz_contiki {
 |-[F]ctk {
 | |-ctk-conio.c
 | |-ctk-conio.h
 | |-ctk-draw.h
 | |-ctk-mouse.h
 | |-ctk.c
 | |-ctk.h }
 |
 |-[F]lib {
 | |-libconio.c
 | |-libconio.h }
 |
 |-[F]sys {
 | |-arg.c
 | |-arg.h
 | |-cc.h
 | |-clock.h
 | |-etimer.c
 | |-etimer.h
 | |-lc-switch.h
 | |-lc.h
 | |-process.c
 | |-process.h
 | |-pt.h
 | |-timer.c
 | |-timer.h }
这次编写了ctk_arch.h及ctk_arch.c文件,实现了硬件的外部接口。

ctk_arch.c文件如下:

/*---------------------------------------------------------------------------*/
void ctk_arch_draw_char(char c,
            unsigned char xpos,
            unsigned char ypos,
            unsigned char reversed,
            unsigned char color) {
}
/*---------------------------------------------------------------------------*/
char
ctk_arch_getkey(void)
{
  return 0;
}
/*-----------------------------------------------------------------------------------*/
unsigned char
ctk_arch_keyavail(void)
{
  return 0;
}

这样就能够使用gcc进行正确编译了。

我的思路是在ctk_arch.c文件中设置一个缓冲区,比如我常用的是192×64的屏做开发,定义一个buf[24][8]的字符数组,用来保存字符数据,这样就能在gcc下调试CTK的接口了。

做一个小小的推荐,最近在Linux下用exVim来读源代码,用gcc编译测试,用起来非常爽。

上传一个编译成功的图片,以图为证。

contiki中的图形库部份ctk最小系统





2020 jeepxie.net webmaster#jeepxie.net
10 q. 0.008 s.
京ICP备10005923号