亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 在icd做lcd顯示時鐘演示程序.txt

?? 包括很多單片機(jī)開發(fā)用的元代碼
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
;*---
SetAlH4 
movlw 0c7h
call Selshow
movf INTSIG,W
btfss STATUS,Z
bsf ALRSIG,3
movf INTSIG,W
movwf Hour1
movlw d'24'
subwf Hour1,W
btfss STATUS,C
goto S4
clrf INTSIG
clrf Hour1
goto S4 
SetAlM4
movlw 0cah
call Selshow
movf INTSIG,W
btfss STATUS,Z
bsf ALRSIG,1
movf INTSIG,W
movwf Mins1
movlw d'60'
subwf Mins1,W
btfss STATUS,C
goto S4
clrf INTSIG
clrf Mins1
goto S4
;*=====
ISR 
Push
movwf _WREG ; 存 WREG狀態(tài)
swapf STATUS,W ; 存 STATUS
movwf _STATUS
;*----
bcf STATUS,RP0
btfsc PIR1,TMR1IF
call TimeAdj
btfsc INTCON,INTF
call IntDeal
btfsc INTCON,T0IF
call RtccDeal

;*----
Pop
swapf _STATUS,W ; Restore STATUS
movwf STATUS
swapf _WREG,F ; Restore WREG w/o
swapf _WREG,W ; affecting STATUS
retfie
;*=====
TimeAdj
bcf STATUS,RP0
bcf PIR1,TMR1IF
movlw 00h
movwf TMR1L
movlw 80h
movwf TMR1H
incf Secs,1
movlw d'60'
xorwf Secs,W
btfss STATUS,Z
goto TE
clrf Secs
incf Mins,1
movlw d'60'
xorwf Mins,W
btfss STATUS,Z
goto TE
clrf Mins
incf Hour
movlw d'24'
xorwf Hour,W
btfss STATUS,Z
goto TE
clrf Hour
TE
return
;*=====
IntDeal
bcf INTCON,INTF
bsf PORTB,0
btfsc PORTB,0 ;\
goto $+5 ; \
call Delay 
bsf PORTB,0 ; 按鍵去抖動
btfsc PORTB,0
goto $+2 ; / 
incf INTSIG
return
;*=====
RtccDeal
bcf STATUS,RP0
movlw 0ffh ;
movwf TMR0
bcf INTCON,T0IF
bsf PORTA,4
btfsc PORTA,4 ;\
goto RtcWr ; \
call Delay
bsf PORTA,4 ; 按鍵去抖動
btfsc PORTB,4
goto RtcWr ; / 
movf RTCCSIG,W
sublw 04h
btfss STATUS,C
goto WRONG
movf RTCCSIG1,W
sublw 03h
btfss STATUS,C
goto WRONG
movf RTCCSIG,W
addwf RTCCSIG1,W
btfsc STATUS,Z
goto $+3
incf RTCCSIG1
goto RtcWr
incf RTCCSIG
goto RtcWr

