<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Comentários em: COMO GERAR NOTAS MUSICAIS EM UM  PIC &#8211; COM PIC 16F628A (REF105)	</title>
	<atom:link href="http://picsource.com.br/archives/4043/feed/" rel="self" type="application/rss+xml" />
	<link>http://picsource.com.br/archives/4043/</link>
	<description></description>
	<lastBuildDate>Mon, 20 Jun 2016 23:39:34 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.5</generator>
	<item>
		<title>
		Por: Claudio Larios		</title>
		<link>http://picsource.com.br/archives/4043/comment-page-1/#comment-3773</link>

		<dc:creator><![CDATA[Claudio Larios]]></dc:creator>
		<pubDate>Tue, 04 Aug 2015 23:41:42 +0000</pubDate>
		<guid isPermaLink="false">http://larios.tecnologia.ws/iBlog/?p=4043#comment-3773</guid>

					<description><![CDATA[Em resposta a &lt;a href=&quot;http://picsource.com.br/archives/4043/comment-page-1/#comment-3772&quot;&gt;Amskiller&lt;/a&gt;.

Olá Amskiller!
Você está no caminho certo. Mas o que você esqueceu foi que a nota tem que ser reproduzida por um tempo (duração da nota). Tente colocar cada nota (tanto o ciclo on como off) dentro de um laço de repetição por uma quantidade de vezes correspondente ao tempo que você quer que ela toque. Talvez um laço &#039;for&#039;:

if(!input(PIN_B7)){
int16 a;
const int16 tempo_la= 400;//apenas exemplo (terá que determinar pois será diferente para cada nota)
const int16 tempo_re= 500;//apenas exemplo (terá que determinar pois será diferente para cada nota)
const int16 tempo_sol= 800;//apenas exemplo (terá que determinar pois será diferente para cada nota)

for(a=0;a&#060;tempo_la;a++){

{output_high(TONE_PIN);
set_timer1(0xffff – (500000/nota_la-10));
t1if=0;
while(!t1if);
output_low(TONE_PIN);
set_timer1(0xffff-(500000/nota_la-10));
t1if=0;
while(!t1if);}
}

delay_ms(20);  //pausa entre notas  (terá que determinar, pois depende da música


for(a=0;a&#060;tempo_re;a++){

{output_high(TONE_PIN);
set_timer1(0xffff – (500000/nota_re-10));
t1if=0;
while(!t1if);
output_low(TONE_PIN);
set_timer1(0xffff-(500000/nota_re-10));
t1if=0;
while(!t1if);}

}

delay_ms(50);  //pausa entre notas  (terá que determinar, pois depende da música


for(a=0;a&#060;tempo_sol;a++){

{output_high(TONE_PIN);
set_timer1(0xffff – (500000/nota_sol-10));
t1if=0;
while(!t1if);
output_low(TONE_PIN);
set_timer1(0xffff-(500000/nota_sol-10));
t1if=0;
while(!t1if);

}



Lembre-se que na música, o compositor determina a nóta (do-re-mi...), a sua duração e o tempo entre notas.

Cláudio]]></description>
			<content:encoded><![CDATA[<p>Em resposta a <a href="http://picsource.com.br/archives/4043/comment-page-1/#comment-3772">Amskiller</a>.</p>
<p>Olá Amskiller!<br />
Você está no caminho certo. Mas o que você esqueceu foi que a nota tem que ser reproduzida por um tempo (duração da nota). Tente colocar cada nota (tanto o ciclo on como off) dentro de um laço de repetição por uma quantidade de vezes correspondente ao tempo que você quer que ela toque. Talvez um laço &#8216;for&#8217;:</p>
<p>if(!input(PIN_B7)){<br />
int16 a;<br />
const int16 tempo_la= 400;//apenas exemplo (terá que determinar pois será diferente para cada nota)<br />
const int16 tempo_re= 500;//apenas exemplo (terá que determinar pois será diferente para cada nota)<br />
const int16 tempo_sol= 800;//apenas exemplo (terá que determinar pois será diferente para cada nota)</p>
<p>for(a=0;a&lt;tempo_la;a++){</p>
<p>{output_high(TONE_PIN);<br />
set_timer1(0xffff – (500000/nota_la-10));<br />
t1if=0;<br />
while(!t1if);<br />
output_low(TONE_PIN);<br />
set_timer1(0xffff-(500000/nota_la-10));<br />
t1if=0;<br />
while(!t1if);}<br />
}</p>
<p>delay_ms(20);  //pausa entre notas  (terá que determinar, pois depende da música</p>
<p>for(a=0;a&lt;tempo_re;a++){</p>
<p>{output_high(TONE_PIN);<br />
set_timer1(0xffff – (500000/nota_re-10));<br />
t1if=0;<br />
while(!t1if);<br />
output_low(TONE_PIN);<br />
set_timer1(0xffff-(500000/nota_re-10));<br />
t1if=0;<br />
while(!t1if);}</p>
<p>}</p>
<p>delay_ms(50);  //pausa entre notas  (terá que determinar, pois depende da música</p>
<p>for(a=0;a&lt;tempo_sol;a++){</p>
<p>{output_high(TONE_PIN);<br />
set_timer1(0xffff – (500000/nota_sol-10));<br />
t1if=0;<br />
while(!t1if);<br />
output_low(TONE_PIN);<br />
set_timer1(0xffff-(500000/nota_sol-10));<br />
t1if=0;<br />
while(!t1if);</p>
<p>}</p>
<p>Lembre-se que na música, o compositor determina a nóta (do-re-mi&#8230;), a sua duração e o tempo entre notas.</p>
<p>Cláudio</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Amskiller		</title>
		<link>http://picsource.com.br/archives/4043/comment-page-1/#comment-3772</link>

		<dc:creator><![CDATA[Amskiller]]></dc:creator>
		<pubDate>Tue, 04 Aug 2015 22:17:30 +0000</pubDate>
		<guid isPermaLink="false">http://larios.tecnologia.ws/iBlog/?p=4043#comment-3772</guid>

					<description><![CDATA[Oi Cláudio, tudo bem?  :razz: 
 Então , o problema que encontrei não foi na montagem, e sim em um caso particular em relação a modificação do projeto. 

  Utilizei um dos pinos (No caso o b7) para ser acionado por um botão, para que quando o mesmo fosse pressionado , uma musiquinha fosse executada. Entretanto, não sei como faço para criar a sequencia de notas. Tentei o seguinte código:


&quot;  if(!input(PIN_B7)){
      
    {output_high(TONE_PIN);
      set_timer1(0xffff - (500000/nota_la-10));
      t1if=0;
      while(!t1if);
     output_low(TONE_PIN);
       set_timer1(0xffff-(500000/nota_la-10));
      t1if=0;
       while(!t1if);}
       
      
      
  {output_high(TONE_PIN);
      set_timer1(0xffff - (500000/nota_re-10));
      t1if=0;
      while(!t1if);
      output_low(TONE_PIN);
       set_timer1(0xffff-(500000/nota_re-10));
      t1if=0;
       while(!t1if);}
     
      
      
     {output_high(TONE_PIN);
      set_timer1(0xffff - (500000/nota_sol-10));
      t1if=0;
      while(!t1if);
      output_low(TONE_PIN);
       set_timer1(0xffff-(500000/nota_sol-10));
      t1if=0;
       while(!t1if);}
      
&quot;  

Este era um teste, apenas notas aleatórias. Tentei adicionar delay_ms(3000); depois do while(!t1if) mas não deu certo...

 Poderia me ajudar? Desde já gradeço!  :smile:]]></description>
			<content:encoded><![CDATA[<p>Oi Cláudio, tudo bem?  😛<br />
 Então , o problema que encontrei não foi na montagem, e sim em um caso particular em relação a modificação do projeto. </p>
<p>  Utilizei um dos pinos (No caso o b7) para ser acionado por um botão, para que quando o mesmo fosse pressionado , uma musiquinha fosse executada. Entretanto, não sei como faço para criar a sequencia de notas. Tentei o seguinte código:</p>
<p>&#8221;  if(!input(PIN_B7)){</p>
<p>    {output_high(TONE_PIN);<br />
      set_timer1(0xffff &#8211; (500000/nota_la-10));<br />
      t1if=0;<br />
      while(!t1if);<br />
     output_low(TONE_PIN);<br />
       set_timer1(0xffff-(500000/nota_la-10));<br />
      t1if=0;<br />
       while(!t1if);}</p>
<p>  {output_high(TONE_PIN);<br />
      set_timer1(0xffff &#8211; (500000/nota_re-10));<br />
      t1if=0;<br />
      while(!t1if);<br />
      output_low(TONE_PIN);<br />
       set_timer1(0xffff-(500000/nota_re-10));<br />
      t1if=0;<br />
       while(!t1if);}</p>
<p>     {output_high(TONE_PIN);<br />
      set_timer1(0xffff &#8211; (500000/nota_sol-10));<br />
      t1if=0;<br />
      while(!t1if);<br />
      output_low(TONE_PIN);<br />
       set_timer1(0xffff-(500000/nota_sol-10));<br />
      t1if=0;<br />
       while(!t1if);}</p>
<p>&#8221;  </p>
<p>Este era um teste, apenas notas aleatórias. Tentei adicionar delay_ms(3000); depois do while(!t1if) mas não deu certo&#8230;</p>
<p> Poderia me ajudar? Desde já gradeço!  🙂</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Claudio Larios		</title>
		<link>http://picsource.com.br/archives/4043/comment-page-1/#comment-3691</link>

		<dc:creator><![CDATA[Claudio Larios]]></dc:creator>
		<pubDate>Fri, 26 Jun 2015 20:08:25 +0000</pubDate>
		<guid isPermaLink="false">http://larios.tecnologia.ws/iBlog/?p=4043#comment-3691</guid>

					<description><![CDATA[Em resposta a &lt;a href=&quot;http://picsource.com.br/archives/4043/comment-page-1/#comment-3690&quot;&gt;cla-yton159&lt;/a&gt;.

Olá Clayton!
Você trabalha em uma área bem interessante! Quanto a gerar notas musicais no pic, para pequenos projetos vai bem, mas para equipamento profissional, não sei se seria o mais recomendado. A frequência de trabalho do pic limita muito sua aplicação. Creio que os integrados dedicados para geração de musica ainda são a melhor opção.  Mas não posso dizer muito por não ter conhecimento profundo de programação voltada a música. Pode até ser que um DsPic consiga gerar esta quantidade enorme de notas musicais. 
Cláudio]]></description>
			<content:encoded><![CDATA[<p>Em resposta a <a href="http://picsource.com.br/archives/4043/comment-page-1/#comment-3690">cla-yton159</a>.</p>
<p>Olá Clayton!<br />
Você trabalha em uma área bem interessante! Quanto a gerar notas musicais no pic, para pequenos projetos vai bem, mas para equipamento profissional, não sei se seria o mais recomendado. A frequência de trabalho do pic limita muito sua aplicação. Creio que os integrados dedicados para geração de musica ainda são a melhor opção.  Mas não posso dizer muito por não ter conhecimento profundo de programação voltada a música. Pode até ser que um DsPic consiga gerar esta quantidade enorme de notas musicais.<br />
Cláudio</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: cla-yton159		</title>
		<link>http://picsource.com.br/archives/4043/comment-page-1/#comment-3690</link>

		<dc:creator><![CDATA[cla-yton159]]></dc:creator>
		<pubDate>Fri, 26 Jun 2015 17:15:19 +0000</pubDate>
		<guid isPermaLink="false">http://larios.tecnologia.ws/iBlog/?p=4043#comment-3690</guid>

					<description><![CDATA[Oi Claudio,gostei desse comentario sobre pic gerar notas musicais,trabalho com manutençao de orgãos eletrônicos desde 1985 e como sou apaixonado por música desde 1981, sempre quis desenvolver meu próprio projeto.
Esses órgãos mais antigos usa c.i.s que gera suas próprias notas musicais.
O qual o teclado superior tem 44 notas,o teclado inferior 44 e a pedaleira 13 notas.
Queria ver com você,se a como programar o pic com essas caracteristicas acima.
Abraços,
Atenciosamente
Clayton Pereira Gregório]]></description>
			<content:encoded><![CDATA[<p>Oi Claudio,gostei desse comentario sobre pic gerar notas musicais,trabalho com manutençao de orgãos eletrônicos desde 1985 e como sou apaixonado por música desde 1981, sempre quis desenvolver meu próprio projeto.<br />
Esses órgãos mais antigos usa c.i.s que gera suas próprias notas musicais.<br />
O qual o teclado superior tem 44 notas,o teclado inferior 44 e a pedaleira 13 notas.<br />
Queria ver com você,se a como programar o pic com essas caracteristicas acima.<br />
Abraços,<br />
Atenciosamente<br />
Clayton Pereira Gregório</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: jose luiz figueredo		</title>
		<link>http://picsource.com.br/archives/4043/comment-page-1/#comment-1732</link>

		<dc:creator><![CDATA[jose luiz figueredo]]></dc:creator>
		<pubDate>Thu, 03 Oct 2013 11:32:42 +0000</pubDate>
		<guid isPermaLink="false">http://larios.tecnologia.ws/iBlog/?p=4043#comment-1732</guid>

					<description><![CDATA[nao sei se teria alguma aplicaçao para meu robÔ!!!!]]></description>
			<content:encoded><![CDATA[<p>nao sei se teria alguma aplicaçao para meu robÔ!!!!</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
