como usar printf no C30

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

como usar printf no C30

Mensagempor pardal » 27 Jan 2013 19:36

Olá pessoal, estou tentando escrever na serial de um PIC24FJ128GA010 com um compilador C30 da MC configurei a velocidade mas quando uso o comando:

printf("%#x\n", 28); (por exemplo)

recebo a seguinte mensagem de erro:

c:\arquivos de programas\microchip\mplab c30\bin\bin\pic30-coff-ld.exe Error: A heap is required, but has not been specified


Usei muito pouco o C e era CCS para PIC16, lá consegui usar o PRINTF sem muita dificuldade mas no C30 estou apanhando feio.

O que eu realmente preciso é imprimir um dado valor em binário, mas nem uma variável ou constante simples estou conseguindo.
pardal
Bit
 
Mensagens: 26
Registrado em: 20 Out 2006 21:59

Re: como usar printf no C30

Mensagempor andre_luis » 27 Jan 2013 20:58

Se você tiver criado um projeto do início ( e não aproveitado algum PRJ/MCW exemplo ), terá de especificar uma quantidade de RAM no compilador.

Vá no project properties dentro do menu File, clica em pic30-ld, e vá testando quantidades mínimas para serem alocadas para o heap por tentativa e erro.


+++
"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 pardal » 27 Jan 2013 21:35

Olá Andre, grato pelo retorno, mas não achei a sequência de comandos, não sei se o C30 tem alguma interface própria mas estou usando o MPLAB 8.85 e o C30 3.11.
pardal
Bit
 
Mensagens: 26
Registrado em: 20 Out 2006 21:59

Mensagempor andre_luis » 27 Jan 2013 22:19

pardal escreveu:Olá Andre, grato pelo retorno, mas não achei a sequência de comandos, não sei se o C30 tem alguma interface própria mas estou usando o MPLAB 8.85 e o C30 3.11.


Dá uma olhada nesse exemplo :

http://cfile5.uf.tistory.com/image/1278 ... 4361148D4F

Imagem

+++
"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 pardal » 27 Jan 2013 23:07

Beleza, o erro de pilha sumiu, só que não está saindo para a serial, no CCS a UART é a saída padrão do comando, no C30 tenho que indicar qual é a saída padrão?

Qual a diferença entre FPRINTF e PRINTF?

Vou dar mais uma estuda na documentação que baixei do C30 para ver se consigo entender melhor da coisa, meu SW está uma mistura de exemplos que peguei da mosaico pois estou usando o EXPLORER16_BR, mas acho que já consigo fazer um SW do zero, configurar UART, e fazer as rotinas para escrever na serial, no entanto não vou deixar de aceitar qualquer dica.

O que me deixa um pouco perdido no C30 é que no CCS tem vários comandos não ANSI para facilitar a vida tipo:

setup_uart( );

entre outros, o que me parece é que no C30 tem que ser na unha, não sei se não soube procurar mas não encontrei uma documentação clara com o que não é ANSI no C30, ou seja, os comandos para testar pinos, ligar e desligar os mesmos, ajustar os bits de configuração do PIC, os registradores de configuração parece que já estou me entendendo, pelo que entendi o C30 reconhece os nomes dos registradores que constam no DS do mesmo, aí é só fazer a lição de casa, ler o DS e se preparar, mas falta muito para quem está aprendendo por conta.

De qualquer forma grato por hora e como disse qualquer ajuda será sempre bem vinda.
pardal
Bit
 
Mensagens: 26
Registrado em: 20 Out 2006 21:59


Voltar para PIC

Quem está online

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

x