Paso 1:
- Directamente de Arduino / Atmega 328
- Por cambio de registro de Arduino / Atmega 328
- Directamente de Arduino / Atmega 328 con la manipulación directa del puerto
- Multiplexadas a través del registro de desplazamiento de Arduino / Atmega 328 / botón contador
- Multiplexadas a través del registro de desplazamiento de Arduino / Atmega 328 / contador de potenciómetro
1 - directamente con Arduino / Atmega 328
Cuenta automáticamente del cero al nueve y luego se repite
Código
Gracias a Mike gruñón http://www.thebox.myzen.co.uk/Tutorial/Arrays.html
Asignación de segmento del LED dentro de bytes = {DP ABCDEFG}
pernos de int [] = {2, 3, 4, 5, 6, 7, 8, 9}; PIN 9 asignados a DP pero no utilizado (primer elemento de matriz binaria en char tenCode)
dígitos de int [] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int contador = 0; inicializar contador de cero
int contador = 1000; intervalo de temporizador de retardo
char tenCode [] = {B01111110, B00110000, B01101101, B01111001, B00110011, B01011011, B01011111, B01110000, B01111111, B01111011};
void setup()
{
para (int i = 0; i < 8; i ++) / / sistema digitales pines como salidas
pinMode (pernos [i], salida);
}
void loop()
{
para (int j = 0; j < 10; j ++)
{
displayEleven(digit[j]);
Delay(TIMER);
}
}
void displayEleven(int num)
{
int mask = 1;
para (int i = 0; i < 8; i ++)
{
Si ((máscara & tenCode[num]) == 0)
digitalWrite (pins [i], LOW);
Else digitalWrite (pins [i], HIGH);
máscara = mascarilla << 1;
}
}