您当前的位置:五五电子网电子知识单片机-工控设备51单片机LPC900系列单片机UART和CCU模块实现红外通信程序 正文
LPC900系列单片机UART和CCU模块实现红外通信程序

LPC900系列单片机UART和CCU模块实现红外通信程序

点击数:7499 次   录入时间:03-04 11:45:41   整理:http://www.55dianzi.com   51单片机
    RET

;**********************************************************************
; 名称:     CCU_INIT
; 功能:     CCU模块初始化,使OCA(P2.7)输出38KHz,50%占空比的PWM波,
;           作为红外线的载波
;           使用6MHz晶振时,CCU频率=((6000000/2)/6)*32=16MHz
;           定时器重装值=CCU频率/红外线载频=16000000/38000=421=01A5H
;**********************************************************************
CCU_INIT:
    MOV     TOR2H,#01H          ;定时器重装值
    MOV     TOR2L,#0A5H
    MOV     OCRAH,#00H          ;(OCRAH:OCRAL)=(TOR2H:TOR2L)/2,PWM的占空比为50%
    MOV     OCRAL,#0D2H
    MOV     TCR21,#85H          ;PLL预分频为5+1
    MOV     CCCRA,#01H          ;非反相的PWM
    MOV     TCR20,#00H          
    SETB    PLEEN
    NOP
    JNB     PLEEN,$             ;等待锁相环(PLL)稳定
    ORL     TCR20,#03H          ;启动定时器,对称PWM模式
    RET

;***************************************
; 名称:     UART_INIT
; 功能:     UART初始化,波特率2400bit/s   
;***************************************
UART_INIT:
    MOV     PCON,#00H
    MOV     SSTAT,#00H          ;双缓冲禁止,中断禁止,采用查询方式发送和接收
    MOV     SCON,#40H           ;串口模式1,接收禁止
    ORL     PCON,#40H           ;SMOD0=1,SCON的位7作为FE
    MOV     BRGCON,#00H
    MOV     BRGR1,#BRGR1_DATA
    MOV     BRGR0,#BRGR0_DATA
    MOV     BRGCON,#03H         ;启动UART的波特率发生器
    RET

;*****************************************************
; 名称:     DELAY
; 功能:     延时(R7*0.1)秒(振荡器为6MHz)
; 入口参数:R7--延时时间
; 出口参数:无
; 注意:    如果入口参数R7等于0,则不延时而直接返回。
;*****************************************************
DELAY:
    MOV     A,R7
    JZ      DELAY_RTN
DELAY_L1:
    MOV     R6,#0C8H            ;延时0.1S
DELAY_L2:
    MOV     R5,#0FAH
DELAY_L3:
    NOP
    NOP
    NOP
    NOP
    DJNZ    R5,DELAY_L3
    DJNZ    R6,DELAY_L2
    DJNZ    R7,DELAY_L1
DELAY_RTN:
    RET    
    END



上一页  [1] [2] 


本文关键字:单片机  通信  程序  51单片机单片机-工控设备 - 51单片机