Ir ao conteúdo
  • Cadastre-se

O que há de errado? (arduíno)


Ir à solução Resolvido por aphawk,

Posts recomendados

beleza, pessoal, 

estou fazendo um teste aqui com um arduíno mega e ao compilar o código dá o erro:(não sei bem se é um erro, me parece um aviso) 

 

O sketch usa 6.036 bytes (2%) de espaço de armazenamento para programas. O máximo são 253.952 bytes.
Variáveis globais usam 578 bytes (7%) de memória dinâmica, deixando 7.614 bytes para variáveis locais. O máximo são 8.192 bytes.
Biblioteca inválida encontrada em C:\Program Files\Arduino\libraries\PT2322: C:\Program Files\Arduino\libraries\PT2322
Biblioteca inválida encontrada em C:\Program Files\Arduino\libraries\PT2322: C:\Program Files\Arduino\libraries\PT2322
 

A biblioteca reclamada é esta:

 

/* Arduino PT2322 Library
 * Copyright (C) 2009 by oddWires
 *
 * This file is part of the Arduino PT2322 Library
 *
 * This Library is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This Library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * <http://www.gnu.org/licenses/>.
 */ 

#define  FL_VOLUME_CONTROL      0x10 
#define  FR_VOLUME_CONTROL      0x20 
#define  CENTER_VOLUME_CONTROL  0x30 
#define  RL_VOLUME_CONTROL      0x40 
#define  RR_VOLUME_CONTROL      0x50 
#define  SUB_VOLUME_CONTROL     0x60 
#define  FUNCTION_SELECT        0x70 
#define  BASS_TONE_CONTROL      0x90 
#define  MIDDLE_TONE_CONTROL    0xa0 
#define  TREBLE_TONE_CONTROL    0xb0 
#define  INPUT_SW_ACTIVE        0xc7 
#define  MASTER_VOLUME_1STEP    0xd0 
#define  MASTER_VOLUME_10STEP   0xe0 
#define  SYSTEM_RESET           0xff 

#define  MUTE_ON                0x08
#define  _3D_OFF                0x04
#define  TONE_DEFEAT            0x02


#ifndef PT2322_h
#define PT2322_h

class PT2322 {
    
private:
    unsigned char function;           
    unsigned char toneLookup(int);
    
    unsigned char HEX2BCD (unsigned char x);
    int writeI2CChar(unsigned char c);
    
    
public:
    int init(void); 
    void muteOn(void); 
    void muteOff(void); 
    void _3DOn(void); 
    void _3DOff(void); 
    void toneOn(void); 
    void toneOff(void); 
    void leftVolume(unsigned char flv); 
    void rightVolume(unsigned char frv); 
    void centerVolume(unsigned char cv); 
    void rearLeftVolume(unsigned char rlv); 
    void rearRightVolume(unsigned char rrv); 
    void subwooferVolume(unsigned char sv); 
    void masterVolume(unsigned char mv); 
    void bass(unsigned char tb); 
    void middle(unsigned char tm); 
    void treble(unsigned char tt);
};

#endif

O que será que pode ter de errado?

 

Desde já agradeço.

 

 

 

 

Link para o comentário
Compartilhar em outros sites

12 horas atrás, ljMonteiro disse:

Você adicionou o arquivo de extensão "h" referente à biblioteca no diretório ".../Arduino/libraries/" do programa Arduino?

 

Sim, adicionei.

 

arduino.png

@aphawk

Então, esta biblioteca não é minha, eu peguei ela na net pra testar um processador de audio, aliás, foi a única opção que encontrei para este ci de audio: pt2322. 

 

Não teria uma forma de atualizar esta lib? Como ela é bem simples, talvês quem entenda bem desses códigos do arduino possa me ajudar a atualizá-la.

Link para o comentário
Compartilhar em outros sites

@ViniciusKruz ,

 

Não é tão simples assim. Poucos possuem o conhecimento para fazer libraries. E esse CI não é tãoooo simples assim.

 

Se você quiser, você pode, a partir do .PDF, enviar os comandos manualmente via I2C para fazer o controle. Eu já fiz isso uma vez com um TDA que fazia todo o controle de entrada, volume, tonalidade, loudness, etc.

 

Veja aqui :

 

http://labkit.ru/userfiles/file/documentation/Audioprocessor/pt2322.pdf

 

