Hej, jag skulle behöva lite hjälp med att programmera en elektronisk tärning med 7 ledlampor och 2 knappar, en knapp är en testknapp för lamporna som ska göra att alla lampor lyser tills den andra knappen är tryckt, den andra knappen ska slumpa lamporna till att visa 1-6 tills den andra knappen är tryckt.
Informationen om brädan är följande:
Övningsplatformen är en arduino uno bräda med ett enkelt interface. Interfacet har 7 led lampor och 7 knappar som är kopplade till Arduino input och output pins. Brädan kör ATmega328P processor på 16MHz.
Knapparna är kopplade till portarna B och C på processorn.
4 knappar är kopplade till bit 0-3, PINB och 3 knappar är kopplade till bit 0-2, PINC.
Ledlamporna är kopplade till PORTD och är placerade så här:
(B1=Bit 1)
B7 xx B1
B6 B4 B2
B5 xx B3
exempel: B4 set och de andra bitsen 0 ska ge "1" på tärningen
Jag har lyckats komma fram till vilka bits på PORT D som måste vara "set" för att få ut de olika tärningsutslagen men vet inte hur jag ska göra för att slumpa emellan dem. Jag har även gjort så att PINB bit 3 (utav 0-7) är en knapp och PINC bit 2 (utav 0-7).
Det fanns ett tips: "Ett slumpmässigt nummer kan genereras genom att köra en räknare på hög frekvens (1MHz eller högre) och sluta räkna när användaren släpper knappen." Jag vet dock inte hur man kör en räknare på hög frekvens.
Är tacksam för alla tips och all hjälp som kan fås.
Informationen om brädan är följande:
Övningsplatformen är en arduino uno bräda med ett enkelt interface. Interfacet har 7 led lampor och 7 knappar som är kopplade till Arduino input och output pins. Brädan kör ATmega328P processor på 16MHz.
Knapparna är kopplade till portarna B och C på processorn.
4 knappar är kopplade till bit 0-3, PINB och 3 knappar är kopplade till bit 0-2, PINC.
Ledlamporna är kopplade till PORTD och är placerade så här:
(B1=Bit 1)
B7 xx B1
B6 B4 B2
B5 xx B3
exempel: B4 set och de andra bitsen 0 ska ge "1" på tärningen
Jag har lyckats komma fram till vilka bits på PORT D som måste vara "set" för att få ut de olika tärningsutslagen men vet inte hur jag ska göra för att slumpa emellan dem. Jag har även gjort så att PINB bit 3 (utav 0-7) är en knapp och PINC bit 2 (utav 0-7).
Det fanns ett tips: "Ett slumpmässigt nummer kan genereras genom att köra en räknare på hög frekvens (1MHz eller högre) och sluta räkna när användaren släpper knappen." Jag vet dock inte hur man kör en räknare på hög frekvens.
Är tacksam för alla tips och all hjälp som kan fås.