新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 用PIC16F84實現(xiàn)的自然風發(fā)生器

用PIC16F84實現(xiàn)的自然風發(fā)生器

作者: 時間:2014-01-09 來源:網絡 收藏
普通電風扇的是不變的,不如陣陣吹拂的自然風那樣舒適宜人。這里,我們用單片機制作一個,當其和電風扇串接時,即可使電風扇送出時強時弱的仿自然風。
一、硬件電路及原理
要使電風扇送出仿自然風,就需要改變電風扇送風的強弱,即需要改變風扇電機的電壓和電流,從而改變其轉速。如圖1所示,風扇插座與晶閘管TREAC相串聯(lián),改變晶閘管控制角α,即控制晶閘管導通的時間,就能使風扇電機的電壓、電流發(fā)生變化。圖2展示了α角和電機負載電壓的關系。
Α角的變化又可通過電容C1的充放電時間的改變來實現(xiàn)。單片機按一定規(guī)律選擇電阻Rx,即可改變電容C1的充放電時間,從而改變2N2646的導通時間。改變了TREAC的導通角,達到改變電風扇送風強弱的目的??刂平铅梁蛷娙躏L的關系如圖3所示。
市電頻率f=50Hz,則可得下式 α/360°=t/0.02 ……………(1)
  根據(jù)圖1所示RxC1充電回路,可推知
  α=t·360°/0.02 ={RxC1ln1[1/(1-n)]}·360°/0.02 ……………(2)
  其中,η=VP/VBB,Vp為C1充電后的電壓值,VBB為充電電源電壓,一般取η=0.63。若電容C為0.047μF,根據(jù)(2)式的值,求得對應于不同的α設定值的Rx值表:
R0=1kΩ,R1=33kΩ,R2=62kΩ,R3=89kΩ,R4=120kΩ,R5=150kΩ,R6=180kΩ,R7=220kΩ。
Rx接于單片機的RB0~RB7口;RA0口為啟動信號輸入口,當A鍵按下時,開始工作;RA1口為停止信號輸入口,當B鍵按下時,停止運行;RA3口為交流電相位檢測口。用于確定交流電的起始相位。
程序清單:
     LSIT P=PIC16F84
   ?。#桑危茫蹋眨模?P16F84INC
  ?。疲?EQU0CH
    FD EQU0DH
    ORG 0
MAIN:CLRW
    TRIS RB
  ?。停希郑祝疲遥?;置RB口為輸出口,
        ??;且置其初值為0
    MOVLW0FH
   TRIS RA ??;置A口為輸入口
KEYA:BTFSCRA,0 ;A鍵是否按下
  ?。牵希裕?KEYA ;A鍵未按下轉
         ?。耍牛伲粒却?BR>START:MOVLW80H  ;A鍵按下,
            ;80H→F8
  ?。停希郑祝疲疲?BR>    BTFSSRA,1 ??;B鍵按下否
  ?。牵希裕?MAIN ??;B鍵按下
PHASE:BTFSCRA3
    GOTO PHASE ;等待交流電
            零相位
     MOVF8,W
    MOVWFRB   ;F8→RB口
    CALL DELAY;延時10秒
    CLRC      ;清C
    RRF F8   ;F8右移
    BTFSS3,0
   ?。牵希裕?PHASE
    GOTO START
DELAY:MOVLW 150
    MOVWF F9
     MOVLW 7 ??;給RTCC預
           設倍數(shù)1∶256
  ?。希校裕桑希?BR>LOOP:MOVLW 255
    SUBWF RTCC
  ?。拢裕疲樱?32
    DECFSZ F9
  ?。牵希裕?LOOP
    RETLW 0
  ?。牛危摹 ?  ??;程序結束


評論


技術專區(qū)

關閉