Eu, no seu lugar, baixaria alguma IDE do Arduíno mais antiga, tipo alguma de 2009 mesmo, e instalava no micro, só para não ter esse trabalhão todo ....

 

Paulo

Link para o comentário
Compartilhar em outros sites

@aphawk

No PIC eu estou fazendo da forma sugerida por você, por não encontrar nada "pronto" ou que pelo menos dê um pontapé inicial, aliás, já fiz isto antes com um outro ci de áudio, um tda, e deu certo, mas como encontrei esta para o arduíno pensei que fosse me dar menos trabalho. 

@ljMonteiro

Na verdade eu coloquei os arquivos na pasta libraries da mesma forma que já são dispostas as do sistema mas não deu certo, daí eu usei aquela opção de inserir libraries .zip e ele mesmo colocou as pastas nos locais corretos, porém ele não colocou os arquivos .h e o que eu fiz foi colocar eles manualmente só que o sistema não reconheceu eles aliás, passou a reconhecer quando eu mudei no código de #include<>  para #include" "

e desta forma passou a reconhecer, porém dá a mensagem de lib inválida. Ao invés de postar os códigos, vou postar a lib.zip tal qual foi baixada.

PT2322.zip

Link para o comentário
Compartilhar em outros sites

Estou fazendo uns testes neste ci  pt2322 também com um 18f4550 e não consigo comunicação de jeito nenhum, eu fiz na unha o driver mas não sei onde estou errando. Fiz uma simulação no osciloscópio do proteus para analisar o protocolo, aparentemente está certo, por favor, se puderem confiram minhas comparações entre os dados do osciloscópio e o datasheet na imagem em anexo. 

 

pt2322.png

Link para o comentário
Compartilhar em outros sites

@ljMonteiro

Eu pensei que fosse ser mais fácil com o arduino por ter encontrado a lib correspondente mas já vi que me enganei. Meu foco na verdade é o CI PT2322, a programação em si neste momento não importa muito. O arduino parece ser fácil por conter quase tudo relativamente pronto porém eu percebi que se precisar alterar alguma coisa dá muito trabalho e como foi dito pelo amigo Paulo @aphawk: " Poucos possuem o conhecimento para fazer libraries" e isto pra mim é o calcanhar de Aquiles do arduíno. Faz o seguinte, vou abrir um novo tópico exclusivamente para análise dos gráficos gerados pelo 18f4550 pra não confundir as coisas, para fins de organização no forum. No 18f4550 estou fazendo na unha a comunicação, cada pulso de clock do scl e também do sda, creio que será mais produtivo. Agradeço a todos pelas dicas e peço encarecidamente que me assistam com seus comentários no outro tópico que vou abrir.

 

Deus os abençoe.

Link para o comentário
Compartilhar em outros sites

Lembre-se que uma "librarie" é apenas um conjunto de funções e/ou classes. É apenas uma maneira que organizar um projeto grande, em vários arquivos menores.
No caso do arduino, as funções contidas nas bibliotecas criam uma interface entre o código de nível mais alto e o componente. Observe que o que ocorre com a TP2322.h é que ela não vem com algumas bibliotecas das quais ela mesmo necessita. Neste caso você teria que incluí-las manualmente também.

 

Apenas lembrando, as bibliotecas não são caixas-pretas. Você pode abri-las, lê-las, modificá-las e até criar sua própria interface com base no código fonte presente nelas. Não há sentido em fazer algo que já está pronto e em suas mãos.

Além disso, nunca se esqueça que algoritmos e procolos de comunicação independem de linguagem.

Link para o comentário
Compartilhar em outros sites

  • Solução

@ViniciusKruz ,

 

Você pode pegar uma biblioteca que já faça a comunicação I2C de maneira genérica, acho que é bem mais fácil do que você ficar tentando simular todo o protocolo I2C com Ack / Nak .... Depois é só enviar a sequencia correta de valores !

 

Paulo

 

 

Link para o comentário
Compartilhar em outros sites

  • Coordenador
4 horas atrás, ViniciusKruz disse:

Não consegui marcar o tópico como resolvido. Muita coisa mudou por aqui rsrs.

Não mudou muita coisa não @ViniciusKruz, agora você tem a opção de marcar a resposta que melhor te ajudou clicando na tarja à esquerda da caixa de resposta, com isso o fórum coloca o tópico como resolvido....

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!