Wiki ADA

Projetos em Engenharia de Computação

Ferramentas do usuário

Ferramentas do site


programacao-arduino:pwm

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Próxima revisão
Revisão anterior
programacao-arduino:pwm [2018/12/20 17:35]
patrickof criada
programacao-arduino:pwm [2020/11/26 09:08] (atual)
bandeira
Linha 1: Linha 1:
 =======PWM========= =======PWM=========
  
-PWM, do inglês //Pulse Width Modulation//,​ é um método para simular sinais analógicos utilizando sinais digitais. Essa técnica consiste na emissão de uma onda com frequência constante mas com períodos de nível lógico alto variado. Esse período é chamado de //duty cycle//. Abaixo se encontram exemplos de //duty cycle//+PWM, do inglês //Pulse Width Modulation//,​ é um método para simular sinais analógicos utilizando sinais digitais. Essa técnica consiste na emissão de uma onda com frequência constante mas com períodos de nível lógico alto variado. Esse período é chamado de //duty cycle//. Abaixo se uma ilustração da "​onda"​ gerada:
 \\ \\
 \\ \\
Linha 7: Linha 7:
  
 \\ \\
-Essa função funciona em algumas portas do Arduino ​podem variar de acordo com a versão do Arduino e são sinalizadas,​ na maioria, com o símbolo “~” . No caso do Uno, as únicas portam quem comportam essa função são: 3, 5, 6, 9, 10 e 11.+Essa função funciona em algumas portas do Arduinopodem variar de acordo com a versão do Arduino e são sinalizadas,​ na maioria, com o símbolo “~” . No caso do Uno, as únicas portam quem comportam essa função são: 3, 5, 6, 9, 10 e 11.
 \\ \\
 \\ \\
-{{ wiki:arduino_uno.jpg }}+{{ :programacao-arduino:​arduino.png?400 |}}
 \\ \\
 Para gerar esse tipo de onda, utilizamos a função //​**analogWrite(pino,​ valor)**//, onde //​**pino**//​ é o pino configurado como saída e //​**valor**//​ é o //duty cycle//, podendo variar entre 0 (//0 % duty cycle//) e 255 (//100% duty cycle//​). ​ Para gerar esse tipo de onda, utilizamos a função //​**analogWrite(pino,​ valor)**//, onde //​**pino**//​ é o pino configurado como saída e //​**valor**//​ é o //duty cycle//, podendo variar entre 0 (//0 % duty cycle//) e 255 (//100% duty cycle//​). ​
Linha 25: Linha 25:
  
 void loop() { void loop() {
- // Varia o duty cycle de 0 à 255 na porta 3 gerando ​um tensões variadas+ // Varia o duty cycle de 0 à 255 na porta 3 gerando tensões variadas
   for(int duty =0; duty<​256;​ duty++)   for(int duty =0; duty<​256;​ duty++)
     analogWrite(3,​duty);​     analogWrite(3,​duty);​
programacao-arduino/pwm.1545334556.txt.gz · Última modificação: 2018/12/20 17:35 por patrickof