sou iniciante na programação de arruíno e estou fazendo uma contagem regressiva com um display de fragmentos e queria saber se tem alguma função para resumir mais de uma saída em uma só palavra

Ex: saídas digitais 1 e 2 formariam o numero 1, então eu so chamaria na programação o numero 1 e daria um high ele entenderia que tem que ligar as saídas digitais 1 e 2.

caso contrario eu sempre teria que ficar toda vez chamando as 2 saídas e como é uma contagem regressiva ele repete os números, dai ficaria muito extenso.

se alguém puder me ajudar ficaria muito grato

Exibições: 237

Responder esta

Respostas a este tópico

Bom dia LECL,

As suas descrições do projeto e do problema não ficaram muito clara pra mim.

Não sei o que é " display de fragmentos ".

Sugiro que você ANEXE um arquivo com o seu sketch, e post um desenho com o esquema do seu projeto.

RV

Se entendi vc está usando um display de "7 Segmentos" e quer escrever um numero com apenas uma linha de codigo...

Então... Tudo começou quando o Arduino popularizou apenas a escrita de bits nas portas, não sugere que a pessoa escreva diretamente como bytes nas portas, ainda que seja simples, possivel, obvio, tranquilo e melhor...

Se vc montar uma tabela com que pinos precisam ficar 0 e 1 e depois escrever isso na porta toda (8 bits) resolve.

https://www.arduino.cc/en/Reference/PortManipulation

Existem até rotinas que escrevem mas veja só que loop é necessário para fazer bit a bit:

https://www.arduinoecia.com.br/2013/07/display-7-segmentos.html

Ficaria algo como:

const byte nums[10] = { 0b1000000,0b1111001,0b0100100,0b0110000,0b0011001,0b0010010,0b0000010,0b1111000,0b0000000,0b0010000};

Que vc usa assim:

PORTD = nums[7];//Escreve um 7 nas portas D0 a D7, desde que os leds estejam ligados convenientemente.

Essa tabela vc tem que construir conforme sua ligação.

Ref:

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

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço