achei driver para display T6963

Software e Hardware para linha ARM

Moderadores: 51, guest2003, Renie, gpenga

achei driver para display T6963

Mensagempor cristian » 16 Jul 2011 10:01

mas nao funciona .....
olha o link
http://www.hackchina.com/en/cont/41703

da este erro

lcd6963.c(836): error: #513: a value of type "const unsigned char *" cannot be assigned to an entity of type "unsigned char *"

estou usando no M3 LPC1343 alem dos erros de sintaxe , ja q esta fonte é para familia LPC21XX

para os IODIR , SETPORT........ os eros das portas ja fiz , mas este ai nao faço ideia
cristian
Word
 
Mensagens: 570
Registrado em: 03 Nov 2006 08:15
Localização: serrinha-ba

Re: achei driver para display T6963

Mensagempor andre_luis » 16 Jul 2011 10:45

Posta aqui a linha exata do código onde o erro ocorreu.

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor cristian » 16 Jul 2011 11:21

Código: Selecionar todos
glyph_ptr = fonts[font].glyph_table + (((unsigned int)glyph) * ((unsigned int)store_width) * ((unsigned int)height));
cristian
Word
 
Mensagens: 570
Registrado em: 03 Nov 2006 08:15
Localização: serrinha-ba

Mensagempor andre_luis » 16 Jul 2011 11:46

Cristian,


Alguns compiladores, como o Keil, não aceitam muito bem declarações de código em variável 'estática', sem que por exemplo se coloque uma diretiva code na frente, que no seu caso seria code const unsigned char, apesar de que o erro não parece ser exatamente esse.

Numa primeira tentativa de resolver, tenta retirar o modificador const da frente da declaração, e assim voce irá transformar essa variável estática ( da Flash ) em dinámica ( na RAM ).

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor cristian » 20 Jul 2011 21:36

Código: Selecionar todos
glyph_ptr = fonts[font].glyph_table + (((unsigned int)glyph) * ((unsigned int)store_width) * ((unsigned int)height));

o erro é

lcd6963.c(843): error: #513: a value of type "const unsigned char *" cannot be assigned to an entity of type "unsigned char *"


fiz assim

Código: Selecionar todos
   *glyph_ptr = (unsigned char)fonts[font].glyph_table + (((unsigned int)glyph) * ((unsigned int)store_width) * ((unsigned int)height));


notem o agora tem um ' * ' no glyph_ptr e (unsigned char) antes do fonts

porem aparece isto

lcd6963.c(843): warning: #767-D: conversion from pointer to smaller integer

e ai tenho q me preocupar ???

ainda nao montei o hardware pra testar mas é isso ai
cristian
Word
 
Mensagens: 570
Registrado em: 03 Nov 2006 08:15
Localização: serrinha-ba

Mensagempor zachary » 28 Fev 2012 17:39

E aí Cristian, conseguiu fazer funcionar?

Eu fiz o driver para um hardware que desenvolvemos aqui na empresa, ele usa o LPC2388 e um display NHD-240128WG-ATMI-VZ.

Se precisar de ajuda é só falar!


ZAC
"Nada tema, com SMITH não há problema"

(Dr. Zachary Smith)
Avatar do usuário
zachary
Nibble
 
Mensagens: 87
Registrado em: 08 Dez 2006 12:22
Localização: Porto Alegre - RS

Mensagempor cristian » 28 Fev 2012 19:50

nao consegui fazer funcionar , esta arquivado ...
cristian
Word
 
Mensagens: 570
Registrado em: 03 Nov 2006 08:15
Localização: serrinha-ba

Mensagempor Red Neck Guy » 28 Fev 2012 21:29

Apenas olhando e mensagem de erro, dá pra dizer que o erro é causado pq o compilador em questão faz uso de tipagem forte. Sendo assim, um casting resolveria o problema. Isso resolveria:

Código: Selecionar todos
  variavel_do_erro = (unsigned char*) constante_que_da_o_erro;
Avatar do usuário
Red Neck Guy
Dword
 
Mensagens: 1968
Registrado em: 12 Out 2006 22:24

Mensagempor fabim » 29 Fev 2012 09:09

O cristian, o erro ai diz que:
O Ponteiro de uma variavel tipo FLASH, não pode ser passada como parametro para uma variavel tipo RAM.

Lembra, ROM - ROM, RAM - RAM.

O erro com certeza esta em, "fonts[font].glyph_table", você vai precisar antes desta linha, mover o valor table deste array para uma variavel, e depois apontar a variavel aí dentro.

Vai observar que vai workar na hora.
Mano, ve só.
Sou responsável pelo que escrevo!!! E não pelo que você entende !!!
fabim
Dword
 
Mensagens: 5001
Registrado em: 16 Out 2006 10:18
Localização: aqui uái!!!?

Mensagempor Red Neck Guy » 29 Fev 2012 09:21

fabim escreveu:O cristian, o erro ai diz que:
O Ponteiro de uma variavel tipo FLASH, não pode ser passada como parametro para uma variavel tipo RAM.

Lembra, ROM - ROM, RAM - RAM.

O erro com certeza esta em, "fonts[font].glyph_table", você vai precisar antes desta linha, mover o valor table deste array para uma variavel, e depois apontar a variavel aí dentro.

Vai observar que vai workar na hora.


Dependendo da arquitetura e do compilador, dá sim.

No IAR para arm, isso funciona perfeitamente:

[code]

const unsigned char tabela[]={1,2,3,4,5,6};

....

unsigned char minha_variavel;

minha_variavel = (unsigned char*)tabela[0];

...

ou


....
#define ENDERECO_REGISTRADOR algum endereço onde queira escrever algo por algum motivo

(unsigned char*)(ENDERECO_REGISTRADOR) = (unsigned char*) tabela[0];

...
Avatar do usuário
Red Neck Guy
Dword
 
Mensagens: 1968
Registrado em: 12 Out 2006 22:24

Mensagempor fabim » 29 Fev 2012 14:45

cara, não perco tempo com compilador não velho.

Eu ja falo que (void ) e pronto
Mano, ve só.
Sou responsável pelo que escrevo!!! E não pelo que você entende !!!
fabim
Dword
 
Mensagens: 5001
Registrado em: 16 Out 2006 10:18
Localização: aqui uái!!!?

Mensagempor chrdcv » 29 Fev 2012 15:52

fabim escreveu:cara, não perco tempo com compilador não velho.

Eu ja falo que (void ) e pronto


hardcore way :twisted:
Avatar do usuário
chrdcv
Dword
 
Mensagens: 1580
Registrado em: 13 Out 2006 14:13

Mensagempor Red Neck Guy » 29 Fev 2012 16:37

fabim escreveu:cara, não perco tempo com compilador não velho.

Eu ja falo que (void ) e pronto


Pros compiladores bons, no linker tu define onde ele vai escrever os segmentos. Então não tem essa distinção entre RAM e ROM na fase de compilação.... Olha o linker do GCC, Keil e IAR
Avatar do usuário
Red Neck Guy
Dword
 
Mensagens: 1968
Registrado em: 12 Out 2006 22:24


Voltar para ARM

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x