- 一個Global Flag由Timer定時的toggle狀態。
- 每一個icon都有一個updatelcd method,其中依據icon function,Flash enable/disable和Global Flag來Set On/Off icon.
- mainloop中有一個update lcd的section,將所有icon的updatelcd method執行一次
- mailloop較長,有需要即時update時,可以在需要的地方直接呼叫該icon的updatlcd method.
採用dirty code,通心麵程式,在需要的時候update,並且確保每次會執行到(state machine),再執行時依照目前Global Flag狀態set on/off flag,這樣節省執行時間(不執行不需要的code),節省space(不需要額外的variable來記錄),但是因為要寫state machine,所以code size會增加,code structure也不好,不易瞭解和mantain。
所以?
沒有留言:
張貼留言