Error 124

Hogyan programozzak AVR chipet? Programozók beállításai...
Bascom nyelvű programok...
Válasz küldése
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Error 124

Hozzászólás Szerző: Meschu »

Sziasztok.


Sajnos megint zavarnom kell titeket a tudatlanságommal.

Nézze valaki ezt át mi itt a hiba én képtelen vagyok megtalálni. Hibajelentés legalúl.

Egy egyszerű motorhajtás lenne gondolom érthetően kikommentálva.

Kód: Egész kijelölése

$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600


Declare Sub Gasadas
Declare Sub Gaselvetel

Dim T As Word   'Kapcsolok beolvasasa

Dim K As Byte   'Kapcsolo megallapitasa


            ' Motorhajtó L293D bemenetei

Config Pinc.6 = Output
Config Pinc.7 = Output

Config Pinb.0 = Output
Config Pinb.1 = Output

            'Mororok be kikapcsolása( kettö lenne majd)

Config Pind.5 = Output
E1 Alias Pind.5
Config Pind.4 = Output
E2 Alias Pind.4

Config Adc = Single , Prescaler = Auto , Reference = Avcc
Config Pina.7 = Input
         Porta.7 = 1


  ''''''''''''''''''''Főmenű'''''''''''''''''''''''''''''''

Do

Start Adc
T = Getadc(7)
 If T < 1010 Then
   Select Case T
   Case 410 To 450
   K = 1

   Case 340 To 380
   K = 2

   Case 265 To 305
   K = 3

   Case 180 To 220
   K = 4

   Case 100 To 130
   K = 5

  End Select
 End If

If K = 1 Then Gosub Gazadas
If K = 2 Then Gosub Gazelvetel


Loop
End


Gazadas:
Do
E1 = 1
Portc.7 = 0
Portd.6 = 1
E1 = 0
Return


Gazelvetel:
Do
E1 = 1
Portc.7 = 1
Portd.6 = 0
E1 = 0
Return


Error:124 Line: 0 LOOP expected, in File:

Köszi előre is.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Mit keres a gazadas/gazelveztel cimkek utan a Do szó?
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

És a Case így lenne helyes:

Kód: Egész kijelölése

   Select Case T
     Case 410 To 450 : K = 1
     Case 340 To 380 : K = 2
     Case 265 To 305 : K = 3
     Case 180 To 220 : K = 4
     Case 100 To 130 : K = 5
   End Select
8)
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

És mi van a select/case köztes értékekkel? :roll:
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Hozzászólás Szerző: Meschu »

Robert írta:Mit keres a gazadas/gazelveztel cimkek utan a Do szó?
Hát ez egy valóban fogas kérdés. Lessz min egy kicsit filózgatnom:-)

Köszi Robert. Mentségemre csak azt szeretném felhozni, hogy általában kétévente egyszer kell Mc t buzerálnom és igy volt a halvány emlékezetemben.
A nyelvvel forditva van a dolog. Akkor kopik ha nem használlod.
A kevésből meg gyorsan lessz semmi:-)
Bizti beugrott volna ha a hibajelentésben nem a nulladik sor áll.

Persze voltak másik hibák is miket mivel tudtam hol vannak egyszerűbb volt kigyomlálni.

Most miért nem irta hol keressem?
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Hozzászólás Szerző: Meschu »

Robert írta:És mi van a select/case köztes értékekkel? :roll:
Mint kutyaütő természetssen a codfezniket használlom amik erre a boardra amim van itt ott találhatók és próbállom átszabni őket. Gondolom ezek a biztonság kedvéért vannak.
Egy ellenállássoron öt gomb van ezeket értékeli ki.

Később ez mind másképp lesz (nagyobb fába vágtam a baltát) de most a próbállgatásokhoz nekem gombokkal irányitani célszerű. Mint emlitettem nekem még nagyon gyorsan áttekinthetetlenné válik egy progi.
Úgyhogy lessz még min eleget mulatnotok:-))

Köszi és vilcsi a javitottat használlom most majd.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Akkor a megvalósítás:
AD lábra egy ellenállássor és egyes darabjait ellenállással zárod rövidre?


Ilyet én is műveltem: 1 szabad láb, és 3 gomb :)
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Hozzászólás Szerző: Meschu »

Még valami.

Egy háromfázisú generárort (12V 55A) is rá kell majd birnom motorüzemre egy igen rövid időtartamban.
Az alapkisérletet elvégeztem. Terhelve tökre gerjesztetem aztán k.b 15-20 Amperral rá a két fázisra. Lépett is egyet mint ahogy elképzeltem, tehát tudná azt helyből amire szükségem van.
Egy háromfélhidas nagy 150 Amperos hajtóm van.
Ezt használnám de persze vezérelni is illik majd.
Meg szeretném sporolni a szenzorok bebütylölését a generatorba mert ha mint léptetőmotor egy rampán felfutatva tudja amit kell akkor minek.
A hatásfok meg itt lényegtelen oly rövid ideig működne motorüzemben.

