Blbnutie programu

Sekcia určená pre Arduino nadšencov

Moderátor: Moderátori

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Blbnutie programu

Príspevok od používateľa maskrtnik01 » 14 Máj 2017, 13:03

Dobrý deň,

Chcel by som poprosiť o radu ohľadom programu pre Arduino Uno. Má to byť hra mastermind(známa aj ako logik).
Mám už napísaný kód. Hardware je tak primitívny, že sa tam nedá urobiť chyba(I2C znakový modul, štyri RGBčky, 5 tlačítok). Po nahratí programu do Arduina to robí všeličo, len nie to, čo potrebujem. Dal som teda pomaly všade serial.println, aby som vedel odsledovať code flow - je to dosť divné. Tak som to prepísal do C# a namockoval som digitalRead/digitalWrite, tam sa program správal viac-menej podľa očakávaní.

Vedel by mi niekto poradiť, čo môže spôsobiť toto správanie? Program nemôžem zverejniť, nakoľko sa jedná o zadanie do školy.
Okrem klasických arduino knižníc používam ešte C knižnice stdlib(funkcia calloc) a stdio(funkcia sprintf). A ak by niekomu napadlo, že mám poškodené Arduino - nie, zobral som inú Atmegu328p, vypálil som do nej bootloader a príslušné poistky, prehodil som a nepomohlo.

Ďakujem
0

pocitujlasku
Ultimate člen
Ultimate člen
Príspevky: 6203
Dátum registrácie: 20 Júl 2007, 00:00
Vek: 41

Re: Blbnutie programu

Príspevok od používateľa pocitujlasku » 14 Máj 2017, 14:28

Tazko ti niekto poradi, ked neuvidi kod. Moze tam byt cokolvek.
0
Jedním z největších projevů nedůvěry v Boha je hromosvod na kostele.

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: Blbnutie programu

Príspevok od používateľa maskrtnik01 » 14 Máj 2017, 14:40

To mi je jasné. Nemá niekto aspoň predstavu, čo môže spôsobovať blbý code flow?
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: Blbnutie programu

Príspevok od používateľa peterple » 14 Máj 2017, 17:01

Mám predstavu. Zvyčajne ide o to že programátor si myslí ako to funguje. Namiesto toho aby to vedel.
Odladiť to ak máš rozbehané debug výpisy na terminál nemôže byť zložité.
Koľko tam alokujes tej pamete? Nestretol sa ti zásobník a heap či ako sa to tuná volá?
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

mr.mio
Ultimate člen
Ultimate člen
Príspevky: 5036
Dátum registrácie: 01 Okt 2009, 00:00
Bydlisko: Podunajska pahorkatina
Vek: 36

Re: Blbnutie programu

Príspevok od používateľa mr.mio » 14 Máj 2017, 17:11

Ako mas osetrene tlacitka? Nevysia ti vstup v prievane?
0

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: Blbnutie programu

Príspevok od používateľa maskrtnik01 » 14 Máj 2017, 17:13

Dobrý večer,

Popravde netuším, prečo tam mám taký codeflow. Ale toto nebude problém, mám tam alokovaných asi aj pod 100 bajtov. Tlačítka dal som interný pullup, nepomohlo. Zvažujem ich prehnať cez debounce.
0

martin knocik
Ultimate člen
Ultimate člen
Príspevky: 1639
Dátum registrácie: 23 Jan 2008, 00:00
Bydlisko: Trenčianska Turná
Vek: 33
Kontaktovať používateľa:

Re: Blbnutie programu

Príspevok od používateľa martin knocik » 14 Máj 2017, 18:12

Interny pullup je vacsinou nedistatocny. Ja pridavam paralelne k pullupu maly keramicky kondenzator, 100pf.
0
http://mkbci.com

FEL UNIZA 2015, Ing.

ľudstvo je vírus ktorý napadol Zem

