国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

chip2010的個人空間 http://m.qingdxww.cn/space-uid-9947.html [收藏] [復(fù)制] [RSS]

博客

采用AT89C2051的數(shù)字可調(diào)穩(wěn)壓電源單片機(jī)源程序

已有 1606 次閱讀2010-4-27 16:52 |個人分類:芯片解密|

采用AT89C2051的數(shù)字可調(diào)穩(wěn)壓電源單片機(jī)源程序
ORG 0000H ;定位
LJMP MAIN ;跳轉(zhuǎn)到MAIN主程序
;
ORG 0003H ;定位
LJMP IT_0 ;轉(zhuǎn)入INT0的中斷服務(wù)程序
;
ORG 000BH ;定位
LJMP IT_1 ;轉(zhuǎn)入INT0的中斷服務(wù)程序
;
ORG 0100H ;定位
MAIN: MOV R6,#32H ;將50送R6
ANL P3,#4FH ;將P3.4、P3.5、P3.7置為0,使輸出電壓為0.0V
MOV P1,#0FFH ;將0FFH送P1
SETB P3.0 ;將P3.0置1
CLR P3.1 ;將P3.1置0
MOV R2,#0CH ;將0CH送R2
LCALL DELAY ;調(diào)用DELAY延時子程序
SETB P3.1 ;將P3.1置1
CLR P3.0 ;將P3.0置0
MOV R2,#0CH ;將0CH送R2
LCALL DELAY ;調(diào)用DELAY延時子程序
DJNZ R6,MAIN ;若R6-1不等于0,跳轉(zhuǎn)到MAIN
MOV P1,#00H ;將00H送P1
MOV R2,#25H ;延時1S
LCALL DELAY ;調(diào)用DELAY延時子程序
SETB EX0 ;開INT0中斷
SETB EX1 ;INT1中斷
SETB EA ;開CPU中斷
SETB IT0 ;將INT0設(shè)為負(fù)邊沿觸發(fā)
SETB IT1 ;將INT0設(shè)為負(fù)邊沿觸發(fā)
MOV R7,#00H ;將00H送R7
LOOP: MOV A,R7 ;將R7值送A
MOV DPTR,#TABLE0 ;將TABLE0地址送DPTR
MOVC A,@A+DPTR ;查表,將查到的值送A
ANL P3,A ;將A值與P3值相與,結(jié)果送P3
MOV DPTR,#TABLE1 ;將TABLE1地址送DPTR
MOVC A,@A+DPTR ;查表,將查到的值送A
ORL P3,A ;將A值與P3值相或,結(jié)果送P3
MOV DPTR,#TABLE2 ;將TABLE2地址送DPTR
MOVC A,@A+DPTR ;查表,將查到的值送A
MOV P1,A ;將A值送P1
SETB P3.0 ;將P3.0置1
CLR P3.1 ;將P3.1置0
MOV R2,#0CH ;將0CH送R2
LCALL DELAY ;調(diào)用DELAY延時子程序
MOV DPTR,#TABLE3 ;將TABLE3地址送DPTR
MOVC A,@A+DPTR ;查表,將查到的值送A
MOV P1,A ;將A值送P1
SETB P3.1 ;將P3.1置1
CLR P3.0 ;將P3.0置0
MOV R2,#0CH ;將0CH送R2
LCALL DELAY ;調(diào)用DELAY延時子程序
SJMP LOOP ;跳轉(zhuǎn)到LOOP循環(huán)
;
ORG 0200H ;定位
IT_0: MOV R2,#14H ;將14H置送R2
LCALL DELAY ;調(diào)用DELAY延時子程序(延時約為57ms)
JB P3.2,EXIT0 ;若INT0(P3.2)為1,說明為干擾信號,退出
INC R7 ;若INT0(P3.2)為0,將R7加1
CJNE R7,#07H,EXIT0 ;當(dāng)R7值不為7時,跳轉(zhuǎn)到EXIT0
MOV R7,#00H ;當(dāng)R7值為7時,令R7等于0
EXIT0: RETI ;INT0中斷返回
;
IT_1: MOV R2,#14H ;將14H置送R2
LCALL DELAY ;調(diào)用DELAY延時子程序(延時約為57ms)
JB P3.3,EXIT1 ;若INT1(P3.3)為1,說明為干擾信號,退出
DEC R7 ;若INT0(P3.3)為0,將R7減1
CJNE R7,#0FFH,EXIT1 ;當(dāng)R7值不為0FFH時,跳轉(zhuǎn)到EXIT1
MOV R7,#06H ;當(dāng)R7值為0FFH時,令R7等于6
EXIT1: RETI ;INT1中斷返回
;
TABLE0:DB 4FH,4FH,4FH,4FH,4FH,4FH,4FH,4FH ;控制信號
TABLE1:DB 00H,10H,20H,30H,80H,90H,0A0H,0B0H ;控制信號
TABLE2:DB 0CFH,0E6H,0EDH,0FDH,0EFH,03H ;第一數(shù)碼管位顯示信號
TABLE3:DB 3FH,6DH,3FH,3FH,3FH,5BH ;第二數(shù)碼管位顯示信號

