版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、單片機C語言編程中“位”(bit)的保存方案引言引言在現(xiàn)有的教課書及相關(guān)文章中,都難得提到在單片機C語言編程中對于自定義“位”的狀態(tài)進行保存的理念。當(dāng)單片機C語言編程中提及“位”的概念時,人們自然會想到狀態(tài)字PSW中PSW.5的F0與PSW.1的F1兩個用戶通用標志位。這兩個標志位均可參與布爾運算、“位”控操作,也可隨狀態(tài)字PSW一起保存。但是,往往會忽視這一點:在一些特定的情況下,如在C語言編程的中斷服務(wù)程序中,對狀態(tài)字PSW中PSW
2、.5的F0與PSW.1的F1這兩個用戶標志位的操作可能是無效的。如:voidEX1_ISR()interrupt2外部中斷1staticunsignedinttempaddr定義接收地址緩存staticunsignedinttempkey定義接收數(shù)據(jù)緩存unsignedinttimecnttimecnt=TH1256TL1TH1=0TL1=0TR1=1定時器1啟動F0=~F0取反F0if(F0)tempaddr=tempaddr1對一些
3、控制狀態(tài)進行保持,即使是停電之后再來電了這種控制狀態(tài)依然能保持不變——這就牽涉到保存問題。例舉2:我們曾搞過一個鐳射投影屏幕升降的無線遙控裝置。這個以單片機為核心的控制裝置與屏幕升降的卷動電機等都安裝固定在一個直徑不足50mm的狹長鐵桶里面,因此裝入或拆卸都非常麻煩。為了一次性成功——避免再次拆卸裝入的麻煩,在用C語言編程時我特意多用了一個自定義的標志位——翻轉(zhuǎn)標志位“switch_sign”。因為無線遙控手柄上的向上“▲”、暫?!啊觥?/p>
4、、向下“▼”的鍵標志都已是做定的,因此,如果由于接線等失誤導(dǎo)致按向下“▼”鍵時投影屏幕向上卷、按向上“▲”鍵時投影屏幕卻向下伸……有了“switch_sign”自定義的標志位就不用怕這些了。相關(guān)的C語言程序段如下:#defineuintunsignedint#defineuunsigneduintDecode_addr,Decode_keyaddr;sbitJD1_out=P0^4定義繼電器1控制輸出端sbitJD2_out=P0^5定
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 管家婆打印自定義編輯用法
- c語言自定義數(shù)據(jù)類型
- autocad自定義線形
- 自定義菜單.txt
- 《flash自定義函數(shù)》教案
- 自定義類加載器
- 自定義.~(1).LibPkg.Zip
- 自定義.~(1).PcbLib.Zip
- 自定義.~(2).PcbLib.Zip
- win快速啟動欄自定義
- 存儲過程與自定義函數(shù)
- 湘源圖則自定義
- sw自定義屬性的鏈接
- comsol-multiphysics自定義pde
- cad制作自定義填充圖案
- 技能培訓(xùn)專題:cass自定義圖框
- 利用自定義畫筆做氣泡效果
- codingblock客戶化自定義新字段
- eclipce自定義擴展點創(chuàng)建過程
- dreamweaver8創(chuàng)建自定義代碼片段
評論
0/150
提交評論