Página 1 de 1

Ex do livro Tecnologia ARM (Fabio Pereira) e Keil

MensagemEnviado: 02 Abr 2012 21:16
por rocknroll
Boa noite a todos,

Comprei um Ulink2 via ebay e decidi tirar a velha plaquinha da ST da gaveta...

Estou interessado em utilizar os exemplos do livro, que foram também baseados nesta placa para rodar no Keil utilizando o Ulink2.

Tentei compilar o exemplo 5.2 porém o keil apresenta erros nas linhas que contém __no_init

Tentei deletar este inicio da linha em alguns pontos de erro porém nada mudou. Também está apresentando erros simbolizando a falta de ";"

Estou começando agora e o Keil também é novidade para mim.

Alguém sabe me dizer como adaptar os exemplos ao Keil?

Obrigado a todos.

MensagemEnviado: 03 Abr 2012 07:57
por proex
.....Também está apresentando erros simbolizando a falta de ";"

Então coloque ";" nas linhas apontadas.

Vc também pode usar os exemplos que vem com o keil, para o ST.

E ainda, vc pode usar os exemplos que estão no site da ST.

Diferente do NXP, todos os exemplos funcionam.

.

MensagemEnviado: 03 Abr 2012 09:19
por rocknroll
Fala proex,

Nas linhas que ele sinaliza a ausencia de ";" já existem... Cheguei a apagar alguns para teste.

Enquanto não descubro o que acontece, vou fazer o que você falou, usar os exemplos do Keil e ST.

Infelizmente não tenho mais o CD que veio com o kit, mas acredito que a adaptação não seja difícil.

Obrigado,

MensagemEnviado: 03 Abr 2012 09:42
por proex
Os exemplos do keil para o ST estão na pasta Keil>Arm>Boards>ST.

Vc nao precisa do CD.

Sobre o ";" , o keil tem a maldição de mostrar esse erro numa linha que já possui ";" mas na verdade o erro esta na linha acima desta.

veja ai.

.

MensagemEnviado: 03 Abr 2012 16:25
por Fábio Pereira
Na verdade essa questão da sinalização da ausência do ";" é o seguinte: o processador de comandos do compilador espera encontrar um ";" para sinalizar o final da linha de comando. Se ele encontra outro comando ou expressão sem o fechamento do anterior ele sinaliza o erro.

Como C permite comandos em múltiplas linhas normalmente os compiladores marcam o erro na linha em que ele diagnosticou o problema, que é na maioria das vezes a minha seguinte ao erro em questão.

Ajudou ou piorou?

MensagemEnviado: 03 Abr 2012 22:37
por rocknroll
Boa noite Fábio,

Confesso que não sei o porque o keil está sinalizando erro. Sou inicante ainda, mas aparentemente está tudo certo nos arquivos. De qualquer forma abaixo listo o erro e descrevo o que cada linha sinaliza.

Para o teste, simplesmente configurei um novo projeto e selecionei o STR711FR0. Inclui os fontes ex5_2.c e MEU_STR71x.h. Não fiz qualquer alteração nos arquivos.

Fechamento da struct dentro da union uporta

MEU_STR71x.h(86): warning: #40-D: expected an identifier

Definições dos registradores módulo GPIO0
MEU_STR71x.h(90): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(90): error: #65: expected a ";"
MEU_STR71x.h(90): error: #7: unrecognized token
MEU_STR71x.h(91): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(91): error: #65: expected a ";"
MEU_STR71x.h(91): error: #7: unrecognized token
MEU_STR71x.h(92): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(92): error: #65: expected a ";"
MEU_STR71x.h(92): error: #7: unrecognized token
MEU_STR71x.h(93): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(93): error: #65: expected a ";"
MEU_STR71x.h(93): error: #7: unrecognized token

Definições dos registradores do módulo GPIO1
MEU_STR71x.h(97): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(97): error: #65: expected a ";"
MEU_STR71x.h(97): error: #7: unrecognized token
MEU_STR71x.h(98): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(98): error: #65: expected a ";"
MEU_STR71x.h(98): error: #7: unrecognized token
MEU_STR71x.h(99): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(99): error: #65: expected a ";"
MEU_STR71x.h(99): error: #7: unrecognized token
MEU_STR71x.h(100): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(100): error: #65: expected a ";"
MEU_STR71x.h(100): error: #7: unrecognized token


Fechamento da struct dentro da unio urccu_ccr

MEU_STR71x.h(128): warning: #40-D: expected an identifier
MEU_STR71x.h(130): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(130): error: #65: expected a ";"
MEU_STR71x.h(130): error: #7: unrecognized token

