99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

熱啟動代碼例程應用

熱啟動代碼例程應用

對于工業控制計算機,往往設有有看門狗電路,當看門狗動作,使計算機復位,這就是熱啟動。熱啟動時,一般不允許從頭開始,這將導致現有的已測量到或計算到的值復位,導致系統工作異常。

因而在程序必須判斷是熱啟動還是冷啟動,常用的方法是:確定某內存單位為標志位(如0x7f位和0x7e位),啟動時首先讀該內存單元的內容,如果它等于一個特定的值(例如兩個內存單元的都是0xaa),就認為是熱啟動,否則就是冷啟動,程序執行初始化部份,并將0xaa賦與這兩個內存單元。

根據以上的設計思路,編程時,設置一個指針,讓其指向特定的內存單元如0x7f,然后在程序中判斷,程序如下:

void main()

 {

char data *HotPoint=(char *)0x7f;

if((*HotPoint==0xaa)&&(*(--HotPoint)==0xaa)){else{ HotPoint=0x7e;

/*冷啟動的處進

{

else

{

*HotPoint=0xaa;

*(++HotPoint)=0xaa;

}

}

然而實際調試中發現,無論是熱啟動還是冷啟動,開機后所有內存單元的值都被復位為0,當然也實現不了熱啟動的要求。

用C語言編程時,開機時執行的代碼并非是從main()函數的第一句語句開始的,在main()函數的第一句語句執行前要先執行一段’起始代碼在執行到判斷是否熱啟動的代碼之前,起始代碼已將所有內存單元清零

1.首先修改源文件然后執行如下命令:Ax startup.ax 得到startup.obj文件。將此文件拷入HOTSTART.C所在目錄。

2.將編好的C源程序用Cx.EXE編譯好,得到目標文件HOTSTART.OBJ。 

3.用 Lx HOTSTART, STARTUP.OBJ 命令連接,得到絕對目標文件HOTSTART。 

4.用 OHS51 HOTSTART 得到HOTSTART.HEX文件,即可。 對于startup.ax的修改,根據自已的需要進行,如將IDATALEN EQU 80H中的80H改為70H,就可以使6F到7F的16字節內存不被清零。

聲明:本內容為作者獨立觀點,不代表電子星球立場。未經允許不得轉載。授權事宜與稿件投訴,請聯系:editor@netbroad.com
覺得內容不錯的朋友,別忘了一鍵三連哦!
贊 2
收藏 3
關注 25
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧
主站蜘蛛池模板: 天天影视网网色色欲 | 欧美狂野乱码一二三四区 | JAVASCRIPT中国免费 | 性伦欧美刺激片在线观看 | 91freehdxxxx欧美| 伊人久久精品亚洲午夜 | 桃色av一区二区 | 免费一区区三区四区 | 久久亚洲精品成人无码网站夜色 | 日本视频一区二区 | 亚洲综合色婷婷六月丁香宅男大增 | 一级黄a视频| 亚洲第一AV导航AV尤物 | 成人片在线看 | 国产一区二区三区综合 | 大屁股人妻女教师撅着屁股 | 亚洲色偷偷av男人的天堂 | 亚洲爆乳少妇无码激情 | 亚洲在线看 | 免费观看日韩视频 | 无码av一区在线观看免费 | 国产特级黄色片 | 免费AV一区二区三区3ATV | 中文字幕乱码熟妇五十中出 | 久久亚洲精品成人无码网站夜色 | 欧美日韩国产成人高清视 | 日韩人妻无码精品专区综合网 | www.久久国产精品 | 老子午夜精品888无码不卡 | 国精品无码一区二区三区在线A片 | 国产在线a视频 | 亚洲黄色网页 | 亚洲av极品无码专区亚洲av | 中文字幕永久视频 | 婷婷九月综合 | 妓女嫖客叫床粗话对白 | 久久久久久国产精品免费播放 | 麻豆视频免费在线观看 | 精品久久在 | 天堂网www天堂在线资源库 | 国产精品极品美女自在线观看免费 |