|
发表于 2011-5-5 19:52:32
|
显示全部楼层
;******************************
; Initial RF
;*****************************
WrRegs:
INCM Wr_temp
MOVM Wr_temp,a
CALL RegInitall
MOV Txbuf_M,a
INCM Wr_temp
MOVM Wr_temp,a
CALL RegInitall
MOV Txbuf_H,a
INCM Wr_temp
MOVM Wr_temp,a
CALL RegInitall
MOV Txbuf_L,a
CALL WrTo7121
MOVLA 0x1D
BCM Status,Zero
SUBAM Wr_temp,a
BTMSS Status,Zero
Jmp WrRegs
MOVLA 0x2F
MOV Count,a
Rx_Cal_LP:
CALL WaitOneSec
DECMSZ Count
Jmp Rx_Cal_LP
SetEXIR: ;Synth=0, Synth Mode
MOVLA 0x8C
MOV Txbuf_M,a
MOVLA 0x03
MOV Txbuf_H,a
MOVLA 0xB3
MOV Txbuf_L,a
CALL WrTo7121
; Jmp EnaSynth
Read_calibration:
BCM GPIO_5,Clk_spi
BCM GPIO_5,nLE_7121
MOVLA 0x40 ;Read from IF_filter/Data_filter/Demodulator
MOV Txbuf,a
CALL Wri_spi
CALL Read_spi
BSM GPIO_5,nLE_7121
BCM Status,Carry
RRC Hbyte
;loop_0: BTMSC Lbyte,1
;Jmp Read_calibration
EnaSynth: ;EXIR=0, Synth=0,
MOVLA 0x8C
MOV Txbuf_M,a
MOVLA 0x03
MOV Txbuf_H,a
MOVLA 0xB7
MOV Txbuf_L,a
CALL WrTo7121
;Jmp En_Rx
Read_DVT[1:0]:
BCM GPIO_5,Clk_spi
BCM GPIO_5,nLE_7121
MOVLA 0x04 ;Read from Synth II
MOV Txbuf,a
CALL Wri_spi
CALL Read_spi
BSM GPIO_5,nLE_7121
MOVLA 0xC0
ANDAM Hbyte,1
BCM Status,Carry
RRC Hbyte,1
RRC Hbyte,1
RRC Hbyte,1
RRC Hbyte,1
RRC Hbyte,1
RRC Hbyte,1
;loop_1: BTMSC Lbyte,1
;Jmp Read_DVT[1:0]
;***********************************
;以上为A7121的初始化主程式
;**********************************
En_Rx: ;进入Rx状态
NOP
MOVLA 0xB4
MOV Txbuf_M,a
MOVLA 0x00
MOV Txbuf_H,a
MOVLA 0x01
MOV Txbuf_L,a
CALL WrTo7121
;********************************
;下面是子程式
;*******************************
WrTo7121:
BCM GPIO_5,Clk_spi
BCM GPIO_5,nLE_7121
MOVLA 0x18
MOV Count,a
BCM Status,Carry
WrTo7121_LP: BSM GPIO_5,Clk_spi
BCM GPIO_5,Sda_spi
RLC Txbuf_L
RLC Txbuf_H
RLC Txbuf_M
BTMSC Status,Carry
BSM GPIO_5,Sda_spi
BCM GPIO_5,Clk_spi
NOP
DECMSZ Count
Jmp WrTo7121_LP
BSM GPIO_5,nLE_7121
RETL 0x00
;************************
;初始化寄存器数据表
;***********************
RegInitall:
ADDAM Pcl
RetIC: RETL 0x8C ;寄存器地址
RETL 0x00 ;下面2字节为寄存器数据
RETL 0x00
EnaChip: RETL 0x8C
RETL 0x01
RETL 0xB3
DisaTRx: RETL 0xB4
RETL 0x00
RETL 0x00
Synth_1: RETL 0x80
RETL 0xEC
RETL 0xA2
Synth_2: RETL 0x84
RETL 0x08
RETL 0x24
SysClk: RETL 0x88
RETL 0x0C
RETL 0xA2
Rx_Ctrl_1: RETL 0x98
RETL 0x08
RETL 0xF5
Rx_Ctrl_2: RETL 0x9C
RETL 0x00
RETL 0x37
Cal_Ctrl_1: RETL 0xB0
RETL 0x01
RETL 0xF4
Rx_Cal_Ena: RETL 0xB4
RETL 0x00
RETL 0x02
;************************ |
|