B
bohumilfulin
Guest
Hello,
Man ir bijusi DOGXL160 grafisks displejs no elektroniskā asambleja ar SPI portu.Es nevar palaist iekšējās maksas sūkni.Vlcd joprojām ir 0 V.Es centos visu veidu extept I2C, taču bez panākumiem.
Vai šeit kāds pieredzējis, kas var hepl mani, lūdzu?
Par to pašu SPI esmu savienots sērijas datiem, flash, kas darbojas labi
Man ir 128 ATmega ar 8MHz.Šeit ir SPI konfigurācija rutīnas:
LCD_SPI_init:
ldi RMP, 0b01011111
no SPCR, RMP; [7] - SPIE: SPI Pārtraukums Ieslēgt
[6]; - SPE: SPI Ieslēgt
[5]; - DORD: Datu Pasūtīt
; [4] - MSTR: Master / Slave Izvēlēties
[3]; - CPOL: Pulkstenis polaritātei
; [2] - CPHA: Pulkstenis posms
, [1:00] - SPR1, SPR0: SPI Clock Rate Izvēlēties
; SPI2X SPR1 SPR0 SCK biežums
; 0 0 0 fosc / 4
; 0 0 1 fosc/16
; 0 1 0 fosc/64
; 0 1 1 fosc/128
; 1 0 0 fosc / 2
; 1 0 1 fosc / 8
; 1 1 0 fosc/32
; 1 1 1 fosc/64
ldi RMP, 0b00000000
no SPSR, RMP; [7] - SPIF: SPI Pārtraukums karogs
[6]; - WCOL: Rakstīt sadursmes karogs
, [5:01] - Res: Rezervēts biti
; 0 [] - SPI2X: Double SPI Ātrums Bit
kas RMP, SPSR
kas RMP, SPDR; Notīrīt SPIF & WCOL biti
pūt
;*****
LCD_WR_Command:
LCD_SPI_RW:
no SPDR, RMP
LCD_SPI_RW0:
sbis SPSR, spif
rjmp LCD_SPI_RW0, pagaidiet pārskaitījumu pilnīga aptauja SPIF, karoga
kas RMP, SPDR
pūt
;*****
testprogramma
SBI DFCS_PORT, DFCS; deselct DataFlash conected uz SPI arī
izsaukuma LCD_SPI_init, kas SPI uz displeja
CBI lcdcs_port, lcdcs; pin CS displejs
nop
CBI lcd_port, lcdres; pin CD displejs
;***************************
INIT:; galvenā testa programma
ldi RMP, $ f1
zvanu LCD_WR_Command; $ F1 (SetCOMEnd)
ldi RMP, $ 67
zvanu LCD_WR_Command; 67 $ = (103)ldi RMP, $ C0
zvanu LCD_WR_Command
ldi RMP, $ 40
zvanu LCD_WR_Command
ldi RMP, $ 50
zvanu LCD_WR_Command
ldi RMP, $ 2b
zvanu LCD_WR_Commandldi RMP, $ eb; BR
zvanu LCD_WR_Command
ldi RMP, $ 81; kontrastu
zvanu LCD_WR_Command
ldi RMP, $ 5f
zvanu LCD_WR_Commandldi RMP, $ 89
zvanu LCD_WR_Command
ldi RMP, $ af
zvanu LCD_WR_Command
SBI lcdcs_port, lcdcs
RRR: rjmp RRR
Man ir bijusi DOGXL160 grafisks displejs no elektroniskā asambleja ar SPI portu.Es nevar palaist iekšējās maksas sūkni.Vlcd joprojām ir 0 V.Es centos visu veidu extept I2C, taču bez panākumiem.
Vai šeit kāds pieredzējis, kas var hepl mani, lūdzu?
Par to pašu SPI esmu savienots sērijas datiem, flash, kas darbojas labi
Man ir 128 ATmega ar 8MHz.Šeit ir SPI konfigurācija rutīnas:
LCD_SPI_init:
ldi RMP, 0b01011111
no SPCR, RMP; [7] - SPIE: SPI Pārtraukums Ieslēgt
[6]; - SPE: SPI Ieslēgt
[5]; - DORD: Datu Pasūtīt
; [4] - MSTR: Master / Slave Izvēlēties
[3]; - CPOL: Pulkstenis polaritātei
; [2] - CPHA: Pulkstenis posms
, [1:00] - SPR1, SPR0: SPI Clock Rate Izvēlēties
; SPI2X SPR1 SPR0 SCK biežums
; 0 0 0 fosc / 4
; 0 0 1 fosc/16
; 0 1 0 fosc/64
; 0 1 1 fosc/128
; 1 0 0 fosc / 2
; 1 0 1 fosc / 8
; 1 1 0 fosc/32
; 1 1 1 fosc/64
ldi RMP, 0b00000000
no SPSR, RMP; [7] - SPIF: SPI Pārtraukums karogs
[6]; - WCOL: Rakstīt sadursmes karogs
, [5:01] - Res: Rezervēts biti
; 0 [] - SPI2X: Double SPI Ātrums Bit
kas RMP, SPSR
kas RMP, SPDR; Notīrīt SPIF & WCOL biti
pūt
;*****
LCD_WR_Command:
LCD_SPI_RW:
no SPDR, RMP
LCD_SPI_RW0:
sbis SPSR, spif
rjmp LCD_SPI_RW0, pagaidiet pārskaitījumu pilnīga aptauja SPIF, karoga
kas RMP, SPDR
pūt
;*****
testprogramma
SBI DFCS_PORT, DFCS; deselct DataFlash conected uz SPI arī
izsaukuma LCD_SPI_init, kas SPI uz displeja
CBI lcdcs_port, lcdcs; pin CS displejs
nop
CBI lcd_port, lcdres; pin CD displejs
;***************************
INIT:; galvenā testa programma
ldi RMP, $ f1
zvanu LCD_WR_Command; $ F1 (SetCOMEnd)
ldi RMP, $ 67
zvanu LCD_WR_Command; 67 $ = (103)ldi RMP, $ C0
zvanu LCD_WR_Command
ldi RMP, $ 40
zvanu LCD_WR_Command
ldi RMP, $ 50
zvanu LCD_WR_Command
ldi RMP, $ 2b
zvanu LCD_WR_Commandldi RMP, $ eb; BR
zvanu LCD_WR_Command
ldi RMP, $ 81; kontrastu
zvanu LCD_WR_Command
ldi RMP, $ 5f
zvanu LCD_WR_Commandldi RMP, $ 89
zvanu LCD_WR_Command
ldi RMP, $ af
zvanu LCD_WR_Command
SBI lcdcs_port, lcdcs
RRR: rjmp RRR