Sunteți pe pagina 1din 2

Pesquise neste blog :

20 fevereiro 2014
Pesquisar
NewTone - Alternativa à biblioteca tone do Arduino Custom Search

Um leitor do site me escreveu , dizendo que ao tentar utilizar a biblioteca IRremote junto com o comando Tone
do Arduino, o programa não compilava, apresentando a seguinte mensagem :

.....\arduino\cores\arduino/Tone.cpp:535: multiple definition of `__vector_7'

Já havia acontecido comigo em algumas oportunidades, especialmente ao tentar utilizar o comando Tone junto
Assine nossa newsletter:
com a biblioteca NewPing, usada para controlar múltiplos sensores ultrasônicos HC-SR04 (usei a NewPing
no post Controle de estacionamento com o sensor HC-SR04).
Seu email...
A biblioteca tone do Arduino realmente apresenta alguns problemas de compatibilidade com outras biblioteca
quando estas utilizam a mesma interrupção/timer. Quero assinar!

Felizmente encontrei uma biblioteca bem simples, a NewTone, que pelo menos nos meus testes, não
apresentou nenhum conflito. Inclusive utilizei os programas que eu já havia criado no post Sons no Arduino
para me certificar que não seriam necessárias grandes alterações no código.

E realmente a utilização é simples. As únicas alterações no programa são o carregamento da biblioteca


NewTone no início, e a substituição dos comandos Tone por NewTone, e noTone por noNewTone. E só.

1 // Programa : Som no Arduino - Sirene - Teste biblioteca NewTone


2 // Autor : Arduino e Cia
3
4 #include <NewTone.h>
5
6 #define tempo 10
7 int frequencia = 0;
8 int Pinofalante = 10;
9
10 void setup()
11 {
12 pinMode(Pinofalante,OUTPUT); //Pino do buzzer
13 }
14
15 void loop() Marcadores
16 {
17 for (frequencia = 150; frequencia < 1800; frequencia += 1) arduino bluetooth componentes display
18 { esp8266 gsm HC-SR04 IR LCD livros modulos
19 NewTone(Pinofalante, frequencia, tempo); motores raspberry pi sensores shield
20 delay(1); temperatura videos wireless
21 }
22 for (frequencia = 1800; frequencia > 150; frequencia -= 1)
23 { Arquivo do blog
24 NewTone(Pinofalante, frequencia, tempo); ► 2018 (22)
25 delay(1);
26 } ► 2017 (24)
27 } ► 2016 (28)
► 2015 (35)
Ao montar o circuito, ligue o buzzer na porta 10 do Arduino, e não se esqueça de ligar em série um resistor de
▼ 2014 (55)
pelo menos 100 ohms :
► Dezembro 2014 (2)
► Novembro 2014 (5)
► Outubro 2014 (6)
Se você está enfrentando problemas de conflito com a biblioteca tone padrão do Arduino, esta pode ser a ► Setembro 2014 (5)
solução.
► Agosto 2014 (6)
► Julho 2014 (7)
► Junho 2014 (4)
► Maio 2014 (4)
► Abril 2014 (4)
► Março 2014 (3)
▼ Fevereiro 2014 (3)
NewTone - Alternativa à biblioteca tone
do Arduino...
Video - Sensor de reconhecimento de
cor TCS230 / T...
Sensor de reconhecimento de cor
TCS230 / TCS3200

► Janeiro 2014 (6)


► 2013 (66)

Postagens populares

Como utilizar o módulo I2C


com display LCD

Controle remoto IR no
Arduino

Acionando portas do
Arduino usando Android e
bluetooth

Controlando um servo motor


com Arduino

Postado por Arduino e Cia às 16:36

Marcadores: arduino, buzzer, som Ligando uma lâmpada com


módulo relé

13 comentários:
Márcio Lúcio Dias Pereira 10 de outubro de 2014 12:16

Obrigado, me ajudou bastante. Fale com o administrador do site


Politica de Privacidade
Responder

Respostas

Arduino e Cia 10 de outubro de 2014 22:12


O conteúdo do blog Arduino e Cia, está
Boa noite Márcio ! licenciado com uma Licença Creative
Commons - Atribuição-CompartilhaIgual 4.0
Valeu, bom poder ajudar. Internacional.

Abraço !

ogen4p 16 de outubro de 2017 21:15

Muito obrigado e muita sorte em outros projetos, continue ajudando.

Responder

Carlos Eduardo 23 de janeiro de 2015 21:39

a pasta do newtone é pra extrair para onde?


Responder

Respostas

Arduino e Cia 24 de janeiro de 2015 12:54

Boa tarde Carlos,

Coloque a pasta newtone dentro da pasta LIBRARIES da IDE do Arduino.

Abraço !

Responder

Cleiton Malvessi 23 de dezembro de 2015 14:25


É possível gerar dois tons com frequências diferentes? Tipo um tom no pino 9 e outro no pino 3? Já que os
relógio são diferentes para esses pinos. Não precisas necessariamente usar a biblioteca, eu preciso que meu
Arduino uno gere duas frequência distintas no mesmo intervalo de tempo.

Responder

Respostas

Arduino e Cia 28 de dezembro de 2015 19:44

Boa noite Cleiton,

É possível sim. Eu encontrei um fórum de discussão com vários exemplos para isso:

http://forum.arduino.cc/index.php?topic=69079.0

Abraço!

S-ar putea să vă placă și