基于PIC16F877A的方波信號(hào)發(fā)生器電路設(shè)計(jì)
;*********主程序************
ORG 000H
MAIN NOP
BSF STATUS,RP0
MOVLW 0FEH
MOVWF TRISC
CLRF PORTC
MOVLW 0FFH
MOVWF TRISB
MOVLW 07H ;分頻比設(shè)定為1:256
MOVWF OPTION_REG
BCF STATUS,RP0
KEYIN BTFSC PORTB,0 ;測(cè)試SW1是否按下?
GOTO LOOP
CALL DELAY
BTFSC PORTB,0
GOTO LOOP
CHECK BTFSS PORTB,0 ;測(cè)試SW1是否斷開?
GOTO CHECK
CALL DELAY
;調(diào)開延時(shí)子程序。消除斷開抖動(dòng)的影響
BTFSS PORTB,O
GOTO CHECK
BSF STATUS,RP0
DECF OPTION_REG,1
MOVF 07H
ANDWF OPTION_REG
MOVF OPTION_REG,1
BCF STATUS,2
GOTO MAIN
LOOP MOV LW01H
XORWF PORTC
BCF INTCON,2
MOVLW TMR0B
MOVWF TMR0
;重新啟動(dòng)定時(shí)器開始計(jì)數(shù)
TEST BTFSS INTCON,2
;檢測(cè)TMR0溢出標(biāo)志位
GOTO TEST
GOTO KEYIN
;*******TMR0延時(shí)子程序8 ms*******
DELAY
BSF STATUS,RP0
MOVF OPTION_REG,0
MOVWF OPTION_B
MOVLW 04H
MOVWF OPTION_REG
BCF STATUS,RP0
BCF INTC0N,2
MOVLW 06H
MOVWF TMR0
LOOP1 BTFSS INTCON,2
GOTO LOOP1
BSF STATUS,RP0
MOVF OPTION_B,0
MOVWF OPTION_REG
BCF STATUS,RP0
RETURN
; ***********************
END ;源程序結(jié)束
2.3 基于MPLAB-IDE6.62軟件平臺(tái)的編譯與編程
(1)啟動(dòng)MPLAB-IDE6.62,創(chuàng)建工程項(xiàng)目FBXH,并創(chuàng)建源文件fbxh.asm,編譯生成目標(biāo)程序HEX文件。
(2)選擇器件為PIC16F877A,選擇通信接口(USB口),建立通信連接,設(shè)置MPLAB ICD2作為調(diào)試工具。設(shè)置調(diào)試選項(xiàng),載入調(diào)試代碼,調(diào)試代碼會(huì)自動(dòng)編程到程序存儲(chǔ)器的頂層空間,用于MPLAB ICD2的調(diào)試,進(jìn)行模擬仿真。
(3)仿真正確之后,選擇器件配置電源和接口,并設(shè)置編程選項(xiàng),進(jìn)行編程下載程序,完成芯片程序的寫入。
2.4 電路板的設(shè)計(jì)、安裝與調(diào)試
利用PROTEL99SE制作電路PCB板進(jìn)行安裝焊接,SW1,SW2選用按紐開關(guān),SW1為循環(huán)切換控制開關(guān),SW2為復(fù)位開關(guān),POWER接5V電源,U1在安裝時(shí)要采用IC座,便于更新或更換IC,LS1可連接到壓電蜂鳴器,D0為發(fā)光二極管,有輸出時(shí)D0點(diǎn)亮,OUT為輸出端,用可示波器進(jìn)行觀察。調(diào)試完成之后,方波信號(hào)發(fā)生器的設(shè)計(jì)就全部完成了。
電路相關(guān)文章:電路分析基礎(chǔ)
負(fù)離子發(fā)生器相關(guān)文章:負(fù)離子發(fā)生器原理 分頻器相關(guān)文章:分頻器原理 塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理 離子色譜儀相關(guān)文章:離子色譜儀原理
評(píng)論