;以下為通用延時子程序
;當(dāng)R2=0CH時,延時約為10ms;當(dāng)R2=14H時,延時約為57ms
DELAY:PUSH 02H ;將R2中的值推入堆箋
LP1: PUSH 02H ;將R2中的值推入堆箋
LP2: PUSH 02H ;將R2中的值推入堆箋
LP3: DJNZ R2,LP3 ;若R2-1不為0,跳轉(zhuǎn)到LP3
POP 02H ;將堆箋中值彈出到R2中
DJNZ R2,LP2 ;若R2-1不為0,跳轉(zhuǎn)到LP2
POP 02H ;將堆箋中值彈出到R2中
DJNZ R2,LP1 ;若R2-1不為0,跳轉(zhuǎn)到LP1
POP 02H ;將堆箋中值彈出到R2中
DJNZ R2,DELAY ;若R2-1不為0,跳轉(zhuǎn)到DELAY
RET ;子程序返回
END ;結(jié)束
    主程序MAIN中,從MOV P1,#0FFH到SETB EX0的前一行,其作用是剛開機(jī)時,讓數(shù)碼管顯示全筆段,然后熄滅,以便于檢查數(shù)碼管的好壞,并做好準(zhǔn)備。在初始化程序中,令I(lǐng)T0和IT1為1,是讓INT0和INT1變?yōu)樨?fù)邊沿觸發(fā),以達(dá)到每按一次S1或S2(無論時間長短,當(dāng)然時間必須超過57ms),輸出電壓和數(shù)碼管改變一次。在LOOP循環(huán)中,先對P3相與后相或的目的是要將P3.4,P3.5,P3.7先清零后置位,相當(dāng)于這一段代碼就是一個簡單的與或邏輯電路,具體操作情況讀者可參照電路圖自行分析。另外,主程序中的R7用于存放預(yù)設(shè)電壓的序號,其值在0~6之間變化,每一個值對應(yīng)一個電壓值,依次為0—0.0V,1—3.0V,2—4.5V,3—5.0V,4—6.0V,5—9.0V,6—12V的電壓。由于經(jīng)常用的都是這些電壓,所以上面幾個電壓對電子制作者來說已經(jīng)足夠了。TABLE0中存放控制信號,TABLE1中存放第一個數(shù)碼管的字顯示信號,TABLE2中存放第二個數(shù)碼管的字顯示信號。當(dāng)按S1時,輸出電壓就按照上述電壓依次增加;當(dāng)按S2時,輸出電壓就依次減少。若此時電壓為0.0V,再按S2就會使輸出電壓變?yōu)?2V;反之,若此時電壓為12V,再按S1就會使輸出電壓變?yōu)?.0V。



路過

雞蛋

鮮花

握手

雷人

評論 (0 個評論)

facelist

您需要登錄后才可以評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
返回頂部
主站蜘蛛池模板: 久久国产免费福利资源网站 | 惩罚美女妲己的尤老师 | 国产欧美日本亚洲精品一4区 | 成年女人看片免费视频播放人 | 在线观看香蕉免费啪在线观看 | 在线99 | 人人九九精 | 一级成人a免费视频 | 国产一区二区三区在线 | 热99久久 | 成人免费午夜视频 | 五月天国产视频 | 天天色视频 | 毛片女人毛片一级毛片毛片 | 99er这里只有精品 | 91免视频 | 日本亚洲欧美在线 | 日韩精品亚洲人成在线观看 | 在线播放第一页 | 黄网站色在线视频免费观看 | 窝窝午夜一级看片爽 | 精品一区二区三区视频 | 日本天堂免费 | 在线看欧美 | 香蕉在线观看 | 国产高清在线观看视频手机版 | 国产在线原创剧情麻豆 | 国产亚洲精品午夜高清影院 | 欧美在线播放一区二区 | 欧美香蕉爽爽人人爽观看猫咪 | 亚洲视频二区 | 最近最新2019中文字幕6 | 最新国产三级在线不卡视频 | aⅴ视频在线免播放观看 | 国产成人精品一区二三区在线观看 | 国产精品亚洲欧美大片在线看 | 国产成人免费在线观看 | 成人性欧美丨区二区三区 | 久久精品国产亚洲麻豆 | 毛片精品 | 国产精品麻豆久久99 |