Ik ben voor school bezig met de bouw van een simpel robotje, ma die bouw ik niet in 1 keer maar maak elke keer losse delen, test die en voeg op het eind alles samen.
Ma nu ben ik wat langere programma's aan het schrijven en kom ik in de problemen dat pic basic lite zo'n limitatie heeft.
Ik gebruik het alleen voor mijn pws en ben niet van plan om die dure versie te kopen en mijn school wil het ook niet aanschaffen.
Dus is mijn vraag zou er iemand een code voor mij willen compileren??? Hiermee zou je me echt helpen, zelf kan ik wel programmeren enz ma het gaat me om dat compileren, dus als iemand dat voor me zou kunnen doen, heel erg graag!
Alvast bedankt,
Ps: het gaat om een code van 120 regels pic basic.
Grt,Robert.
Als iemand het wil doen, stuur kik het programma wel op, alvast bedankt!
Grt, Robert.
[Bericht gewijzigd door elektro robert op (97%)]
EdwinNadorp
Koop hier uw kristallen bol - in 2008 ga ik m'n projecten afmaken, echt waar ....... nouja in 2009 dan ..... ehh 2010 ....
Heeft je school wellicht ook een reden opgegeven het niet te willen aanschaffen?
Alternatief is natuurlijk je code in ASM zetten en de gratis compiler te pakken.
ja, de school werkt verder niet met programmeer spullen enz, en ze vonden het te duur om het alleen voor mij aan te schaffen.
En k heb net basic geleerd dus denk voorlopig effe hier bij blijf en misschien later overga op een andere.
Grt,Robert.
Hoi Robert.
Als je me de code even mailt
dan compileer ik je code wel.
(het zou wel leuk zijn als je dan wat foto`s plaatst)
Groetjes Lowa1
oke bedankt, dit is hem alleen als ik hem op het forum plaats komt alles aan de kantlijn te staan, sorry
Device 16F628A
Config WDT_OFF, PWRTE_ON, LVP_off, MCLRE_OFF, HS_OSC
XTAL 20
ALL_DIGITAL TRUE
PORTB_PULLUPS = On
HSERIAL_BAUD = 9600
HSERIAL_RCSTA = %10010000
HSERIAL_TXSTA = %00100000
HSERIAL_CLEAR = On
Symbol IRlinks = PORTA.3
Symbol IRrechts = PORTA.4
Symbol Servolinks = PORTB.6
Symbol Servorechts = PORTB.5
Symbol led = PORTA.2
Symbol servo-ir = PORTA.4
Dim gezien als Bit
Dim Teller As Byte
Declare CCP1_PIN = PORTB.7 ; moet nog nagekeken worden
HPWM 1, 127, 33000
;;;;;;;;;;;;;;;;;;;;;;;;;;;;hoofpogramma;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Hoofdprogramma:
For Teller = 125 To 200 Step 6 ; van midden naar links
Servo servo-ir, 1000 + Teller
DelayMS 20
HRSOut " kijken links " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 90 And Teller < 160 Then ; 90 160
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
For Teller = 200 To 50 Step - 6; 170 to 80 ; van links naar rechts
HRSOut 1000 + Teller
DelayMS 20
HRSOut " kijken rechts " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 90 And Teller < 160 Then
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
For Teller = 50 To 124 Step 6 ; van rechts naar midden
HRSOut 1000 + Teller
DelayMS 20
HRSOut " kijken midden " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 100 And Teller < 150 Then
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
GoTo rijden
Wend
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;bewegen;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
achteruit:
Teller=0
For Teller = 0 To 90
Servo Servolinks, 700
Servo Servorechts, 700
DelayMS 20
HRSOut " achteruit met draai " , 13 , 10 ,
Next
Teller = 0
For Teller = 0 To 90
Servo Servolinks, 2000
Servo Servorechts, 700
DelayMS 20
HRSOut " draaien " , 13 , 10 ,
Next
GoTo Hoofdprogramma
draaien:
Teller = 0
For Teller = 0 To 90
Servo Servorechts, 2000
Servo Servolinks, 700
DelayMS 20
HRSOut " draaien " , 13 , 10 ,
Next
GoTo Hoofdprogramma
rijden:
Teller = 0
For Teller = 0 To 90 Step 2
Servo Servorechts, 2000
Servo Servolinks, 2000
DelayMS 20
HRSOut " rijden " , 13 , 10 ,
Return
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IR controle;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
controle:
If IRrechts = 1 Then gezien = 0
If IRrechts = 0 Then gezien = 1
If IRlinks = 1 Then gezien = 0
If IRlinks = 0 Then gezien = 1
Else gezien = 0
HRSOut " IR-check " , 13 , 10 ,
EndIf
Return
Als er fouten inzitten, moet je het even zeggen, bedankt, Grt Robert.
Frits Kieftenbelt
Ohm sweet Ohm | www.picbasic.nl
ow oke, gelukkig zegt u het even,
-ja dat 13, 10 had k ergens gezien, ma dat kan k wel weghalen
- en pic basic zei dat er veder geen fouten waren
-en waar precies???
Grt, Robert.
is dit beter???
Device 16F628A
Config WDT_OFF, PWRTE_ON, LVP_off, MCLRE_OFF, HS_OSC
XTAL 20
ALL_DIGITAL TRUE
PORTB_PULLUPS = On
HSERIAL_BAUD = 9600
HSERIAL_RCSTA = %10010000
HSERIAL_TXSTA = %00100000
HSERIAL_CLEAR = On
Symbol IRlinks = PORTA.3
Symbol IRrechts = PORTA.4
Symbol Servolinks = PORTB.6
Symbol Servorechts = PORTB.5
Symbol led = PORTA.2
Symbol servo-ir = PORTA.4
Dim gezien As Bit
Dim Teller As Byte
Declare CCP1_PIN = PORTB.7 ; moet nog nagekeken worden
HPWM 1, 127, 33000
;;;;;;;;;;;;;;;;;;;;;;;;;;;;hoofpogramma;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Hoofdprogramma:
For Teller = 125 To 200 Step 6 ; van midden naar links
Servo servo-ir, 1000 + Teller
DelayMS 20
Next
HRSOut " kijken links " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 90 And Teller < 160 Then ; 90 160
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
For Teller = 200 To 50 Step - 6; 170 to 80 ; van links naar rechts
HRSOut 1000 + Teller
DelayMS 20
Next
HRSOut " kijken rechts " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 90 And Teller < 160 Then
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
For Teller = 50 To 124 Step 6 ; van rechts naar midden
HRSOut 1000 + Teller
DelayMS 20
Next
HRSOut " kijken midden " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 100 And Teller < 150 Then
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
GoTo rijden
Wend
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;bewegen;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
achteruit:
Teller=0
For Teller = 0 To 90
Servo Servolinks, 700
Servo Servorechts, 700
DelayMS 20
Next
HRSOut " achteruit met draai " , 13 , 10 ,
Next
Teller = 0
For Teller = 0 To 90
Servo Servolinks, 2000
Servo Servorechts, 700
DelayMS 20
Next
HRSOut " draaien " , 13 , 10 ,
Next
GoTo Hoofdprogramma
draaien:
Teller = 0
For Teller = 0 To 90
Servo Servorechts, 2000
Servo Servolinks, 700
DelayMS 20
Next
HRSOut " draaien " , 13 , 10 ,
Next
GoTo Hoofdprogramma
rijden:
Teller = 0
For Teller = 0 To 90 Step 2
Servo Servorechts, 2000
Servo Servolinks, 2000
DelayMS 20
Next
HRSOut " rijden " , 13 , 10 ,
Return
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IR controle;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
controle:
If IRrechts = 1 Then gezien = 0
If IRrechts = 0 Then gezien = 1
If IRlinks = 1 Then gezien = 0
If IRlinks = 0 Then gezien = 1
Else gezien = 0
HRSOut " IR-check " , 13 , 10 ,
EndIf
Return
Frits Kieftenbelt
Ohm sweet Ohm | www.picbasic.nl
DIM gezien als BIT (moet dat niet AS zijn?)
en
SYMBOL Servo-ir = PORTA.4
Servo-ir wordt gezien als Servo - ir (Servo min ir)
en
HRSOut " IR-check " , 13 , 10 ,
Waar is die laatste komma voor?
oke, weer wat geleerd!
Device 16F628A
Config WDT_OFF, PWRTE_ON, LVP_off, MCLRE_OFF, HS_OSC
XTAL 20
ALL_DIGITAL TRUE
PORTB_PULLUPS = On
HSERIAL_BAUD = 9600
HSERIAL_RCSTA = %10010000
HSERIAL_TXSTA = %00100000
HSERIAL_CLEAR = On
Symbol IRlinks = PORTA.3
Symbol IRrechts = PORTA.4
Symbol Servolinks = PORTB.6
Symbol Servorechts = PORTB.5
Symbol led = PORTA.2
Symbol servoir = PORTA.4
Dim gezien As Bit
Dim Teller As Byte
Declare CCP1_PIN = PORTB.7 ; moet nog nagekeken worden
HPWM 1, 127, 33000
;;;;;;;;;;;;;;;;;;;;;;;;;;;;hoofpogramma;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Hoofdprogramma:
For Teller = 125 To 200 Step 6 ; van midden naar links
Servo servoir, 1000 + Teller
DelayMS 20
Next
HRSOut " kijken links " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 90 And Teller < 160 Then ; 90 160
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
For Teller = 200 To 50 Step - 6; 170 to 80 ; van links naar rechts
Servo servoir, 1000 + Teller
DelayMS 20
Next
HRSOut " kijken rechts " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 90 And Teller < 160 Then
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
For Teller = 50 To 124 Step 6 ; van rechts naar midden
Servo servoir, 1000 + Teller
DelayMS 20
Next
HRSOut " kijken midden " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 100 And Teller < 150 Then
GoTo achteruit
Else
GoTo draaien
End If
End If
Next
GoTo rijden
Wend
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;bewegen;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
achteruit:
Teller=0
For Teller = 0 To 90
Servo Servolinks, 700
Servo Servorechts, 700
DelayMS 20
Next
HRSOut " achteruit met draai " , 13 , 10 ,
Next
Teller = 0
For Teller = 0 To 90
Servo Servolinks, 2000
Servo Servorechts, 700
DelayMS 20
Next
HRSOut " draaien " , 13 , 10 ,
Next
GoTo Hoofdprogramma
draaien:
Teller = 0
For Teller = 0 To 90
Servo Servorechts, 2000
Servo Servolinks, 700
DelayMS 20
Next
HRSOut " draaien " , 13 , 10 ,
Next
GoTo Hoofdprogramma
rijden:
Teller = 0
For Teller = 0 To 90 Step 2
Servo Servorechts, 2000
Servo Servolinks, 2000
DelayMS 20
Next
HRSOut " rijden " , 13 , 10 ,
Return
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IR controle;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
controle:
If IRrechts = 1 Then gezien = 0
If IRrechts = 0 Then gezien = 1
If IRlinks = 1 Then gezien = 0
If IRlinks = 0 Then gezien = 1
Else gezien = 0
HRSOut " IR-check " , 13 , 10 ,
EndIf
Return
Beter??
Frits Kieftenbelt
Ohm sweet Ohm | www.picbasic.nl
HPWM 1, 127, 33000
Frequentie mag liggen tussen 0 ... 32767
en
HRSOut " IR-check " , 13 , 10 ,
Waar is die laatste komma voor?
(Ik kijk nu niet meer verder, m'n bad is vol, ik ga in bad
)
Morgen verder...
foutcode regel 38
HRSOut " kijken links " , 13 , 10 ,
GoSub controle
If gezien = 1 Then
If Teller > 90 And Teller < 160 Then ; 90 160
GoTo achteruit
Else
GoTo draaien
End If
End If
Next------------------------------------
For Teller = 200 To 50 Step - 6; 170 to 80 ; van links naar rechts
Servo servoir, 1000 + Teller
Groetjes lowa1
oke, bedankt alvast, veel plezier, ma die 33000 werkt wel heb ik al meer gebruikt(ook eens ergens gezien).
Grt,Robert.
Werkt het ook zonder die 'next' want anders kan je ze gewoon weghalen.
Grt,Robert.
[Bericht gewijzigd door elektro robert op (58%)]
Hoi robert
next regel 38 verwijdert
volgende foutcode
next regel 53
--------------------------------
next regel 53 verwijdert
volgende foutcode
next regel 68
-------------------------------
Groetjes Lowa1
ow men, sorry voor al die fouten, doe het nog niet zolang en dit is mijn eerste grote programma, ma k snap nie wrom dat allemaal fout is?
Grt,Robert.
Hoi Robert
Ieder begin is lastig.
Je moet gewoon ieder stukje even apart testen in Proton
lite versie.
dan leer je het meest.
Ik hoor het wel als je eruit bent.
Groetjes Lowa1
[Bericht gewijzigd door lowa1 op (11%)]
Hoi Robert
Wend regel 72
Misplaced or incorrect `WEND` Also check its corresponding WHILE Command
Wend weggelaten.
Else gezien = 0 regel 123
Misplaced or Incorrect `ELSE`Also chech its corresponding IF Comand
Aangepast naar.
controle:
If IRrechts = 1 Then gezien = 0
If IRrechts = 0 Then gezien = 1
If IRlinks = 1 Then gezien = 0
If IRlinks = 0 Then
gezien = 1
Else gezien = 0
HRSOut " IR-check " , 13 , 10 ,
EndIf
Return
Na aanpassen geen foutcode
:1000000096280C1E0128990003149128AC004B304F
:10001000A3004C30A4005F2003191210031D12141A
:10002000FC3E031C9210031892144030A3004B3086
:10003000A4004C30A700A80112183C2092183C20C4
:10004000612023038316920083122308A50024084D
:10005000A6002208A900AA00220FAA017B202808D6
:1000600095000C309700A71B9716271B17168316B1
:1000700086138312121591283D200310A70CA40C9F
:10008000A30C0800A601A500FF30A507031CA607C6
:10009000031C91280330A400E73050204428A40119
:1000A000FC3EA300A409031C5B28FF300000A3074B
:1000B00003185628A3070000A40F55280800A8011C
:1000C000A7011030A900240DA70DA80D2508A7022F
:1000D0002608031C260FA802031875282508A70761
:1000E00026080318260FA8070310A30DA40DA90BBB
:1000F0006328230891281030AD00A401A301AA0CA5
:10010000A90C031C89282508A30726080318260F15
:10011000A407A40CA30CA80CA70CAD0B7F282708E0
:1001200091288313831203130000080083162030E4
:10013000990020309800831290309800A001073079
:100140009F00831681137F308312A2008030A600A7
:10015000E830A500013006207D30B000C930300203
:100160000318C6288316051283120516E8303007D7
:10017000A30003300318013EA400230850200512F9
:10018000143042200630B007031CAE282030012076
:100190006B300120693001206A3001206B30012072
:1001A000653001206E300120203001206C300120AC
:1001B000693001206E3001206B3001207330012046
:1001C000203001200D3001200A3001207D222F1C1B
:1001D000FA285B303002030103180130AE00A03072
:1001E00030020130031803012E050319F9289A295A
:1001F000FA28172AC830B00032303002031C142904
:100200008316051283120516E8303007A300033069
:100210000318013EA4002308502005121430422088
:100220000630B0020318FC28203001206B3001207A
:10023000693001206A3001206B30012065300120D7
:100240006E30012020300120723001206530012005
:1002500063300120683001207430012073300120A8
:10026000203001200D3001200A3001207D222F1C7A
:100270004A295B303002030103180130AE00A03080
:1002800030020130031803012E05031949299A2968
:100290004A29172A3230B0007D3030020318642911
:1002A0008316051283120516E8303007A3000330C9
:1002B0000318013EA40023085020051214304220E8
:1002C0000630B007031C4C29203001206B30012080
:1002D000693001206A3001206B3001206530012037
:1002E0006E300120203001206D3001206930012066
:1002F000643001200120653001206E300120203063
:1003000001200D3001200A3001207D222F1C992967
:1003100065303002030103180130AE009630300220
:100320000130031803012E05031998299A299929E8
:10033000172A4A2AB001B0015B3030020318B729EE
:1003400083160613831206170230A400BC30502017
:10035000061383168612831286160230A400BC3060
:100360005020861214304220B00A031D9C292030F0
:100370000120613001206330012068300120743099
:100380000120653001207230012075300120693074
:10039000012074300120203001206D3001206530B3
:1003A000012074300120203001206430012072309F
:1003B000012061300120012069300120203001201E
:1003C0000D3001200A300120B001B0015B30300255
:1003D0000318012A83160613831206170730A40098
:1003E000D0305020061383168612831286160230F0
:1003F000A400BC305020861214304220B00A031DE5
:10040000E629203001206430012072300120613063
:100410000120012069300120653001206E3001206B
:10042000203001200D3001200A300120AC28B0011D
:10043000B0015B3030020318342A8316861283120F
:1004400086160730A400D03050208612831606137B
:10045000831206170230A400BC305020061314305B
:100460004220B00A031D192A2030012064300120E7
:100470007230012061300120012069300120653097
:1004800001206E300120203001200D3001200A3083
:100490000120AC28B001B0015B3030020318682A9B
:1004A00083168612831286160730A400D03050209F
:1004B000861283160613831206170730A400D03065
:1004C00050200613143042200230B007031C4C2A7F
:1004D0002030012072300120693001206A30012073
:1004E00064300120653001206E3001202030012071
:1004F0000D3001200A3001200800051E802A2F102F
:10050000051A832A2F14851D862A2F1085198A2AF9
:100510002F14A32A2F1020300120493001205230FF
:1005200001202D300120633001206830012065302A
:100530000120633001206B300120203001200D307C
:0805400001200A30012008002F
:02400E00423F2F
:00000001FF
Groetjes Lowa1