新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)燈光控制系統(tǒng)

單片機(jī)燈光控制系統(tǒng)

作者: 時(shí)間:2013-02-21 來源:網(wǎng)絡(luò) 收藏

;****************************************
;* 源程序 *
;****************************************

;※※※※※※※※※※※※※※※※※
;※資料提供:www.51c51.net ※
;※※※※※※※※※※※※※※※※※


;源程序

;以上程序使用,內(nèi)部4MHZ時(shí)鐘,4腳輸入50HZ脈沖信號,7,6,3腳(GP0,GP1,GP4端口)為輸出口。其中漸變部分是讓燈慢慢的變亮(或滅)。不知道單片機(jī)程序有沒錯(cuò)誤,有錯(cuò)誤之處請大家多多給意見。謝謝
;程序如下:

GPI0 EQU 6
COUNT1 EQU 11
COUNT2 EQU 12
COUNT3 EQU 13
COUNT4 EQU 14
COUNT5 EQU 15
POINTER EQU 16
POINTER1 EQU 17

ORG 00H
MOVLW 07H ;設(shè)定時(shí)鐘參數(shù)1:256分頻
OPTION
MOVLW 2CH ;輸出端口設(shè)定 0,1,4輸出,3輸入50HZ
TRIS 6

;-------------------------------
START:
;對3端口掃描 掃描0低電位
MOVF GPI0,W
MOVWF COUNT1
BTFSC COUNT1,3
GOTO START
NEXT: ;對3端口掃描 掃描1高電位
MOVF GPI0,W
MOVWF COUNT1
BTFSS COUNT1,3
GOTO NEXT

INCF COUNT2
MOVLW 100
DECFSZ COUNT2,1
GOTO START ;------外接50HZ信號,掃描100次,延時(shí)2秒

;-------------------單片機(jī)燈光控制系統(tǒng)----------------------------------------
JB:
CLRF TMR0
MOVLW 250
MOVWF COUNT4
MOVWF COUNT5

INCF POINTER,F
MOVF POINTER,0
MOVWF POINTER1
MOVLW TABLE
ADDWF POINTER,0
CALL AA
MOVWF 6 ;返回,輸出-----亮
CHANGE:
MOVF TMR0,0
MOVWF COUNT3
SUBWF COUNT4,1
BTFSS STATUS,Z ;TMR0=250? 'N'空循環(huán)TMR0次 'Y'跳出重新開始漸變
GOTO NOPDELAY1
GOTO OUT
NOPDELAY1:
NOP
DECFSZ COUNT3,1
GOTO NOPDELAY1

DECF POINTER1,F ; ---單片機(jī)燈光控制系統(tǒng)-------|
MOVLW TABLE ; |
ADDWF POINTER1,0 ; |
CALL AA ; |
MOVWF 6 ;返回上一次顯示數(shù)據(jù),輸出到GP端口---滅 --|
NOPDELAY2:
NOP
DECFSZ COUNT4,1
GOTO NOPDELAY2
GOTO CHANGE
;-----漸-----變------------單片機(jī)燈光控制系統(tǒng)-----------------------------------
OUT:
MOVLW 9 ;取表9次
SUBWF POINTER,0
BTFSS STATUS,Z
GOTO JB
GOTO START


AA: MOVWF 2
TABLE:RETLW 2CH
RETLW 3CH
RETLW 2DH
RETLW 2EH
RETLW 2FH
RETLW 3DH
RETLW 3EH
RETLW 2CH
RETLW 3FH

ORG 1FFH
MOVWF OSCCAL
END

單片機(jī)相關(guān)文章:單片機(jī)教程


單片機(jī)相關(guān)文章:單片機(jī)視頻教程


單片機(jī)相關(guān)文章:單片機(jī)工作原理


光控開關(guān)相關(guān)文章:光控開關(guān)原理
聲光控開關(guān)相關(guān)文章:聲光控開關(guān)原理


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