導航:首頁 > 操作系統 > android數字時鍾源碼

android數字時鍾源碼

發布時間:2023-09-07 22:05:47

Ⅰ C語言作業:結構體編程練習 在屏幕上模擬顯示一個數字式時鍾 源代碼能給我的話+50,感謝

#include <stdio.h>

struct clock {
int hour;
int minute;
int second;
};
typedef struct clock CLOCK;

/*
函數功能:時、分、秒時間的更新
函數參數:無
函數返回值:無
*/
void Update(CLOCK *myclock) {
myclock->second++;
if (myclock->second == 60) { /*若second值為60,表示已過1分鍾,則 minute值加1*/
myclock->second = 0;
myclock->minute++;
}
if (myclock->minute == 60){ /*若minute值為60,表示已過1小時,則 hour值加1*/
myclock->minute = 0;
myclock->hour++;
}
if (myclock->hour == 24) { /*若hour值為24,則hour的值從0開始計時*/
myclock->hour = 0;
}
}

/*
函數功能:時、分、秒時間的顯示
函數參數:無
函數返回值:無
*/
void Display(CLOCK *myclock) { /*用回車符'\r'控制時、分、秒顯示的位置*/
printf("%2d:%2d:%2d\r", myclock->hour, myclock->minute, myclock->second);
}

/*
函數功能:模擬延遲1秒的時間
函數參數:無
函數返回值:無
*/
void Delay(void) {
long t;
for (t = 0; t < 290000000; t++) {
/*循環體為空語句的循環,起延時作用*/
}
}

int main(){
CLOCK myclock;
long i;
myclock.hour = myclock.minute = myclock.second = 0; /*hour,minute,second賦初值0*/
for (i = 0; i < 100000; i++) { /*利用循環結構,控制時鍾運行的時間*/
Update(&myclock); /*時鍾更新*/
Display(&myclock); /*時間顯示*/
Delay(); /*模擬延時1秒*/
}
return 0;
}

Ⅱ UCOS----時鍾節拍源碼分析

時鍾節拍類似於人體心臟的跳動,人體依賴心臟的跳動將血液輸入身體各個部位,支撐生命活動。時鍾節拍的是操作系統的時基,操作系統依賴於時鍾節拍推動 CPU 去執行指令。

時鍾節拍是系統以固定的頻率產生中斷(時基中斷),並在中斷處理與時間相關的事件,推動所有任務向前運行。時鍾節拍需要依賴於硬體定時器,STM32 通常使用 systick 時鍾作為 MCU 的內核定時器。

根據系統時鍾的初始化,在系統計數達到後,產生時鍾中斷,並調用中斷處理函數 OS_CPU_SysTickHandler 。

在 OS_CPU_SysTickHandler 函數中調用了 UCOS 的時間片處理函數 OSTimeTick ,對系統的時間片進行處理。

在 OSTimeTick 函數中給時基任務、定時器任務都發送了信號量。這里先介紹時基任務。時基任務是在 OS 初始化函數 void OSInit (OS_ERR *p_err) 中創建。

本章闡述了時鍾節拍的工作原理,看似微小卻是整個 uC/OS 系統的命脈。時鍾節拍的運行依賴於 CPU 的定時器, STM32 專門為此量身定製了 SysTick 時鍾。每個時鍾節拍到來時,時基任務就會執行,節拍任務的重點是更新節拍任務列表。在節拍列表中,存放的均是與時間事件(如延時或超時)相關的任務。如果任務到期,則需要更新響應的任務狀態。

閱讀全文

與android數字時鍾源碼相關的資料

熱點內容
行偏移演算法 瀏覽:240
什麼app也能讓wifi增強 瀏覽:178
雙分錄核演算法反映什麼 瀏覽:210
ubuntuphpaptget 瀏覽:256
安卓手機快充需要什麼數據線 瀏覽:795
程序中存在未轉換未編譯部分 瀏覽:323
編譯匯編鏈接優化 瀏覽:83
程序員打字和作家哪個打字快 瀏覽:579
安卓手機怎麼用cad命令行 瀏覽:385
2200工程機接收命令瞬間消失 瀏覽:255
壓縮機工藝管是多大的 瀏覽:314
安卓刷什麼系統穩定 瀏覽:37
程序員寫炫酷代碼 瀏覽:933
大話存儲pdf 瀏覽:526
中銘機器人怎麼編程 瀏覽:812
把字母變為數字的加密法 瀏覽:523
噬血狂襲第三季哪個app能看 瀏覽:423
江蘇螺桿壓縮機 瀏覽:982
android底部彈出對話框 瀏覽:503
怎麼查伺服器同行fc號 瀏覽:1001