📄 fs8160.asm
字号:
DDATA EQU 20H
DATA1 EQU 21H
DATA2 EQU 22H
DATA3 EQU 23H
RA EQU 05H
RB EQU 06H
RC EQU 07H
TRISA EQU 85H
TRISB EQU 86H
TRISC EQU 87H
STATUS EQU 03H
#DEFINE MUTE RC,5
#DEFINE CLK RB,5 ;PLL clock 时钟
#DEFINE DI RB,6 ;PLL PORT 数据
#DEFINE LE RB,7 ;PLL BIT 使能
#DEFINE COUNT1 0X01E0 ;AUX_R 12MHz/25k
#DEFINE COUNT2 0XF1E0 ;MAIN_R 12MHz/25K
#DEFINE COUNT3 0X12DC ;MAIN_R 120.7MHz/25K
#DEFINE COUNT4 0X6BD4 ;MAIN_R 690.10MHz/25K
#DEFINE COUNT5 0X6BD4 ;MAIN_R 690.10MHz/25K
ORG 00H
GOTO MAIN
;=======发送分频比=====================
;======AUX_R 12MHz/50k=============
OUTPUT1
MOVLW HIGH(COUNT1)
MOVWF DDATA
CALL PUT
MOVLW LOW(COUNT1)
MOVWF DDATA
CALL PUT
MOVLW B'00000000'
MOVWF DDATA
CALL PUT3
RETURN
;=======MAIN_R 12MHz/50K==========
OUTPUT2
MOVLW HIGH(COUNT2)
MOVWF DDATA
CALL PUT
MOVLW LOW(COUNT2)
MOVWF DDATA
CALL PUT
MOVLW B'10000000'
MOVWF DDATA
CALL PUT3
RETURN
;===================================
OUTPUT3
MOVLW HIGH(COUNT3)
MOVWF DDATA
CALL PUT
MOVLW LOW(COUNT3)
MOVWF DDATA
CALL PUT
MOVLW B'11000000'
MOVWF DDATA
CALL PUT3
RETURN
;===================================
OUTPUT4
MOVLW HIGH(COUNT4)
MOVWF DDATA
CALL PUT
MOVLW LOW(COUNT4)
MOVWF DDATA
CALL PUT
MOVLW B'01000000'
MOVWF DDATA
CALL PUT3
RETURN
;===================================
OUTPUT5
MOVLW HIGH(COUNT5)
MOVWF DDATA
CALL PUT
MOVLW LOW(COUNT5)
MOVWF DDATA
CALL PUT
MOVLW B'01000000'
MOVWF DDATA
CALL PUT3
RETURN
;=============================================
;***********PLL发送八位数据*********************
PUT
MOVLW D'8'
MOVWF DATA1
CLRC ;清C
PUT1
RLF DDATA,F ;带进位位右移(先发低位)
SKPNC
GOTO $+3
BCF DI
GOTO $+2
BSF DI
NOP
NOP
NOP
BSF CLK
NOP
NOP
BCF CLK
DECFSZ DATA1
GOTO PUT1
RETURN ;发完结束
;****************************************8********************
PUT3
MOVLW D'2'
MOVWF DATA1
CLRC
CALL PUT1
FOUT
BSF LE
BCF DI
BCF CLK
BCF LE
RETURN
;========================================
;==============================================
DELAY
MOVLW D'50'
MOVWF DATA2
DELAY2
MOVLW D'255'
MOVWF DATA3
DELAY1
NOP
NOP
DECFSZ DATA3,F
GOTO DELAY1
DECFSZ DATA2,F
GOTO DELAY2
RETURN
;=============================================
MAIN
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
BSF STATUS,5
MOVLW 0XF03
MOVWF TRISA
CLRW
MOVWF TRISB
MOVWF TRISC
BCF STATUS,5
BCF LE
BCF DI
BCF CLK
CALL DELAY
CALL OUTPUT1
CALL DELAY
CALL OUTPUT2
CALL DELAY
CALL OUTPUT3
CALL DELAY
CALL OUTPUT4
CALL DELAY
GOTO $
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -