hola amigos saludos..
quisiera saber si pueden a ayudarme o si alguien ha manejado el max 6957 que tiene 20 puertos de salida para led por medio de spi mi problema esta en los registros ya he leido el datasheet bastantes veces sin lograr algun solo led prendido
estoy programando en mkb porque pero no hay ningun problema si han hecho algo con cualquier otro basic he hecho un codigo que me base en uno de mi master navaismo para controlar un max7219 pero pues los registros son distintos .. si me ayudaran les estare muy agradecido
'CONFIGURACION DE PINES
'PIN MAX6957 PIC16F877A
'4 DATAOUT PORTB.2 ==
'26 DATAIN PORTB.0 ===> SPI
'25 CLOCK PORTB.1 ==
'27 CS PORTB.3 chip selectprogram max6957
DIM DATA,I AS BYTE
sub procedure datamax(dim adress as byte, dim data as byte)
portb.3 = 0
' seleccionar max6957 SOFT_SPI_WRITE(adress)
' apuntar a registro SOFT_SPI_WRITE(data)
' escribir datos portb.3 = 1
' deseleccionar max6957end sub
sub procedure initmax()
datamax($04,$01)
' Modo normal datamax($02,$0f)
' corriente global 24ma datamax($09,$55)
' configuracion de puertos virtuales datamax($0a,$55)
' configuracion de puertos virtuales datamax($0b,$20)
' configuracion de puertos datamax($0c,$20)
' configuracion de puertos datamax($0d,$20)
' configuracion de puertos datamax($0e,$20)
' configuracion de puertos datamax($0f,$20)
' configuracion de puertosend sub
main:
TRISB = 0
PORTB = 0
soft_spi_config(PORTB,0,2,1)
initmax()
delay_ms (50)
inicio:
FOR DATA=$01 TO $ff '
FOR I = $09 TO $0f '
datamax(I,DATA) '
DELAY_MS(60) '
NEXT I
NEXT DATA
goto inicio
goto main
end.