WRONG 
clrf RTCCSIG
clrf RTCCSIG1
RtcWr return
;*=====
BkLight
bsf STATUS,RP0
bcf ADCON1,ADFM ;ADRESH all 8-bit,H 
bcf STATUS,RP0
movlw b'01010001'
movwf ADCON0 ;select AD2,Fosc/8
decfsz BKM
goto $-1
bsf ADCON0,GO
btfss PIR1,ADIF
goto $-1
bcf PIR1,ADIF
;READ ADRES---
movf ADRESH,W
movwf ADRESB
bsf STATUS,RP0
bcf TRISE,0 ;SELECT RE0 OUTPUT
bcf STATUS,RP0
movlw b'10000000' ;critical value of lightness
subwf ADRESB,W
btfss STATUS,C
goto $+4 ;c=0,ADRESB<critical
bcf STATUS,RP0
bsf PORTE,0 ;c=1,backlight on 
goto $+3
bcf STATUS,RP0
bcf PORTE,0
movlw 20h
movwf BKM
return
;*=====
TempM ;temprature measure
bsf STATUS,RP0
bcf ADCON1,ADFM ;ADRESH all 8-bit
bcf STATUS,RP0
movlw b'01001001' ;select AD1,FOSC/8
movwf ADCON0
decfsz BKM
goto $-1
bsf ADCON0,GO
btfss PIR1,ADIF
goto $-1
bcf PIR1,ADIF
;bsf STATUS,RP0
movf ADRESH,W
;bcf STATUS,RP0
movwf Temp 
call CalTable
movwf Temp
call Bin2BCDT ; 進(jìn)行BCD碼調(diào)整
movlw 08ah ; 從第一行的第0A個位置開始
call SendCmd
movf TempH,W ; 顯示溫度
call putcLCD
movf TempL,W
call putcLCD
movlw 'C' ; 顯示“C”(表示攝氏度) 
call putcLCD
movlw 20h
movwf BKM
return
;************************************************
;* Bin2BCDT - 將 Temp 寄存器內(nèi)的二進(jìn)制數(shù)轉(zhuǎn) *
;* 換為相應(yīng)的 ASCII 碼并存為 TempH:TempL 的形式 *
;************************************************
Bin2BCDT
bcf STATUS,RP0
clrf TempH ; Initialize variables
movf Temp,W
movwf TempL
Ttenth ; Subtract 10 from low variable
movlw .10 ; until result is < 0. On each
subwf TempL,W ; subtraction, increment the
btfss STATUS,C ; temperature high byte.
goto Over0
movwf TempL
incf TempH,F
goto Ttenth
Over0
movlw 0x30 ; Make decimal ASCII by adding
addwf TempH,F ; '0' to high and low byte
addwf TempL,F
return
;*************************************************
;* DisplayTime - 將顯示指針移至第一行,調(diào)用Bin2BCD*
;* 子程序?qū)ecs 和 Mins寄存器內(nèi)的數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的*
;* ASCII 碼, 然后送 LCD顯示. *
;*************************************************
DisplayTime
bcf STATUS,RP0
call Bin2BCD ; 調(diào)用二進(jìn)制與bcd碼轉(zhuǎn)換子程序
movf HourH,W ; 顯示小時高位
call putcLCD ; 
movf HourL,W ; 顯示小時低位
call putcLCD ; 
movlw ':'
call putcLCD ; 顯示 ':' 
movf MinsH,W ; 顯示分鐘高位
call putcLCD ; 
movf MinsL,W ; 顯示分鐘低位
call putcLCD ; 
movlw ':' ; 顯示 ':' 
call putcLCD
movf SecsH,W ; 顯示秒鐘高位
call putcLCD ; 
movf SecsL,W ; 顯示秒鐘低位
call putcLCD ; 
return
;************************************************
;* Bin2BCD - 將 Secs & Mins 寄存器內(nèi)的二進(jìn)制數(shù)轉(zhuǎn)*
;* 換為相應(yīng)的 ASCII 碼并存為 SecsH:SecsL 及 *
;* MinsH:MinsL,HourH:HourL的形式. *
;************************************************
Bin2BCD
bcf STATUS,RP0
clrf HourH ; 初始化變量
movf Hour,W ; 轉(zhuǎn)換“時”
movwf HourL
Hourth ; Loop to subtract 10
movlw .10 ; from low byte and
subwf HourL,W ; increment high byte
btfss STATUS,C ; while low byte is > 0
goto Next
movwf HourL
incf HourH,F
goto Hourth
Next
clrf MinsH ; 初始化變量
movf Mins,W ; 轉(zhuǎn)換“分”
movwf MinsL
Mtenth ; Loop to subtract 10
movlw .10 ; from low byte and
subwf MinsL,W ; increment high byte
btfss STATUS,C ; while low byte is > 0
goto Next1
movwf MinsL
incf MinsH,F
goto Mtenth
Next1
clrf SecsH ; 初始化變量
movf Secs,W ; 轉(zhuǎn)換“秒”
movwf SecsL
Stenth ; Loop to subtract 10
movlw .10 ; from low byte and
subwf SecsL,W ; increment high byte
btfss STATUS,C ; while low byte is > 0
goto Over
movwf SecsL
incf SecsH,F
goto Stenth
Over
movlw 0x30 ; 
addwf HourH,F ; 
addwf HourL,F ; Add 0x30 ('0') to all
addwf MinsH,F ; variables to convert
addwf MinsL,F ; a number 0 - 9 to an
addwf SecsH,F ; ASCII equivalent
addwf SecsL,F ; '0' to '9'
return
;*====
DispTime
bcf STATUS,RP0
movlw 0c7h
call SendCmd
call Bin2BCa ; 調(diào)用二進(jìn)制與bcd碼轉(zhuǎn)換子程序
movf HourH1,W ; 顯示小時高位
call putcLCD ; 
movf HourL1,W ; 顯示小時低位
call putcLCD ; 
movlw ':' ; 顯示 ':' 
call putcLCD
movf MinsH1,W ; 顯示分鐘高位
call putcLCD ; 
movf MinsL1,W ; 顯示分鐘低位
call putcLCD ; 
return
;*----
Bin2BCa
bcf STATUS,RP0
clrf HourH1 ; 初始化變量
movf Hour1,W ; 轉(zhuǎn)換“時”
movwf HourL1
Hourth1 ; Loop to subtract 10
movlw .10 ; from low byte and
subwf HourL1,W ; increment high byte
btfss STATUS,C ; while low byte is > 0
goto Nexta
movwf HourL1
incf HourH1,F
goto Hourth1
Nexta
clrf MinsH1 ; 初始化變量
movf Mins1,W ; 轉(zhuǎn)換“分”
movwf MinsL1
Mtenth1 ; Loop to subtract 10
movlw .10 ; from low byte and
subwf MinsL1,W ; increment high byte
btfss STATUS,C ; while low byte is > 0
goto Over1
movwf MinsL1
incf MinsH1,F
goto Mtenth1
Over1
movlw 0x30 ; 
addwf HourH1,F ; 
addwf HourL1,F ; Add 0x30 ('0') to all
addwf MinsH1,F ; variables to convert
addwf MinsL1,F ; a number 0 - 9 to an
return ; ASCII equivalent
;*******************************************************************
;* LCD 模塊子程序 *
;*******************************************************************
;InitLCD——初始化LCD模塊 *
;*******************************************************************
InitLCD
bcf STATUS,RP0 ; Bank 0
bcf STATUS,RP1
clrf LCD_DATA ; 清 LCD 數(shù)據(jù) & 控制位
bsf STATUS,RP0 ; Bank 1
movlw 0xc1 ; 設(shè)置RB1~RB5為輸出
movwf LCD_DATA
bcf TRISA,5

bcf STATUS,RP0 ;
movlw 0x00 ; 
movwf LCD_DATA
bsf LCD_CNTL2, E
bcf LCD_CNTL2, E

movlw 0x08 ; 
movwf LCD_DATA
bsf LCD_CNTL2, E
bcf LCD_CNTL2, E
call LongDelay
call LongDelay

movlw b'00101000'
call SendCmd
movlw DISP_ON ; 開顯示
call SendCmd
movlw ENTRY_INC ; 設(shè)置指針移動方式
call SendCmd
movlw DD_RAM_ADDR ; 設(shè)置起始地址
call SendCmd

InitLCDEnd ;
bcf STATUS,RP0 ; 
movlw CLR_DISP ; 
call SendCmd
return

;*******************************************************************
;*putcLCD—— 將字符數(shù)據(jù)送入 LCD *
;* 本程序?qū)⒆址麛?shù)據(jù)分成了高半字節(jié)和低半字節(jié)分別輸入 * 
;* 先送入的是高半字節(jié) *
;*******************************************************************
putcLCD
bcf STATUS,RP0
movwf Byte ; 存 WREG 到 Byte 寄存器
swapf Byte,W ; 寫入高半字節(jié)
movwf LCD_DATA1
rlf LCD_DATA1,1
rlf LCD_DATA1,1
movlw 0x3c
andwf LCD_DATA1,1
movf LCD_DATA1,w
movwf LCD_DATA
bsf LCD_CNTL1, RS ; 設(shè)置為送數(shù)據(jù)模式
bsf LCD_CNTL2, E ; 發(fā)送數(shù)據(jù)信號
bcf LCD_CNTL2, E

movf Byte,W ; 接著送低半字節(jié)
movwf LCD_DATA1
rlf LCD_DATA1,1
rlf LCD_DATA1,1
movlw 0x3c
andwf LCD_DATA1,1
movf LCD_DATA1,w
movwf LCD_DATA
bsf LCD_CNTL1, RS ; 設(shè)置為送數(shù)據(jù)模式
bsf LCD_CNTL2, E ; 發(fā)送數(shù)據(jù)信號
bcf LCD_CNTL2, E
call Delay
return

