2013年10月11日 星期五

[HW3] FreeRTOS


  • git diff
  • kill $timer   -->自動自殺
  • grep "tesintg ! " *    --> 如果有驚嘆號 必須改成 -> grep "tesing \!" *
  • FreeRTOS uses its list structure to keep track of tasks for scheduling, and also to implement queues
  • 此作業重點在於要將TCB (Task Control Block)找出來
  • pvOwner is a pointer to the owner of the list element. This is usually a pointer to a task's TCB object
  • 由rtenv porting to RTOS 
  • ls -lh xxxxx  --> 檔案詳細資訊
  • RTOS 已經將現有的檔案存取做好了 ,其中包括fio_open , fio_close , fio_write , fio_seek等等
          而這些都寫在fio.c裡面。



  •  fio_write(1, buf, count);   // Write buffer to fd 1 (stdout, through uart)
           第一個引數他為  1 ,代表輸出透過uart從模擬器的 印出,當然你也可以輸出到檔                  案,那你就要改掉編號。

  • 首先要先移植如下功能至FreeRTOS:
          itoa   --> ok 
          htoa --> ok  (與itoa共用一個helper function)    
          int2str  -> ok
          str2int  -> ok 
          strlen -> ok
          strcmp -> ok
          sprintf -> ok
          printf -> ok


       


  • xQueueCreate usage: (from queue.h)
xQueueHandle xQueueCreate ( unsigned portBASE_TYPE uxQueueLength, unsigned portBASE_TYPE uxItemSize );
         refer to http://www.freertos.org/a00116.html



  • stdarg.h --> for the printf and sprintf need to used.
         stdarg是由stdandard(標準)arguments(參數)簡化而來,主要目的為讓函式能夠接收不定量參                數
          http://zh.wikipedia.org/zh-tw/Stdarg.h         



  • 實作printf中,遇到一個問題:
            printf("\n");   --->   


沒有留言:

張貼留言