Gravação do MC68HC908QY4

Software e Hardware para uC da Qualcomm, NXP, FreeScale e Motorola

Moderadores: 51, guest2003

Gravação do MC68HC908QY4

Mensagempor amadeu » 26 Nov 2006 14:59

Boa tarde Pessoal,

Fiz um programa bem simples apenas para ligar todo o PORTB do QY4. Compilo o mesmo e nenhum problema ocorre. Quando eu abro o programa PROG08 para gravar o microcontrolador o mesmo comunica sem problema com o microcontrolador porém quando eu vou transmitir o arquivo s19 para o microcontrolador, o software da a seguinte mensagem:

Programming Address $EE00. Error during programming.

O programa que eu escrevi é este:


$include 'qtqy_registers.inc'

RomStart EQU $EE00 ;Inicio da memória Flash para o QY4
VectorStart EQU $FFFE ;Início do vetor de reset

org RomStart

start:

mov #%00000000,DDRB
mov #%01010101,PORTB
bra $

org VectorStart
reset:
fdb start ;carrega o PC com o endereço inicial de start


Algum de vocês já teve esta experiência?

Abraços,
Amadeu.
amadeu
Nibble
 
Mensagens: 65
Registrado em: 26 Nov 2006 14:49

Mensagempor Fábio Pereira » 26 Nov 2006 17:23

Você apagou o chip antes de programá-lo ?

Até +
Fábio Pereira
embeddedsystems.io
Avatar do usuário
Fábio Pereira
Word
 
Mensagens: 674
Registrado em: 16 Out 2006 09:07
Localização: Kitchener, ON

Mensagempor amadeu » 26 Nov 2006 17:29

Boa tarde Fábio,

Sim, eu apaguei o chip e verifiquei se o mesmo está limpo. O PROG08 informa que o mesmo está limpo. Desta forma, eu abro o arquivo s19 para gravar o microcontrolador ocorre o erro que eu citei anteriormente. Estou seguindo o datasheet do microcontrolador, deixando o pino IRQ ligado por um pulldown e o PTA0 como comunicação e o restante dos pinos está não conectada. Você já teve algum problema semelhante?

Abraços,
Amadeu.
amadeu
Nibble
 
Mensagens: 65
Registrado em: 26 Nov 2006 14:49

Mensagempor Wagner de Queiroz » 26 Nov 2006 22:41

Eu costumava receber a mesma mensagem diversas vezes. E tenho a placa da Motorola na mao.

Nao esquenta nao. não é seu programa. O s19 esta correto sim. O problema é com a comunicacao.

O cristal de clock é o chato da historia. Pois ele determina a taxa de comunicacao durante o processo de gravação em modo monitor. a cada byte transmitido, o chip devolve o mesmo byte. Se o programa de gravacao fica sem a resposta do chip durante o processo, voce tem esta mensagem de erro. Nao esquenta nao. No caso tente novamente, tente, tente, tente. Assim uma hora funciona.
Seja Livre, Use Linux
Avatar do usuário
Wagner de Queiroz
Word
 
Mensagens: 872
Registrado em: 11 Out 2006 13:38
Localização: Barueri-SP

Mensagempor fenix3 » 27 Nov 2006 04:30

Recomendo a seguinte configuracao dos pinos:

IRQ = 8,1volts a 9volts
PTA0 = comunicacao com resistor de pull-up
PTA5 = Oscilador externo de 9.8304Mhz
PTA4 = Com resistor Pull-Down
PTA1 = Com resistor Pull-Up
PTA3 = Com resistor de reset Pull-Up

Nunca tive problema com este modo de configuracao, os resistores nao tem um valor critico podendo variar de 1K ate 47K.

O oscilador externo pode ser ate com 10Mhz, ira dar uma pequena diferenca na velocidade de comunicacao, mas acho que nao ira atrapalhar em nada.

Outra coisa, se este chip operou alguma vez com tensao de alimentacao acima de 5,8Volts, pode ser que ele nao aceite mais gravacoes, ai so trocando por um novo.

Apos voce pegar pratica com estes bichoa ai, ate vai dar para usar a sua configuracao com IRQ=0 e PTA0 com resistor ao Positivo, mas o valor de calibracao do oscilador deve estar correto e voce nao podera usar a protecao de blocos da memoria Flash `FLBPR` devendo ser $FF.
Luis Fenix
Maaaaraaaaviiilhaaaaaa! (Bem devagar para irritar a todos).
Avatar do usuário
fenix3
Byte
 
Mensagens: 317
Registrado em: 12 Out 2006 03:46
Localização: Minha sala, ora pois!

Mensagempor amadeu » 27 Nov 2006 08:35

Bom dia!

Poxa, que chato isto. Eu pensei que com o oscilador interno eu poderia trabalhar bem com este microcontrolador. O pior é que o oscilador externo dever ser realmente um oscilador e não um cristal, certo? Deverei montar um pequeno oscilador com base em um cristal para que o microcontrolador funcione. De toda forma, agradeço a atenção de vocês.

Valeu,
Amadeu.
amadeu
Nibble
 
Mensagens: 65
Registrado em: 26 Nov 2006 14:49

Mensagempor msamsoniuk » 27 Nov 2006 12:25

que eu lembre o QY4 tem os pinos OSC1 e OSC2, justamente para vc montar um cristal. a unica restricao, que eu saiba, eh que nos HC908 o cristal deve estar na faixa de 1 a 8MHz.
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor amadeu » 27 Nov 2006 17:06

