probleem in interfacing cc2500 ten 89c2051

M

Microlab

Guest
Hallo,

Ik gebruik de volgende:

processor: AT89C2051
Crystal: 11.0592 mhz
RF IC: cc2500
pull-up weerstand: 4.k

Ik kan niet schrijven en lezen van de configureerbare registers, kan iedereen een hint geven?

Bedankt

ml
si EQU p1.7
SCL EQU P1.6
zo EQU p1.5
cs EQU p1.4
Pas EQU p3.5

org 0000h
mov P1, # 0ffh
CLR geleid
clr scl
CLR cs
jb zo, $
setb geleid
mov a, # 10h
CLR C
mov r0, # 8
sendx: RLC een
CPL SCL, 1
mov si, c
CPL SCL; 0
djnz R0, sendx
NOP
mov r1, # 8
recx: CPL SCL; 1
mov C, dus
RLC een
CPL SCL; 0
djnz R1, recx
setb SCL
NOP
setb cs
mov r3, een
nogmaals: CLR geleid
acall vertraging
setb geleid
djnz r3, opnieuw
sjmp $

 
Misschien moet je na een schematische voorstelling?
U moet code tags bij het plaatsen code.
Het is echt moeilijk om je code anders lezen.

Probeer dit SPI-code:
Code:; SPI_Transfer SPI_MODE1

; zendt en ontvangt een byte tegelijk in accSPI_Transfer:

MOV R7, # 08h; Load R7 om bits tellen

SPI_Loop:

SETB SCK; Klok Hoog

RLC A; Draai MSB in Carry Bit

MOV MOSI, C; Verplaats beetje naar MOSI

CLR SCK; Klok Laag

MOV C, MISO, verplaats MISO in Carry Bit

DJNZ R7, SPI_Loop; Loop voor een ander beetje gaarRLC A; Draai Carry Bit in A

RET; Terugkeer van routinematige
 
Hallo,

afgezien van wat er wordt gezegd.Je vertelt niet, wat u probeert te bereiken in het codefragment, die eigenlijk zou verhogen de kans op daadwerkelijke hulp.Je zou bijvoorbeeld kunnen zeggen: Ik wil registreren 10 dollar te lezen via SPI.Eerste cyclus stuurt het adres, tweede leest de inhoud van het register.

Toevallig heb ik onlangs heb wat CC1050 programmering.Ik zie dat u de RW-bit (B7) tot 0 wat betekent "schrijven" ook met CC2500, denk ik.Zo moet je niet verwachten om te lezen alle gegevens uit het register.

Groeten,
Frank

 

Welcome to EDABoard.com

Sponsor

Back
Top