Controle Paneel |
|
|
Site info |
»
»
»
»
» Upload Archief
|
|
Stats |
Totaal online: 2 2 gasten 0 leden: |
|
|
Forum > Show Your Projects > Dobbelsteen |
|
Gepost op woensdag 25 Maart 2009 20:50:17 |
 |
Hier is de Dobbelsteen 
Kijk maar zelf dan wordt het wel duidelijk 
Gemaakt met een PIC 16F628A

Schakel schema

Print ontwerp
De code! 
Code |
'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : Brad productions (c) *
'* Notice : Copyright (c) 2009 [select VIEW...EDITOR OPTIONS] *
'* : All Rights Reserved *
'* Date : 1-2-2009 *
'* Version : 1.0 *
'* Notes : Programma voor dubelle dobbelsteen *
'* : *
'****************************************************************
DEVICE 16F628A ;De PIC 16f628A
CONFIG INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF
ALL_DIGITAL TRUE ;Alle ingangen zijn diigitaal
;Alle 7 LEDS voor dobbelsteen
SYMBOL LED1 = PORTB.3 ;Poort B.3 heeft de naam LED1 dobbelstenen
SYMBOL LED2 = PORTB.2 ;Poort B.2 heeft de naam LED2 dobbelstenen
SYMBOL LED3 = PORTB.1 ;Poort B.1 heeft de naam LED3 dobbelstenen
SYMBOL LED4 = PORTB.4 ;Poort B.4 heeft de naam LED4 dobbelstenen
SYMBOL LED5 = PORTB.7 ;Poort B.7 heeft de naam LED5 dobbelstenen
SYMBOL LED6 = PORTB.6 ;Poort B.6 heeft de naam LED6 dobbelstenen
SYMBOL LED7 = PORTB.5 ;Poort B.5 heeft de naam LED7 dobbelstenen
;De 2 transistors
SYMBOL TRAN1 = PORTA.0 ;Poort A.0 heeft de naam TRAN1 dobbelsteen 1
SYMBOL TRAN2 = PORTA.1 ;Poort A.1 heeft de naam TRAN2 dobbelsteen 2
;De drukknop voor het gooien van de dobbelsteen
SYMBOL S1 = PORTB.0 ;Poort B.0 heeft de naam S1 aan knop
;De schakelaar voor 1 of 2 dobbelstenen
SYMBOL S2 = PORTA.2 ;Poort A.2 heeft de naam S2 keuze knop 1of2 dobbels
;Variabelen declareren
DIM Dobbelsteen AS BYTE ;Deze variabele bevat de dobbelsteen waarde (1 t/m 6)
DIM dobbel2 AS BYTE
DIM teller AS DWORD
TRISB = %00000001 ;Alle PORTB poorten zijn uitgangen, behalve PORTB.0
TRISA = %00000100
WHILE teller < 100
TRAN1 = 1
SELECT Dobbelsteen ;76543210 komt er een willekeuriggetal als dobebelsteen patroon
CASE 0: PORTB = %00000000
CASE 1: PORTB = %00010000 ;Als 'Dobbelsteen' een 1 is, dan alleen PORTB.4 hoog maken
CASE 2: PORTB = %10000010 ;Als 'Dobbelsteen' een 2 is, dan PORTB.6 en PORTB.2 hoog
CASE 3: PORTB = %10010010 ;enzovoort
CASE 4: PORTB = %10101010
CASE 5: PORTB = %10111010
CASE 6: PORTB = %11101110
END SELECT
DELAYMS 10
TRAN1 = 0
TRAN2 = 1
SELECT dobbel2
CASE 0: PORTB = %00000000
CASE 1: PORTB = %00010000
CASE 2: PORTB = %10000010
CASE 3: PORTB = %10010010
CASE 4: PORTB = %10101010
CASE 5: PORTB = %10111010
CASE 6: PORTB = %11101110
END SELECT
DELAYMS 10
TRAN2 = 0
IF S1 = 1 THEN ;Als de toets wordt ingedrukt, dan...
GOSUB Dobbel
ENDIF
teller = teller + 1
IF teller = 100 THEN
GOSUB wachten
ENDIF
WEND
wachten:
teller = 0
WHILE S1 = 1: WEND
RETURN
Dobbel:
Dobbelsteen = (RANDOM / (65535 / 6)) + 1 ;continu schudden, getal uit 1...6 (dobbelsteen 1)
IF S2 = 1 THEN
dobbel2 = (RANDOM / (65535 / 6)) + 1
ELSE
dobbel2= 0
ENDIF
RETURN
END
|

binnenkant 

Mooi h? 
http://video.google.nl/videoplay?docid=6184390525254716452&hl=nl />
Klik @ link voor filmpje pas op voor de vinger 
'Cube done!' 
mvg
Pyro-Brad (H) |
nu nog het nubke van schematheek :p |
|
|
|
|