|
注冊登錄后可以在線提問,行業(yè)從業(yè)者將幫助您解答!
您需要 登錄 才可以下載或查看,沒有賬號?請用中文注冊用戶!
×
;============================================================================
;====================翼芯科技 LED紅綠藍(lán)同時(shí)亮滅,同步=========================
;============================================================================
; 此源碼版權(quán)屬 翼芯科技 全權(quán)享有,如欲引用,敬請署名并告知
; 嚴(yán)禁隨意用于商業(yè)目的,違者必究,后果自負(fù)
; 公司網(wǎng)站 http://www.mcu-led.com
; 公司論壇 http://www.cpu-led.com
; 淘寶店: http://cpu-led.taobao.com/ 和 http://mcu-led.taobao.com/
; 產(chǎn)品咨詢 QQ :1322130074 電話:13715619122
;程序說明:本程序用于實(shí)現(xiàn)LED紅綠藍(lán)1秒同時(shí)亮滅,同步實(shí)現(xiàn),只檢測一次,抗干擾比較差.
; IC插到U2位置.
;文件名稱:LED.ASM
;日期: 2010/12/23
;版本: 1.0
;IC配置位: 內(nèi)部RC 看門狗開 MCLRE為輸入
__CONFIG _MCLRE_OFF&_CP_ON&_WDT_ON&_IntRC_OSC;
;=============================================================================
;=============================================================================
;=============================================================================
#INCLUDE <P12F509.INC>; 引導(dǎo)文件
;========================IC輸出口定義=========================================
#define RED1 GPIO,0; //紅色輸出口
#define GREEN1 GPIO,1; //綠色輸出口
#define BLUE1 GPIO,2; //藍(lán)色輸出口
#define PSAA_ZERO GPIO,4; //過零檢測口
;=========================變量定義============================================
FLAG EQU 07H; //狀態(tài)標(biāo)志寄存器
T_DELAY EQU 08H; //延時(shí)用
TEMP1 EQU 09H;
ORG 00H;
GOTO MAIN;
;==============================================================================
;功能描述:延時(shí)程序,檢測過零,實(shí)現(xiàn)同步
;隸屬模塊:無
;參數(shù)說明:實(shí)現(xiàn)T_DELAY*20MS的延時(shí)
;返回說明:無
;注:.....
;==============================================================================
DELAY1:
MOVF T_DELAY,0;
MOVWF TEMP1;
D00:
CLRWDT
BTFSC PSAA_ZERO; //為1等侍
GOTO D00;
D05:
CLRWDT
BTFSS PSAA_ZERO; //為1等侍
GOTO D05;
DECFSZ TEMP1,1;
GOTO D00;
RETURN
;==============================================================================
;功能描述:主函數(shù),程序開始
;隸屬模塊:無
;參數(shù)說明:無
;返回說明:無
;注:.....
;==============================================================================
MAIN:
MOVLW 0X38; //定義IO口,GPIO 0,1,2為輸出,3,4,5為輸入.
TRIS GPIO;
CLRF GPIO; //GPIO清0
MOVLW 0x05; //分給TMR0, 2~0定義分頻為1:64位
OPTION;
MOVLW .50; //100*20ms=1S
MOVWF T_DELAY;
LOOP:
;==============================================================================
;功能描述:實(shí)現(xiàn)紅綠藍(lán)同時(shí)跳變
;隸屬模塊:無
;參數(shù)說明 無
;返回說明:無
;注:.....
;==============================================================================
FUN1:
BSF RED1; 紅亮
BSF GREEN1; 綠亮
BSF BLUE1; 藍(lán)亮
CALL DELAY1;
BCF RED1; 紅滅
BCF GREEN1; 綠滅
BCF BLUE1; 藍(lán)滅
CALL DELAY1;
GOTO LOOP;
END
|
|