C語言 嵌入式系統的訊息機制

2021-05-25 05:44:18 字數 1159 閱讀 5933

訊息響應:

訊息有多種:

ir/key/系統及異常 訊息

處理訊息的最佳機制:佇列

訊息處理得好,直接關係到系統的耦合性及健壯性。

下面給出乙個訊息機制的框架:

資料結構:

typedef struct

qune_data;

qune_data *pvmcdenc=null;

1)獲得外界或系統觸發,獲得訊息

//將訊息發出

case ir_msg:

case key_msg:

case sys_msg:

vmcd_encode_post_command(vmcd_encode_cmd_new_disc| vmcd_ui_disc_index);

tresult vmcd_encode_post_command(uint16 cmd)

break;

......

}   

2)將訊息加入佇列

tresult push_vmcd_current_encode_cmd(uint16 cmd)

return failure;

}2)訊息出隊

uint16 get_vmcd_current_encode_cmd(void)

return cmd;

}void pop_vmcd_current_encode_cmd(void)

}3)佇列命令相應

tresult vmcd_encode_parse_command(void)

{uint16 cmd = get_vmcd_current_encode_cmd();

uint16 cmd_para = get_vmcd_encode_cmd_para(cmd);

uint16 cmd_func = get_vmcd_encode_cmd_func(cmd);

//根據命令執行相應的動作

switch(cmd_func)

byte is_vmcd_encode_cmd_queue_full(void)

byte is_vmcd_encode_cmd_queue_empty(void)

訊息機制,有其有點,但有點複雜;因此,對於流程簡單,功能單一的系統,使用簡單的接受,命令相應即可。

訊息機制,便於系統結構化及系統穩定性

嵌入式學習(二) 嵌入式系統C 語言

1 從 cpu 復位時的指定位址開始執行 2 跳轉至彙編 startup 處執行 3 跳轉至使用者主程式 main 執行,在 main 中完成 a.初試化各硬體裝置 b.初始化各軟體模組 c.進入死迴圈 無限迴圈 d呼叫各模組的處理函式 下面是幾個 著名 的死迴圈 1 作業系統是死迴圈 2 win3...

嵌入式系統高階C語言程式設計

內容介紹 本書主要介紹針對嵌入式系統基於c語言的軟體專案開發流程 較為複雜的c語言程式設計知識與技巧 程式設計風格及除錯習慣,並通過對乙個具體的軟體模組 asix window gui 的分析,介紹分析 的方法以及設計軟體系統需要考慮的各要素。本書以實際專案中的 為例來進行介紹,詳細分析在嵌入式系統...

嵌入式系統上訊息機制的實現(很經典的分析)

摘要 圖形使用者介面是嵌入式系統中重要部分,是使用者與系統進行互動的樞紐,如何建立乙個有效的訊息機制,實現訊息從使用者到系統的傳遞,以及系統對訊息的處理如何再反映到圖形使用者介面是嵌入式系統開發的重要環節。本文通過對 minigui的訊息機制的分析後,介紹一種簡單的基於嵌入式系統的訊息機制的實現方法...