Etape 7: Maintenant, un programme pour générer des nombres aléatoires de 0 à 9
Remarque : Si vous projetez d’arrêts de travail, vous pouvez appuyer sur le bouton du commutateur de votre arduino pour initialiser de nouveaux
int segmentPins [] = {2, 3, 4, 5, 6, 7, 8, 9} ;
int displayPins [] = {10} ;
int buttonPin = 11 ;
chiffres de l’octet [10] [8] = {}
un b c d e f g.
{1, 1, 1, 1, 1, 1, 0, 0}, / / 0
{0, 1, 1, 0, 0, 0, 0, 0}, / / 1
{1, 1, 0, 1, 1, 0, 1, 0}, / / 2
{1, 1, 1, 1, 0, 0, 1, 0}, / / 3
{0, 1, 1, 0, 0, 1, 1, 0}, / / 4
{1, 0, 1, 1, 0, 1, 1, 0}, / / 5
{1, 0, 1, 1, 1, 1, 1, 0}, / / 6
{1, 1, 1, 0, 0, 0, 0, 0}, / / 7
{1, 1, 1, 1, 1, 1, 1, 0}, / / 8
{1, 1, 1, 1, 0, 1, 1, 0} / / 9
};
void setup()
{
pour (int i = 0; i < 11; i ++)
{
pinMode (segmentPins [i], sortie) ;
}
pinMode (displayPins [0], sortie) ;
pinMode (displayPins [0], sortie) ;
pinMode (buttonPin, entrée) ;
}
void loop()
{
public static int count ;
Si (digitalRead(buttonPin))
{
Count = random(0,10) ;
}
updateDisplay(count) ;
}
Sub updateDisplay(int value1)
{
digitalWrite (displayPins [0], HIGH) ;
digitalWrite (displayPins [1], faible) ;
setSegments(value1) ;
Delay(5) ;
digitalWrite (displayPins [0], faible) ;
digitalWrite (displayPins [1], HIGH) ;
Delay(5) ;
}
Sub setSegments(int n)
{
pour (int i = 0; i < 11; i ++)
{
digitalWrite (segmentPins [i],! digits[n][i]) ;
}
}