Mit gondoltok megy?
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Hozzászólás Szerző: Meschu »

[quote="Robert"]Akkor a megvalósítás:
AD lábra egy ellenállássor és egyes darabjait ellenállással zárod rövidre?


Igen ezek már rajt vannak eredetileg a Boardon, öt darab.

Hogy tisztábban lásd. Egy Motornak a gázt és szivatót mükédtető szervóit kell most kapcsolgatni tudnom, hogy az ott beépitett potik értékeit a gyakorlatban meg tudjam állapitani (milyen fordulaton , terhelésen hőmérsékleten hol álnak stb) és ezt aztán táblázatba foglalni amit majd a progi használlni fog. Az egész teljessen automatikussan fog majd mükszeni ha a mindenható ist úgy akarja:-).
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Nem talállom:-)

Hozzászólás Szerző: Meschu »

Megint sziasztok.

Legyszi néze valaki át mi a jó .. itt megint a hiba.

$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600

'Unterpogramme deklarieren.
Declare Sub Gasauf
Declare Sub Gaszu
Declare Sub Chocauf
Declare Sub Choczu

Dim T As Word 'Az adc részére

Dim K As Byte 'Melyik gomb nyomva 12345


'Motorhajtó L293D t vezérlő pinek

Config Pinc.6 = Output
Mg1 Alias Pinc.6
Config Pinc.7 = Output
Mg2 Alias Pinc.7
Config Pinb.0 = Output
Mc1 Alias Pinb.0
Config Pinb.1 = Output
Mc2 Alias Pinb.1

'Motorhajtó kanáljai

Config Pind.5 = Output
E1 Alias Pind.5 'E1 Gas
Config Pind.4 = Output
E2 Alias Pind.4 'E2 Choc

'Wégálásl kapcsolók bemenetei, Gnd t kapcsolnak

Config Pina.3 = Input
Porta.3 = 1
G1 Alias Pina.3 'G1 Alapjárat
Config Pina.2 = Input
Porta.2 = 1
G2 Alias Pina.2 'G2 Tökgáz
Config Pina.1 = Input
Porta.1 = 1
C1 Alias Pina.1 'C1 Choc nyitva
Config Pina.0 = Input
Porta.0 = 1
C2 Alias Pina.0 'C1 Choc zárva

'Itt a kontrolledek vannak amik Vcc re vannak kötve. Ha egy a
'hozzájuk tartozó kapcsoló nullára kerül kell majd égniük.
Config Pinc.0 = Output
Lg1 Alias Pinc.0
Config Pinc.1 = Output
Lg2 Alias Pinc.1
Config Pinc.2 = Output
Lc1 Alias Pinc.2
Config Pinc.3 = Output
Lc2 Alias Pinc.3


Config Adc = Single , Prescaler = Auto , Reference = Avcc
Config Pina.7 = Input
Porta.7 = 1
Start Adc
T = Getadc(7)

'#######Hauptprogram############

Do

If T < 1010 Then
Select Case T
Case 410 To 450 : K = 1 'Melyik gomb nyomva
Case 340 To 380 : K = 2
Case 265 To 305 : K = 3
Case 180 To 220 : K = 4
Case 100 To 130 : K = 5
End Select
End If

If K = 1 Then Gosub Gasauf
If K = 2 Then Gosub Gaszu
If K = 3 Then Gosub Chockauf
If K = 4 Then Gosub Choczu
Loop
End
'end program

'alprogramok a motorok hajtására és azok megszakitására
'asszerint, hogy a végálláskapcsolók hol állnak, ezek jelentés.

Gasauf:
Do
If G2 = 1 Then E1 = 1 : Mg1 = 0 : Mg2 = 1 'Ha végállás nem elért indulj
Loop Until K <> 1 or G2 = 0 'Addig mig gomb nyomva vagy végállás
If G2 = 0 Then Lg1 = 0 Else Lg1 = 1 'ha végállás, jelezd
E1 = 0 'kapcsold ki a hajtót

Gaszu:
Do
If G1 = 1 Then E1 = 1 : Mg1 = 1 : Mg2 = 0
Loop Until K <> 2 or G1 = 0
If G1 = 0 Then Lg2 = 0 Else Lg2 = 1
E1 = 0
Return

Chockauf:
Do
If C2 = 1 Then E2 = 1 : Mc1 = 1 : Mc2 = 0
Loop Until K <> 3 or C2 = 0
If C2 = 0 Then Lc1 = 0 Else Lc1 = 1
E2 = 0
Return

Choczu:
Do
If C1 = 1 Then E2 = 1 : Mc1 = 0 : Mc2 = 1
Loop Until K <> 4 or C1 = 0
If C1 = 0 Then Lc2 = 0 Else Lc2 = 1
E2 = 0
Return


Most ha elinditom akkor a négy led világit ami ha jól
gondolom akkor logikus mert induláskor mind Gnd n vannak?.
Furcsa az is hogy a Portc amin végig ledek vannk amiket egy egérzongorával le és félkapcsolhatók ezen a négyen kivűl még a C6 is ég. Az meg nem szerepel a progiban a 4,5,7 meg nem égnek azok se szerepelnek, ezeken 3,2V t mérek.
a progi semelyik gomra se reagáll. Átmérten őket és átszámoltam, hogy stimmelnek e a számok amiket az eredeti az erre a Bordra irt progik egyikéből másoltam ki.
Ezeket mértem
1,92
1,59
1,24
0,86
0,45
Esszerint nem stimmeltek mert ha jól számolok akkor
92
176
259
325
393 lennénenk (a Vcc majd pontossan5V)

ezért átirtam de igy is ugyanaz.
Case 360 To 550 : K = 1
Case 300 To 300 : K = 2
Case 140 To 360 : K = 3
Case 115 To 200 : K = 4
Case 50 To 115 : K = 5

Egy egyszerű villogtató progit is feltettem gondova, hogy valahog mégse lessz a chip átirva de az rögtön ment.
Hibajelentés sehol.

Itt az én sok tudományom ácsorog:-)

Ha szükségetek lenne a hiba megtalállására a Board rajzára akkor azt
hova tegyem?
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Hozzászólás Szerző: Meschu »

Uff egy return kimaradt de csak itt a bemásolásnál

a progiban bennt van különben se engedte volna a forditó.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Portc: jtag be van kapcsolva, így jtag port....

PINx.y : mi a bemenet állapota?
PORTx.y : kimenetnál: mi legyen a port H/L értéke
bemenet esetén: csak belső felhúzóellenállás.....
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Hozzászólás Szerző: Meschu »

na most megprobáltam szétszedni a progit és darabonként leelenőrizni

$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600

Config Pind.5 = Output
E1 Alias Pind.5
Config Pind.4 = Output
E2 Alias Pind.4

Config Pinc.6 = Output
G1 Alias Pinc.6
Config Pinc.7 = Output
G2 Alias Pinc.7
Config Pinb.0 = Output
C1 Alias Pinb.0
Config Pinb.1 = Output
C2 Alias Pinb.1

Do

E1 = 1
E2 = 1
G1 = 1
G2 = 1
C1 = 1
C2 = 1

Loop
End

Most kéne a motorhajtó mindkét kanáljának mennie.
Nem megy.

PD 5 4 helyett 0 1 van fennt.
port B semmi
Port C 0-3 Gnd 4-5 3,31V 6 Gnd 7 3,11V

Ez most irány Kuka?

Vagy mit nézhetek még meg rajta?
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Még 1x leírom....

PINx.y : mi a bemenet állapota? Csak bemenetre értelmezhető, kimenet estén a lab fizikai jelszintjét adja meg.
PORTx.y : kimenetnél: mi legyen a port H/L értéke
bemenet esetén: csak belső felhúzóellenállás.....


felejtsd már el a PINc.x-t! :twisted: :evil: :P :twisted: :roll: :oops: :idea: :twisted: :evil: :!: :!: :!:


A Fusebiteknél a JTAG letiltva? :twisted: :P :twisted:
Avatar
Meschu
Tranzisztorgyógyász
Hozzászólások: 163
Csatlakozott: 2009. december 3. csütörtök, 7:00

Hozzászólás Szerző: Meschu »

Értelek én téged avval nincs gond.

Ahány bascomos port és pin értelmezést olvasok anyi a vélemény.

Amit eddig kivetten Port akkor ha az egész vagyis mind a nyolc lessz deklarálva. Ha egyenként akkor bizony Pin de ha hozzáirod hogy output akkor az output lesz, ha meg inputot irsz akkor anak a felhúzásához viszont port lesz irva.

Igy itéld légyszi a tudásalapom.

Mi igaz?


Talán jobb lett volna ha ezt a pici progit átirtad volna helyesre, abból bizosra mehettem volna.

Jatag. Ez a proci ment igy mindig ezekkel a beállitásokkal. Én a fusebitek közelébe sem mentem azokon nem állitottam soha.
Válasz küldése