Mudanças entre as edições de "MCO018703 2018 2 AULA08"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 2: Linha 2:
  
 
Na aula anterior falamos que os Pinos Digitais são usados para detecção ou transmissão de controles digitais, normalmente associados aos sinais HIGH ou LOW (0 ou 1). Mas alguns pinos podem também gerar um sinal analógico com a função '''analogWrite()''' utilizando a técnica de modulação por largura de pulso (PWM).  
 
Na aula anterior falamos que os Pinos Digitais são usados para detecção ou transmissão de controles digitais, normalmente associados aos sinais HIGH ou LOW (0 ou 1). Mas alguns pinos podem também gerar um sinal analógico com a função '''analogWrite()''' utilizando a técnica de modulação por largura de pulso (PWM).  
 +
 +
;Mas o que é PWM?
 +
 +
PWM, do inglês Pulse Width Modulation, é uma técnica utilizada por sistemas digitais para variação do valor médio de uma forma de onda periódica. A técnica consiste em manter a frequência de uma onda quadrada fixa e variar o tempo que o sinal fica em nível lógico alto. Esse tempo é chamado de ''duty cycle'', ou seja, o ciclo ativo da forma de onda. A figura abaixo mostra o gráfico e são exibidas algumas modulações PWM.
 +
 +
  
  

Edição das 13h51min de 25 de setembro de 2018

PWM no Arduino

Na aula anterior falamos que os Pinos Digitais são usados para detecção ou transmissão de controles digitais, normalmente associados aos sinais HIGH ou LOW (0 ou 1). Mas alguns pinos podem também gerar um sinal analógico com a função analogWrite() utilizando a técnica de modulação por largura de pulso (PWM).

Mas o que é PWM?

PWM, do inglês Pulse Width Modulation, é uma técnica utilizada por sistemas digitais para variação do valor médio de uma forma de onda periódica. A técnica consiste em manter a frequência de uma onda quadrada fixa e variar o tempo que o sinal fica em nível lógico alto. Esse tempo é chamado de duty cycle, ou seja, o ciclo ativo da forma de onda. A figura abaixo mostra o gráfico e são exibidas algumas modulações PWM.



/* Esse programa escrito em C do Arduino aumenta e diminui gradativamente o brilho de um LED 
conectado no pino PWM 10 do Arduino. */
int i=0;  // declaração da variável global inteira i iniciada com 0
void ledOn( );  // declaração da função criada ledOn do tipo void
void setup( )  
{
   pinMode(10,OUTPUT); // aqui 2 parâmetros são passados à função pinMode( )
}
void loop( ) 
{
   for (i=0; i <= 255; i++) ledOn( ); // aumenta o brilho do led
   for (i=255; i >= 0; i--) ledOn( ); // diminui o brilho do led
}
void ledOn( ) // função que acende o led
{  
   analogWrite (10, i); // o nº do pino e o valor de i são passados à função analogWrite( )
   delay (10);      
}

Referências

[1] https://www.embarcados.com.br/pwm-do-arduino/


Icone voltar.png Icone menu.png Icone prox.png