nerobme si ťažkú hlavu z debilov čo nám ani po členky nesiahajú, buďme radi že my dačo dokážeme a smejme sa im akí sú sprostí

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: Blbnutie programu

Príspevok od používateľa alidedko » 14 Máj 2017, 18:50

Preco mi kolisu otacky na volnobehu?

Je to normalne auto so spalovacim motorom. Diagnostika nevykazuje ziadne chyby. Benzin mam.

Chcem radu.
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

Používateľov profilový obrázok
Kado
Power user
Power user
Príspevky: 1625
Dátum registrácie: 02 Sep 2007, 00:00
Bydlisko: PB
Vek: 40

Re: Blbnutie programu

Príspevok od používateľa Kado » 14 Máj 2017, 19:01

martin knocik napísal:Interny pullup je vacsinou nedistatocny. Ja pridavam paralelne k pullupu maly keramicky kondenzator, 100pf.
netreba kondenzator, ak mas dobre napisanu obsluhu pre dekodovanie tlacitok - osetrenie zakmitov, tak nepotrebujes kondik, uplne staci interny pull up/down :wink:
0
Návrh zapojení s jednočipovými mikropočítačmi, tvorba programového vybavenia pre mikropočítače
http://www.jk-elektronika.info/index.html

predaj !!
http://svetelektro.com/modules.php?name ... 54#p549154

martin knocik
Ultimate člen
Ultimate člen
Príspevky: 1639
Dátum registrácie: 23 Jan 2008, 00:00
Bydlisko: Trenčianska Turná
Vek: 33
Kontaktovať používateľa:

Re: Blbnutie programu

Príspevok od používateľa martin knocik » 14 Máj 2017, 19:08

Tym kondikom neriesim zakmity tlacitka ale vf bordel na vstupe procaku. Uz sa mi stalo ze aj napriek 4k7 pull up rezistoru dochadzalo k falosnemu spustaniu. Ale to bolo v okoli silneho rusenie sposobeneho automobilovou elektronikou.
0
http://mkbci.com

FEL UNIZA 2015, Ing.

ľudstvo je vírus ktorý napadol Zem

nerobme si ťažkú hlavu z debilov čo nám ani po členky nesiahajú, buďme radi že my dačo dokážeme a smejme sa im akí sú sprostí

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: Blbnutie programu

Príspevok od používateľa maskrtnik01 » 14 Máj 2017, 20:33

alidedko napísal:Preco mi kolisu otacky na volnobehu?

Je to normalne auto so spalovacim motorom. Diagnostika nevykazuje ziadne chyby. Benzin mam.

Chcem radu.
Alidedko, nechajte si prosím takéto poznámky pre seba. Už som tu jasne napísal, prečo nezverejním zdrojové kódy.
0

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: Blbnutie programu

Príspevok od používateľa alidedko » 14 Máj 2017, 20:41

Tak odpoviem v podobnom duchu.
peterple napísal:Mám predstavu. Zvyčajne ide o to že programátor si myslí ako to funguje. Namiesto toho aby to vedel.
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

pocitujlasku
Ultimate člen
Ultimate člen
Príspevky: 6203
Dátum registrácie: 20 Júl 2007, 00:00
Vek: 41

Re: Blbnutie programu

Príspevok od používateľa pocitujlasku » 15 Máj 2017, 07:44

alidedko napísal:Preco mi kolisu otacky na volnobehu?
ja viem, ja viem. lebo je tam nieco pokazene. :)

Autor: tak v tom pripade sa moze tato tema zamknut. Ak nemame ani tusenie, ako ten program vyzera a ako tam mas osetrene napr. zakmity, tak ti nikto nedokaze poradit.
0
Jedním z největších projevů nedůvěry v Boha je hromosvod na kostele.

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: Blbnutie programu

Príspevok od používateľa maskrtnik01 » 15 Máj 2017, 10:59

Nech sa páči, zamknite. Aj tak vidím, že na tomto fóre mi nikto neporadí, keď tu nedám všetko čo mám - často ani vtedy.
0

