C4M-OS現成即時硬體暫存器及旗標讀寫工作方塊
在TIMER硬體中斷分享中,可以登錄其它硬體暫存器或旗標讀寫工作方塊。在其它硬體中斷分享中,也可以登錄TIMER硬體暫存器或旗標讀寫工作方塊。不論TIMER硬體或其它週邊硬體的暫存器或旗標讀寫工作方塊。
均能夠使用通用的佈局巨集定義,初始化及內部鏈接結構體。
• 即時旗標群讀寫結構體:可使用即時旗標群讀寫結構體佈局巨集RTFLAGIO_LAY(RTFIOSTR,NextTaskNum,HWRegAdd,Mask,Shift,DataAdd),來定義產生即時旗標IO結構體。
• 即時旗標讀取步級函式:即時旗標IO結構體配合RealTimeFlagGet_step(void* VoidStr_p),即能組成即時旗標群讀取工作方塊。
• 即時旗標寫入步級函式:即時旗標IO結構體配合 RealTimeFlagPut_step(void* VoidStr_p),即能組成即時旗標群寫入工作方塊。
• 即時暫存器讀寫結構體:可使用即時暫存器讀寫結構體佈局巨集RTREGIO_LAY(RTRIOSTR,NextTaskNum,HWRegAdd,Bytes,DataAdd),來定義產生即時暫存器IO結構體。
• 即時暫存器讀取工作方塊:即時暫存器IO結構體配合即時暫存器讀取步級函式RealTimeRegGet_step(void* VoidStr_p)即能組成。
• 即時暫存器寫入工作方塊:即時暫存器IO結構體配合即時暫存器寫入步級函式RealTimeRegPut_step(void* VoidStr_p)即能組成。
• 即時ISR計數結構體:可使用即時ISR計數結構體佈局巨集RTISRCOUNT_LAY(RTCSTR,NextTaskNum)來定義產生即時ISR計數結構體。
• 即時ISR計數結工作方塊:即時ISR計數結構體配合即時ISE計數步級函式RealTimeISRCount_step(void* VoidStr_p);即能組成。
即時硬體暫存器及旗標讀寫
自行開發中斷服務函式,可以得到比較大的彈性。其函式可以直接寫在中斷ISR內,也可以配合結構體,組成即時執行工作方塊再登錄進TIMER硬體中斷分享執行器之內。函式中需要控制或監視硬體,可利用C4M-OS提供了通用的旗標群及暫存器讀寫巨集REGFPT(),REGFGT(),REGPUT(),REGGET()執行最基礎的讀寫。而參數參考各個硬體的旗標群讀寫快查表,或暫存器讀寫快查表。