VxWorks for x86系統中實(shí)時(shí)時(shí)鐘的應用

函數BIOSTimeGet ()用來(lái)從端口讀取BIOS時(shí)間,在該函數內部調用BCD2BIN()函數,其返回值為tm型結構的日期和時(shí)間。具體內容如下:


函數SetSysTime ()可用來(lái)將系統時(shí)間設置為實(shí)時(shí)時(shí)鐘時(shí)間,在該函數的內部調用BIOSTimeGet ()函數的內容如下:

調用SetSysTime()函數后再調用GetSysTime()函數,其顯示內容就是當前實(shí)時(shí)時(shí)鐘的時(shí)間,這表明系統時(shí)間和實(shí)時(shí)時(shí)鐘已實(shí)現了同步。
3實(shí)時(shí)時(shí)鐘的特定時(shí)間設置
在某些應用中,有時(shí)我們也希望能校正實(shí)時(shí)時(shí)鐘,也就是能將BIOS中的實(shí)時(shí)時(shí)鐘設置為某個(gè)特定時(shí)間。這個(gè)功能同樣可以通過(guò)訪(fǎng)問(wèn)端口0x70,0x71來(lái)實(shí)現。
需要注意的是,寫(xiě)入到端口的數據,其格式為BCD碼,因此在使用前,需要將數據從十進(jìn)制數轉換為BCD碼。
函數BIN2BCD()可用來(lái)將十進(jìn)制數轉換為BCD碼,它的輸入為十進(jìn)制數,返回值為BCD碼。其內容如下:

評論