1.開機後要跑幾個task:Syscomp_config.c (MCU\config\src)
sys_comp_config_tbl是一個task的initial table,裡面define了許多task的XXXX_create function名稱,例如nvram_create、mmi_create、l4_create。
透過載入這個table,執行各個task的「建立」(應該是有生出task的意思存在),接著各個task再有自己的main,再去做其初始化的動作、handler這一類的。
2.以l4_create function為例,function內容如下:(MCU\ps\l4\src\L4_create.c)
kal_bool l4_create(comptask_handler_struct **handle) { static const comptask_handler_struct l4_handler_info = { layer4_task_main, /* task entry function */ layer4_init, /* task initialization function */ NULL, /* task configuration function */ l4_reset, /* task reset handler */ NULL, /* task termination handler */ }; *handle = (comptask_handler_struct *)&l4_handler_info; return KAL_TRUE; }
在l4_create()裡面,建立了一個資料型態為comptask_handler_struct的變數l4_handler_info,
裡面指定了一個task的對應行為function。
layer4_task_main()是layer 4的main function,裡面跑著一個while (1)的 infinite loop,來處理各種的message,透過process_ilm(),再去執行對應message 的main。
2010年12月29日 星期三
2010年12月22日 星期三
MTK UART筆記
1. 跟PC tool溝通是透過UART下command,格式跟AT command一樣,解析輸入的command type,再執行對應的handler。
dt_create()->dt_task_main()->dt_process_one_cmd ()->dt_cmd_processor ()->
檔案:
Dt_create.c (MCU\ps\dt\src)
Dt_analyzer.c (MCU\ps\dt\src)
dt_create()->dt_task_main()->dt_process_one_cmd ()->dt_cmd_processor ()->
檔案:
Dt_create.c (MCU\ps\dt\src)
Dt_analyzer.c (MCU\ps\dt\src)
2010年11月29日 星期一
switch case and watchdog
1.如果在switch case中,需等候I/O腳位變化,而決定是否往下執行,
可以把while(status)改寫成if (! status) then step++,避免程式卡在while loop,浪費時間,step中的watchdog也可以不需要去控制。
2.避免有以下寫法:
switch (step)
{
case 0:
WDT_stop();
.......
step++;
break;
case 1:
.......
step++;
break;
case 2:
......
WDT_restart();
break;
}
在step0到1的過程當中,WDT已經在main()又被開啟了,因此程式容易有不可預期的情形產生。
可以把while(status)改寫成if (! status) then step++,避免程式卡在while loop,浪費時間,step中的watchdog也可以不需要去控制。
2.避免有以下寫法:
switch (step)
{
case 0:
WDT_stop();
.......
step++;
break;
case 1:
.......
step++;
break;
case 2:
......
WDT_restart();
break;
}
在step0到1的過程當中,WDT已經在main()又被開啟了,因此程式容易有不可預期的情形產生。
2010年11月17日 星期三
2010年11月7日 星期日
掃塵除垢
今天宅在家中沒出門,下午花了一些時間整理房間,雖然常常都會做整理,但是每次整理時,還是會掃出一些灰塵來,隨著打掃的時間愈久,灰塵就愈多。
不過大部分的物品並不會常常移動,但是還是會染上塵垢,因此一段時間就要打掃一下,維持房間清潔,住起來才會舒適、衛生。同理,我們接觸這花花世界,形形色色的人、事、物,那我們的心一定更容易沾染到不乾淨、不好的東西。
因此更常常需要掃塵除垢、調整自己的念頭、想法、迴光返照,讓自己清靜靈明的本心作用,才能時時保持快樂!
不過大部分的物品並不會常常移動,但是還是會染上塵垢,因此一段時間就要打掃一下,維持房間清潔,住起來才會舒適、衛生。同理,我們接觸這花花世界,形形色色的人、事、物,那我們的心一定更容易沾染到不乾淨、不好的東西。
因此更常常需要掃塵除垢、調整自己的念頭、想法、迴光返照,讓自己清靜靈明的本心作用,才能時時保持快樂!
2010年11月6日 星期六
2010年11月5日 星期五
好用的TCP/UDP server軟體
功能強大:
1.ADVANCED TCP/IP DATA LOGGER
可做TCP/UDP client、server,而且logger功能強大(可加timestamp),擁有很多的plug-in。
2.HsTcp2Com (Standard Edition)
HsTcp2Com (Professional Edition)
可將TCP/UDP的資料轉到Com port上,擁有簡易的logger功能,但是資料內容卻固定為16進制,不便閱讀。
1.ADVANCED TCP/IP DATA LOGGER
可做TCP/UDP client、server,而且logger功能強大(可加timestamp),擁有很多的plug-in。
2.HsTcp2Com (Standard Edition)
HsTcp2Com (Professional Edition)
可將TCP/UDP的資料轉到Com port上,擁有簡易的logger功能,但是資料內容卻固定為16進制,不便閱讀。
2010年11月4日 星期四
綜合水果餡餅-蘋果肉桂&布里起司覆盆莓
之前去Costco買東西的時候,就曾看到這個水果餡餅,看起來非常的可口,讓人很想買來吃吃看。不過它的售價小貴了一點,這樣子小小一盒要499,因此一直買不下去。
今晚去買東西的時候,看自己這次沒買什麼東西,於是就決定帶一盒回家吃吃看!
講到這不禁要先說一下,Costco冷凍區的冰箱真是超冷的,在開啟的玻璃門前站了一分鐘,連平常很耐冷的我,不禁從腳冷了上來!
看起來很好吃的水果餡餅
上面是蘋果肉桂,下面是布里起司覆盆莓
每種口味各20個
放進烤箱準備要烤了
咬了一口的布里起司覆盆莓 |
咬了一口的蘋果肉桂
照著盒子上說明去烤,但是第一次烤出來卻沒有酥酥的感覺,於是又拿進去再烤了5分鐘左右,結果好像烤太久了,布里起司覆盆莓的內餡都跑出來了=. =
而且吃出來沒有期待的可口,覺得很油膩,外觀上也沒像盒子一樣那麼好看,下次想吃還是外面買一買就好了!><
blog搬家了
本來是用Yahoo和無名的blog,不過一直覺得許多想要的功能,在這兩家找不到,便開始思索著要搬家。
看蠻多人都用Google的blogger,功能好像還蠻多的,相信以Google的品質,應該是蠻好用的,以後這裡就是我的新家了,哈哈!
看蠻多人都用Google的blogger,功能好像還蠻多的,相信以Google的品質,應該是蠻好用的,以後這裡就是我的新家了,哈哈!
2010年8月18日 星期三
有機生活--神清氣爽
最近幾個月在飲食上小小的調整,每天早上都喝一杯「完全沒污染」的蔬果汁。
這果汁還挺神奇的,看似一般的蔬果汁,不過對於身體健康還蠻有幫助的。
喝它的當天下午就體驗到它對腸胃懦動的幫助,整個變得很順暢,哈哈!
而且這幾個月下來,感覺身體有變年輕的感覺,好像恢復到18歲左右的體力,
忙了一整天下來,精神還很好,很有衝勁。也不再長痘痘,皮膚漸漸變好了,整個體質有明顯的改善。
下面就是最近在喝的果汁,2罐一起搭配,只要用冷水沖泡即可。如果有朋友想改善體質,調理身體的,會偏頭痛的,蠻建議喝看看的,一定會有幫助的。
它是在美國完全無污染的環境下種植的,由將近20種的蔬菜和水果所組合。含的能量很高,可以補充我們所需的礦物質、維生素、微量元素等。
會讓我們體內累積的毒素,不好的髒東西給排出來,進而讓身體恢復健康。
2010年6月7日 星期一
訂閱:
文章 (Atom)