代码改变世界

AWTK 移植

2022-01-12 15:56  dreamboy2000  阅读(417)  评论(0编辑  收藏  举报

1、AWTK 线程时钟

awtk\src\platforms\common\sys_tick_handler.c 中的

void SysTick_Handler(void)函数屏蔽掉

uint64_t get_time_ms64() 改为如下:
1 uint64_t get_time_ms64() {
2 extern unsigned long CLOCK_GetSysTickCount(void);      // 修改为当前系统的时钟
3 return CLOCK_GetSysTickCount();
4 }

2、RTT 延迟

awtk\src\platforms\rtt\rtos.c 中的两个函数void rtos_delay(uint32_t ms) ,bool_t rtos_is_running(void)  改为

1 void rtos_delay(uint32_t ms) {
2 rt_thread_delay(ms);
3 }
4 
5 bool_t rtos_is_running(void) {
6 return TRUE;
7 }

 3、RTT 优先级

awtk\src\platforms\rtt\thread.c 中的 tk_thread_set_priority 函数 修改为如下:

 1 ret_t tk_thread_set_priority(tk_thread_t* thread, tk_thread_priority_t priority) {
 2   return_value_if_fail(thread != NULL, RET_BAD_PARAMS);
 3   //thread->priority = tk_thread_get_priority_from_platform(priority);
 4   thread->priority = priority;        // 此处修改为
 5   if (thread->running) {
 6     rt_thread_control(thread->task, RT_THREAD_CTRL_CHANGE_PRIORITY, &thread->priority);
 7   }
 8 
 9   return RET_OK;
10 }

 4、字库裁剪

可对 awtk\src\input_engines\pinyin_table.inc 及 awtk\src\input_engines\t9ext_zh_cn.inc 根据需要进行裁剪