Olá,

Mas no datasheet fala que no momento da gravação o sinal de clock deve entrar somente na no pino OSC1 e em nenhum momento ele menciona a ligação de um cristal nos pinos do microcontrolador. Além disso, este microcontrolador em 5 V funciona até 32 MHz.

Abraços,
Amadeu
amadeu
Nibble
 
Mensagens: 65
Registrado em: 26 Nov 2006 14:49

Mensagempor dragaoerrante » 29 Nov 2006 13:23

Olá Amadeu!!

Já usei um chip semelhante a esse seu, o QT2, em alguns projetos. Eu usava o CodeWarrior e para programá-lo montei uma placa baseada em um esquema de um sistema de desenvolvimento da motorola. Inicialmente tive mesmo alguns problemas para estabelecer a comunicação e entrar no modo monitor. No meu caso, o problema estava no tipo de interface que eu sei para a transferência dos dados. Ela não estava corretamente configurada no CodeWarrior.

Se você se interessar, posso te enviar o esquema da placa que eu uso. O único inconveniente desse sistema é que eu preciso colocar o controlador no programador toda vez que quero reprogramá-lo.

De qualquer forma, estou à disposição!

Boa sorte com seus projetos!

Léo
dragaoerrante
Bit
 
Mensagens: 10
Registrado em: 22 Nov 2006 12:48
Localização: Caçapava/Itajubá

Mensagempor msamsoniuk » 29 Nov 2006 20:57

os 32MHz com um oscilador TTL, se for um cristal de 2 pinos fica limitado a faixa de 1 a 8MHz, mas provavelmente vc pode reprogramar o PLL para multiplicar essa frequencia e chegar aos 32MHz. em relacao a programacao, realmente, me parece que nao tem opcao a nao ser usar um oscilador TTL ou o oscilador interno. seria interessante se eles implementassem uma opcao para usar um cristal de 32.768KHz, como ocorre em outros HC908, ficaria mais simples.
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor fenix3 » 29 Nov 2006 21:25

Ola Sam

HC908QTx nao tem PLL...

Com modulo oscilador externo ate 32Mhz em 5v...pouco pino...

Bom, com oscilador 32.768Khz, no caso do GP32, so da para programar/comunicar se a memoria estiver totalmente apagada ou em modo monitor com a area de vetores apagada..., se nao...complica...
Luis Fenix
Maaaaraaaaviiilhaaaaaa! (Bem devagar para irritar a todos).
Avatar do usuário
fenix3
Byte
 
Mensagens: 317
Registrado em: 12 Out 2006 03:46
Localização: Minha sala, ora pois!

Mensagempor dragaoerrante » 30 Nov 2006 08:04

Gente, o Amadeu está certo. Nesses chips, você não pode usar um cristal no modo monitor, somente um oscilador externo. Acho que no seu caso, você talvez não esteja com o vetor de reset limpo, $FFFF. Se não tiver ele não vai conseguir entrar no modo monitor mesmo... Em todo caso, experimente usar a configuração que o Fenix sugeriu, pois assim ele deve ir para o modo monitor independentemente do conteúdo do vetor de reset. O chato mesmo é o sinal de clock externo...


Até mais

Léo
dragaoerrante
Bit
 
Mensagens: 10
Registrado em: 22 Nov 2006 12:48
Localização: Caçapava/Itajubá

Mensagempor amadeu » 30 Nov 2006 10:58

Olá Leo,


Se você puder me passar o esquema eu te agradeço. Realmente existe problemas para gravação do microcontrolador com oscilador interno? Pelo que pude ver sim e eu terei que colocar um oscilador externo. Realmente é uma pena ter que colocar um oscilador externo pois como este microcontrolador tem poucos pinos de I/O eu gostaria de usar o interno para aproveitar melhor os pinos. Ainda mais que na entrada do oscilador está conectado uma entrada analógica.

Valeu!
Amadeu
amadeu
Nibble
 
Mensagens: 65
Registrado em: 26 Nov 2006 14:49

Mensagempor ddkks » 30 Nov 2006 11:45

amadeu escreveu:Sim, eu apaguei o chip e verifiquei se o mesmo está limpo. O PROG08 informa que o mesmo está limpo.


Ao apagar o chip vc também apagou o valor do calibrador (0xFFC0) necessário para conseguir a comunicação utilizando o osc interno.

Outro problema é q normalmente (pelo menos pra mim) o valor q vem de fábrica nesse endereço, coloca o osc muito fora dos 12,8Mhz, não permitindo uma comunicação. Quando está bem calibrado, funciona perfeitamente.

Eu não sei o q vc está tentando fazer, mas esses chips não são bons para gravação no circuito, o ideal é ter um gravador com oscilador externo. Mesmo pq, uma vez gravado, ele não entra mais no modo monitor com osc interno (exceto por uma AN2305).

Observe q o fato de usar um osc externo para gravar, no seu projeto vc poderá usá-lo com osc interno sem problemas.
;)
ddkks
Bit
 
Mensagens: 14
Registrado em: 26 Out 2006 12:50
Localização: Sao Paulo

Mensagempor amadeu » 30 Nov 2006 12:02

Olá,

Ok, irei montar este projeto com oscilador externo. Agradeço a atenção de todos.

Abs,
Amadeu.
amadeu
Nibble
 
Mensagens: 65
Registrado em: 26 Nov 2006 14:49

Próximo

Voltar para NXP (ex-FreeScale (ex-Motorola))

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

x