Fechamento da struct dentro da union urccu_cfr
MEU_STR71x.h(154): warning: #40-D: expected an identifier
MEU_STR71x.h(156): error: #77-D: this declaration has no storage class or type specifier
MEU_STR71x.h(156): error: #65: expected a ";"
MEU_STR71x.h(156): error: #7: unrecognized token


Os erros ocorrem em um grupo de linhas que vão da 86 a 156. Vocês que são mais experientes talvez vejam a solução logo de cara. rs

Abraço a todos.

MensagemEnviado: 03 Abr 2012 23:36
por Fábio Pereira
Olá Rocknroll,

Infelizmente não utilizo e Keil. Tudo indica que ele não reconhece o modificador __no_init que é utilizado para indicar ao compilador que não é necessário incluir a variável na lista de inicialização de variáveis.

Com relação ao struct, bom, o compilador deveria permitir declarar a estrutura sem necessariamente declarar variáveis com ela.

Creio que realmente seria necessário reescrever o arquivo de forma que seja compatível com o keil.

T+

MensagemEnviado: 04 Abr 2012 00:45
por FabioSom12
Fmz rocknroll,

Estou tentando começar agora e tó apanhando muito.
Não sei se estou falando besteiras, mas....

Quando fez o projeto, você fez o arquivo de inicialização?

Adicionou o arquivo de inicialização do processador?
Escolha o modelo do arm aqui:
Keil\ARM\Startup\ST



Caraca mano, você podia começar com um hello word.
:)

MensagemEnviado: 04 Abr 2012 08:24
por fabim
o pedra rolando, me envia este exemplo para eu possa dar uma olhada e mostrar os erros.
fableach@hotmail.com

MensagemEnviado: 04 Abr 2012 09:37
por rocknroll
Valeu Fabio Pereira, vou dar uma olhada em outros exemplos (Keil) para ver como são declaradas tais variáveis ou structs para tentar reescrever o arquivo.

FabioSom12, cara to apanhando para fazer um LED piscar... ahahah que é quase um Hello Word.... rs Na verdade apanhando entre aspas. Tentei executar de cara os exemplos do livro, mas como foram desenvolvidos para GNU / IAR, estou tomando murro aqui. Mas já estou dando uma olhada nos exemplos do Keil e pelo menos para piscar os leds não é um bicho de 7 cabeças, basta ter tempo para voltar a brincar, coisa que tá F***.

fabim, estou te mandando os arquivos que usei. Todos foram retirados do livro (download no site da Ed Erica).

Eu sei que estes exemplos funcionam, pois na época que peguei esta placa, na única vez que consegui usar aquele gravador Wiggler na porta paralela, o exemplo rodou belezinha. (Eclipse). Depois disso a placa foi para gaveta, pois aquele gravador tinha vontade própria e decidi mostrar para ele quem manda... No final ele que mandava, mas mentindo para mim, consegui dormir a noite... rs (ego falso)

Abraço

MensagemEnviado: 05 Abr 2012 07:33
por Iran
rocknroll

Tens um link do Ulink2 que compraste ?

Eu sempre desejei usar aquela plaquinha da ST porém com o falecimento da porta paralela fiquei no mato sem cachorro.

Quando conseguir fazer funcionar mostra alguma coisa aí pragente.

abs.

MensagemEnviado: 05 Abr 2012 09:51
por rocknroll
Iran,

Segue o link:

http://www.ebay.com/itm/370565048821?ss ... 1497.l2649

Não sei se paguei caro ou barato, porém na época que pesquisei um Jlink da Segger estava na faixa de R$100,00 no Brasil (ML). Como pretendia usar o Keil, achei mais interessante o Ulink. Tinha um detalhe também que o Fabim comentou que os Jlinks (originais ou clones) tinham um bug de perder o firmware de vez enquando.

Não dá para querer aprender algo sem confiar na ferramenta que está usando.

Até agora tem funcionado bem, fiz um pisca led, li botões, etc.. Coisas simples e gravou sem problemas. Não cheguei a fazer depuração.

Abraço

MensagemEnviado: 05 Abr 2012 13:25
por rocknroll
Iran,

Aproveitando a oportunidade... Não tenho mais o CD da ST que veio com o Kit e estou precisando do esquema elétrico.

Vc poderia enviá-lo por email?

Valeu cara

MensagemEnviado: 05 Abr 2012 20:21
por Iran
Vou ver se acho por aqui e se ele ainda está legível e te mando.

Mandei pro teu email.