Používateľov profilový obrázok
budvar10
Pokročilý člen
Pokročilý člen
Príspevky: 988
Dátum registrácie: 15 Dec 2014, 10:55
Bydlisko: Košice

Re: Blbnutie programu

Príspevok od používateľa budvar10 » 15 Máj 2017, 11:09

Tak daj aspoň nejaký výsek kódu, čo si myslíš, že je problematický. Ja osobne z tvojho popisu neviem nič a myslím, že tak aj ostatní.
Alebo, detailne popíš čo je problém, čo a ako sa správa ináč a ako by to malo byť.

BTW: Zbytočne sa urážaš nap. na alidedka, lebo iba trocha ironicky, ale presne popísal problém s tvojim dotazom.
0
Naposledy upravil/-a budvar10 v 15 Máj 2017, 11:18, upravené celkom 1 krát.

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: Blbnutie programu

Príspevok od používateľa maskrtnik01 » 15 Máj 2017, 11:17

Toto by sa dalo, ak by som mal problém s nejakým výpočtom. Ale tu ide o celkový problém s codeflow - ťažko to izolovať na pár riadkov, ktoré nemá zmysel ukradnúť.
0

Používateľov profilový obrázok
budvar10
Pokročilý člen
Pokročilý člen
Príspevky: 988
Dátum registrácie: 15 Dec 2014, 10:55
Bydlisko: Košice

Re: Blbnutie programu

Príspevok od používateľa budvar10 » 15 Máj 2017, 11:25

Codeflow myslíš to ako beží program, hej?
Tak najčastejšie chyby sú, že v ISR sú veci, ktoré spôsobujú blokovanie procesora a zle zvládnuté časovanie v hlavnej slučke loop(), ako napríklad delay()..., a už bola spomenutá obsluha tlačítka, to sa môže týkať aj HW.

-- Spojený príspevok 15 Máj 2017, 10:32 --

Veľakrát sa stáva, že vývojár zlepí celý program dohromady a bez otestovania jednotlivých funkcií čaká, že to bude fungovať. Ja osobne odporúčam rozdeliť celok na jenotlivé problémy. Tie testovať, či fungujú podľa očakávania, a až potom to dávať dohromady.
Keď sme hovorili o tých tlačidlách, naozaj fungujú? Ja by som podozrieval, že s interným pull-up odporom asi nie veľmi spoľahlivo.
Tam je najlepšie použiť externý 10k odpor.
0

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: Blbnutie programu

Príspevok od používateľa maskrtnik01 » 15 Máj 2017, 11:33

Áno, to som mal na mysli. Nuž neviem čo všetko sa skrýva v arduino knižniciach, ale vlastné isr tam nemám. Myslím, že ani delay.
Idem to ale odovzdať v súčasnom stave, nemám čas sa tým ďalej zaoberať.
0

Používateľov profilový obrázok
Tribec Zacks
Pokročilý člen
Pokročilý člen
Príspevky: 709
Dátum registrácie: 26 Jún 2010, 00:00
Bydlisko: Levice / Cork IRL
Vek: 41
Kontaktovať používateľa:

Re: Blbnutie programu

Príspevok od používateľa Tribec Zacks » 15 Máj 2017, 12:03

@maskrtnik, tazko ti mozeme poradit, ked nevidime kod ani schemu ani nic. za mna ti akurat mozem povedat, ze ak potrebujes nieco ako calloc na arduino projekte, tak robis nieco zle.
0
Kreativita a motivacia je to, co prinasa originalne napady a myslienky, disciplina je to, co ich dokaze zrealizovat.

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: Blbnutie programu

Príspevok od používateľa maskrtnik01 » 15 Máj 2017, 12:16

Tak to musíte adresovať príslušnej katedre. Máme predpísanú funkciu, ktorá vráti reťazec. To sa dá len s dynamickou alokáciou.
Osobne by som kód napísal asi inak, ale niekedy si človek nevyberá.
0

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok