⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nrf2401r.asm

📁 PTR4000模块的源文件
💻 ASM
字号:
;****************************
;接收部分程序
;****************************
; I/O口设置
;****************************
        dataio  bit  p1.2
	clk1	bit  p1.5
	dr1     bit  p1.3
        cs      bit  p1.4
        ce      bit  p1.1
        pwr_up  bit  p1.0
        led1    bit  p3.4
        led2    bit  p3.5
;****************************
; 配置初值地址
;****************************
        config_data0 equ 30H
        config_data1 equ 31H
	config_data2 equ 32H
	config_data3 equ 33H
	config_data4 equ 34H
	config_data5 equ 35H
	config_data6 equ 36H
	config_data7 equ 37H
	config_data8 equ 38H
	config_data9 equ 39H
	config_data10 equ 3AH
	config_data11 equ 3BH
	config_data12 equ 3CH
	config_data13 equ 3DH
	config_data14 equ 3FH
	transmit_data0 equ 40h
        transmit_data1 equ 41h
	transmit_data2 equ 42h
        transmit_data3 equ 43h
        transmit_data4 equ 44h
        number1        equ 45h


        org  0000h
        sjmp main
	org  0030h
main:   lcall int
        lcall nrf2401pz
MAIN1:  ;setb  ce
        ;lcall delay200us
       ; mov   number1,#00h
        ;clr   c
       ; setb  dataio
        LCALL NRFR
        cpl   led2
        mov   r5,#20
l2:     djnz  r5,l1
       ; mov   a,number1
        ;rlc   a
        ;mov   led2,c
        ;clr   c
        ;clr   ce
        sjmp  MAIN1
l1:     lcall delay3ms
        sjmp  l2
;**********************************
;初始化程序
;**********************************
int:    clr   pwr_up
        nop
        nop
        setb  pwr_up
        clr   ce
        clr   cs
        clr   clk1
	clr   dataio
        setb   led1
        setb   led2
        ret
;*********************************
;2401配置
;*********************************
nrf2401pz:
        mov   config_data0,#08h
        mov   config_data1,#08h
        mov   config_data2,#00h
        mov   config_data3,#0ddh
 	mov   config_data4,#0ddh
 	mov   config_data5,#0ddh
 	mov   config_data6,#0ddh
 	mov   config_data7,#00h
 	mov   config_data8,#0ddh
 	mov   config_data9,#0ddh
 	mov   config_data10,#0ddh
 	mov   config_data11,#0ddh
 	mov   config_data12,#83h
 	mov   config_data13,#6Eh
 	mov   config_data14,#05h
        setb  pwr_up
        lcall delay3ms
        setb  cs
        mov   r2,#15
        mov   r0,#30h
pz:     mov   r1,#08h
        mov   a,@r0
lop:    rlc   a
        mov   dataio,c
        nop
        setb  clk1
        nop
        clr   clk1
        djnz  r1,lop
        inc   r0
        djnz  r2,pz
        clr   cs
        ret
;******************************
;接收数据
;实现1个字节数据的接收
;******************************
NRFR:  setb   ce
       LCALL delay200us
       jnb    dr1,nrfr
       ;cpl    led2
       nop
       mov    r0,#08h
nrfr1: setb   clk1
       mov    c,dataio
       mov    a,number1
       rlc    a
       mov    number1,a
       clr    clk1
       djnz   r0,nrfr1
       clr    ce
       ret

;******************************
;延时程序
;******************************
delay3ms: mov r6,#10
dl1:      mov r7,#150
dl2:      djnz r7,dl2
	  djnz r6,dl1
          ret
delay200us: mov  r7,#100
dl3:        djnz  r7,dl3
            ret
 end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -