Moderna Dice (7 / 7 steg)
Steg 7: Låt oss ta en titt på koden
Jag skrev programmet med OshonSoft PIC Simulator IDE grundläggande.Här är koden:
INTCON = % 10001000 ' se för port förändring avbrott
OPTION_REG = % 11000111 ' aktiverar timer0 med 1:256 prescalar
GPIO = 0 "stänga av alla lysdioder
TRISIO = % 101000 "GP3 och GP5 är ingång andra är utdata
IOK = % 100000 "titta på GP5 förändring
Dim nummer som Byte
Dim ledoff som Word
Dim gpioval som Byte
Avsluta "gå till lågenergiläge
På avbrott
Spara systemet
Om INTCON. GPIF = %1 då "om knapp trycks
Om GP5 = %0 Sedan
GPIO = 0
antal = TMR0 Mod 6 + 1 ' göra ett slumptal enligt timer0
Om tal = 1 då gpioval = % 000001
Om tal = 2 sedan gpioval = % 010000
Om tal = 3 då gpioval = % 010001
Om tal = 4 sedan gpioval = % 010100
Om tal = 5 sedan gpioval = % 010101
Om tal = 6 sedan gpioval = % 010110
ledoff = 0 ' Stäng av alla lysdioder för ett ögonblick
INTCON. T0IE = %1
Endif
INTCON. GPIF = %0
Endif
Om INTCON. T0IF = %1 då ' timer0 avbrott
ledoff = ledoff + 1
Om ledoff = 1000 då "stänga av alla lysdioder efter ungefär en minut
GPIO = 0
ledoff = 0
INTCON. T0IE = %0
Endif
Om ledoff = 15 sedan GPIO = gpioval ' Visa numret
INTCON. T0IF = %0
Endif
Resume