;*******************************************************************
;* SendCmd - 送命令到 LCD *
;* 本程序?qū)⒚顢?shù)據(jù)分成了高半字節(jié)和低半字節(jié)分別輸入 * 
;* 先送入的是高半字節(jié) *
;*******************************************************************
SendCmd
bcf STATUS,RP0
movwf Byte ; 存 WREG 到 Byte 寄存器
swapf Byte,W ; 送入命令的高字節(jié)
movwf LCD_DATA1
rlf LCD_DATA1,1
rlf LCD_DATA1,1
movlw 0x3c
andwf LCD_DATA1,1
movf LCD_DATA1,w
movwf LCD_DATA
bcf LCD_CNTL1,RS ; 設(shè)置為送命令模式
bsf LCD_CNTL2,E ; 發(fā)送數(shù)據(jù)信號
bcf LCD_CNTL2,E
movf Byte,W ; 接著送命令的低字節(jié) 

movwf LCD_DATA1
rlf LCD_DATA1,1
rlf LCD_DATA1,1
movlw 0x3c
andwf LCD_DATA1,1
movf LCD_DATA1,w
movwf LCD_DATA
bcf LCD_CNTL1,RS ; 設(shè)置為送命令模式
bsf LCD_CNTL2,E ; 發(fā)送數(shù)據(jù)信號
bcf LCD_CNTL2,E
call Delay
return
;*******************************************************************
;* Delay - 延時子程序 *
;*******************************************************************
Delay ; call指令占用2個指令周期
bcf STATUS,RP0
clrf Count ; 清 Count占用1個指令周期
Dloop
decfsz Count,f ; 這兩行指令將延時
goto Dloop ; (256 * 3) -1 個指令周期
return ; return占用2個指令周期

;*******************************************************************
;* LongDelay - 長延時子程序 * 
;*******************************************************************
LongDelay
bcf STATUS,RP0
clrf Count
clrf Count1
movlw 0x03
movwf Count2
LDloop
decfsz Count,f
goto LDloop
decfsz Count1,f
goto LDloop
decfsz Count2,f
goto LDloop
return
;*------
END

 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩在线免费视频| 精品国产一二三| 在线播放91灌醉迷j高跟美女| 欧美日韩在线观看一区二区| 欧美美女喷水视频| 久久综合久久综合亚洲| 国产精品久久毛片av大全日韩| 亚洲欧美区自拍先锋| 图片区小说区区亚洲影院| 国产麻豆91精品| a4yy欧美一区二区三区| 欧美视频自拍偷拍| 亚洲精品一区二区三区影院| 中文字幕欧美区| 亚洲成精国产精品女| 国产成人小视频| 欧美色综合网站| 久久久精品国产免大香伊| 亚洲一卡二卡三卡四卡无卡久久| 亚洲人一二三区| 黄色日韩网站视频| 91久久精品一区二区二区| 精品日韩一区二区| 亚洲午夜精品一区二区三区他趣| 国精产品一区一区三区mba视频| 在线一区二区三区| 久久视频一区二区| 日韩二区三区四区| 成人高清免费观看| 欧美一区二区黄| 亚洲精品精品亚洲| 成人美女视频在线观看18| 欧美日韩国产高清一区二区| 欧美—级在线免费片| 午夜a成v人精品| 色欧美片视频在线观看 | 一区二区视频免费在线观看| 秋霞电影网一区二区| 日本韩国欧美在线| 本田岬高潮一区二区三区| 日韩视频永久免费| 九九热在线视频观看这里只有精品| 欧美精品aⅴ在线视频| 日韩国产成人精品| 日韩精品一区二区三区三区免费 | 欧美mv日韩mv国产网站app| 日本网站在线观看一区二区三区| 欧美军同video69gay| 视频一区二区中文字幕| 欧美一三区三区四区免费在线看 | 欧美激情在线一区二区三区| 成人亚洲精品久久久久软件| 国产精品久久久久久久久免费丝袜| 豆国产96在线|亚洲| 最新国产の精品合集bt伙计| 99精品视频在线观看| 亚洲精品一二三四区| 日本精品视频一区二区三区| 午夜国产不卡在线观看视频| 日韩欧美国产综合一区| 国产一区二区三区免费播放| 国产精品女上位| 欧美亚洲日本一区| 麻豆精品在线播放| 国产精品麻豆久久久| 欧洲一区二区av| 精品亚洲porn| 亚洲视频资源在线| 日韩一级片网址| 成人app在线观看| 久久国产精品99精品国产| 精品久久人人做人人爽| 99麻豆久久久国产精品免费| 亚洲一卡二卡三卡四卡| 精品区一区二区| 色婷婷综合中文久久一本| 日韩精品成人一区二区三区| 国产精品私人自拍| 国产精品麻豆欧美日韩ww| 欧洲日韩一区二区三区| 久久99国产乱子伦精品免费| 亚洲三级久久久| 26uuu亚洲| 欧美无砖砖区免费| 成人一级片在线观看| 日韩二区三区在线观看| 17c精品麻豆一区二区免费| 日韩一卡二卡三卡国产欧美| 一本色道亚洲精品aⅴ| 国产又黄又大久久| 五月天中文字幕一区二区| 中文字幕免费不卡| 日韩欧美亚洲国产另类| 色综合久久中文字幕综合网| 国产精品影视在线| 青娱乐精品视频在线| 亚洲三级免费电影| 国产精品美女久久久久aⅴ| 日韩欧美国产一区二区三区| 欧美日韩一区久久| 91视频国产资源| 国产白丝精品91爽爽久久| 久久国产综合精品| 亚洲国产精品人人做人人爽| 国产精品二区一区二区aⅴ污介绍| 精品少妇一区二区三区视频免付费 | 欧美一区二区三区公司| 色8久久人人97超碰香蕉987| 成人午夜av电影| 国产精品影视天天线| 久久激情五月激情| 毛片一区二区三区| 肉色丝袜一区二区| 天天综合日日夜夜精品| 亚洲国产日韩一区二区| 亚洲精品乱码久久久久久久久| 中文字幕不卡在线播放| 国产欧美一二三区| 日本一区二区不卡视频| 国产视频视频一区| 日本一区免费视频| 国产偷国产偷精品高清尤物 | 国产suv精品一区二区6| 国产一区二区三区在线观看免费 | 亚洲情趣在线观看| 亚洲欧美日韩国产另类专区| 亚洲摸摸操操av| 亚洲小说春色综合另类电影| 亚洲一区二区三区四区在线| 亚洲一区中文在线| 午夜精品成人在线| 久久精品国产久精国产爱| 精品一区二区三区久久| 国产酒店精品激情| 岛国精品在线播放| 色综合久久久久综合体| 色88888久久久久久影院野外| 欧美影院一区二区三区| 欧美一级免费观看| 精品福利二区三区| 国产精品丝袜久久久久久app| 久久精品一区四区| 亚洲伦理在线免费看| 天天色天天爱天天射综合| 老司机免费视频一区二区| 国产成人8x视频一区二区| 一本久久a久久免费精品不卡| 欧美日韩小视频| 日韩欧美久久久| 中文字幕一区日韩精品欧美| 亚洲一区二区欧美| 久久国产尿小便嘘嘘| 国产成人福利片| 欧美三级韩国三级日本一级| 日韩美女一区二区三区| 国产精品久久久久久久久免费桃花| 亚洲一区二区欧美日韩| 国产呦萝稀缺另类资源| 99久久精品免费精品国产| 欧美高清视频不卡网| 国产视频一区二区在线观看| 亚洲一区二区三区激情| 国产一区二区三区日韩| 欧美亚洲动漫另类| 国产视频视频一区| 日韩成人dvd| 91美女蜜桃在线| 久久免费视频一区| 亚洲6080在线| 99久久国产综合精品麻豆| 自拍av一区二区三区| 国内精品伊人久久久久av一坑| 日本韩国精品在线| 欧美激情综合在线| 乱中年女人伦av一区二区| 色狠狠桃花综合| 国产精品免费人成网站| 麻豆成人91精品二区三区| 欧美中文字幕一区| 国产精品久久久久天堂| 激情六月婷婷久久| 宅男噜噜噜66一区二区66| 亚洲欧美日韩电影| www.亚洲精品| 国产丝袜美腿一区二区三区| 麻豆国产一区二区| 欧美伦理视频网站| 亚洲影院久久精品| 色综合激情五月| 最新成人av在线| 96av麻豆蜜桃一区二区| 国产日韩欧美在线一区| 国内精品国产成人国产三级粉色| 制服丝袜亚洲网站| 亚洲3atv精品一区二区三区| 欧美亚洲国产bt| 亚洲一区二三区| 欧美亚洲日本国产| 亚洲小少妇裸体bbw| 欧美吞精做爰啪啪高潮|