abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:44 | IT novinky

    Mezinárodní nezisková organizace Women Who Code (WWCode, Wikipedie) založena v roce 2011 s cílem usnadnit ženám vstup do světa informačních technologií nečekaně skončila. Došly finance.

    Ladislav Hagara | Komentářů: 1
    včera 18:00 | IT novinky

    DuckDuckGo AI Chat umožňuje "pokecat si" s GPT-3.5 Turbo od OpenAI nebo Claude 1.2 Instant od Anthropic. Bez vytváření účtu. Všechny chaty jsou soukromé. DuckDuckGo je neukládá ani nepoužívá k trénování modelů umělé inteligence.

    Ladislav Hagara | Komentářů: 1
    včera 14:22 | IT novinky

    VASA-1, výzkumný projekt Microsoftu. Na vstupu stačí jediná fotka a zvukový záznam. Na výstupu je dokonalá mluvící nebo zpívající hlava. Prý si technologii nechá jenom pro sebe. Žádné demo, API nebo placená služba. Zatím.

    Ladislav Hagara | Komentářů: 4
    včera 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    18.4. 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    18.4. 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    18.4. 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 14
    18.4. 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 2
    18.4. 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 10
    KDE Plasma 6
     (68%)
     (11%)
     (2%)
     (20%)
    Celkem 567 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Programování ATtiny2313 "selhává"

    18.9.2008 19:50 atmel
    Programování ATtiny2313 "selhává"
    Přečteno: 2628×
    Ahoj, postavil jsem si obvod podle schématu http://www.abclinuxu.cz/images/clanky/martinek/1cip-programator_sch_big.png. Problém je že takto to nekomunikuje. Po zadání avrdude -c dapa -p t2313 -e se mi zobrazí avrdude: initialization failed, rc=-1. Pokud spojím pin1 přes odpor se zemí, tak už to jakoby jede, ale avrdude: Expected signature for ATtiny2313 is 1E 91 0A. Proč musí být pin spojen se zemí a proč to avrdude odmítá?

    Odpovědi

    18.9.2008 22:14 finn | skóre: 43 | blog: finnlandia | 49° 44´/13° 22´
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Nepoužíváš nějaký zvláštní paralelní port (třeba převodník USB → LPT)? Chyba může být v něm. Podle datasheetu musí být před započetím programování vývod RESET/ v nule, proto může částečně pomoct ten odpor.
    Užívej dne – možná je tvůj poslední.
    19.9.2008 06:40 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Převodník nepoužívám. Je to parport na staré desce s pentiem 233. Zkoušel jsem to i na intel little valley2 a chování víceméně stejné(jen ten odpor musel být jiný). Nakonec jsem zjistil že programování funguje, když jsem ten odpor s pinu 1 měl 660R. Ale když jsem nastavil externí krystal, tak se to začalo chovat zase jako předtím bez těch odporů, jinak obvod fungoval. Fakt nevím, kde hledat problém.
    19.9.2008 08:52 T.O.M. | skóre: 22 | blog: T.O.M.'s blog | Ostrava
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"

    Proc se nepoohlidnes po nejakem programatoru s vlastni logikou - neco ve stylu PAtmelu za par stovek? Vzdycky me udivuje, kdyz se nekdo snazi casovat komunikaci se zarizenim na portu primo programem z user-space a pak se divi, ze to (vetsinou) nejede...

    19.9.2008 12:50 skywaker
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    kup si nejaky na USB port.. ja som si zohnal tento: AVRmkII a stal ma nieco cez 1300SK... http://www.sos.sk/?str=371&artnum=55355

    vo windows ide bez problemov.. v linuxe mi ho detekovalo ale este som neprogramoval... neviem ale nanaslo mi svaba. moja nesikovnost mozno :)
    19.9.2008 14:01 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Vzdycky me udivuje, kdyz se nekdo snazi casovat komunikaci se zarizenim na portu primo programem z user-space a pak se divi, ze to (vetsinou) nejede...
    Háček je v tom, že avrdude přes paralelní port umí běžně programovat úplně bez problémů. Asi to bude mít nějakou souvislost s tím, že z toho portu odcházejí i hodiny, takže preempce toho programu nezpůsobí selhání funkce programátoru.

    Sám používám jako "programátor" paralelní port už dost dlouho a téměř bez problémů.
    Quando omni flunkus moritati
    19.9.2008 14:27 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Příloha:
    Problém je popsán dost obecně, takže nějaké obecné návrhy:

    Jestli jsi to ještě neudělal, tak zkontroluj zapojení, jestli všechny dráty drží na místě a tak.
    Pokud spojím pin1 přes odpor se zemí, tak už to jakoby jede, ale avrdude: Expected signature for ATtiny2313 is 1E 91 0A
    Tady by se hodilo vypsat i to, co se skutečně přijalo, tj. Device signature = 0xXXXXXX

    Jinak s programátorem "dapa" jsem občas měl problémy hlavně v situaci, kdy jsem se pokoušel pracovat s testovacím MCU, který toho měl docela dost za sebou. Tak jsem zkusil místo toho použít programátor "xil" a od té doby ani jediný problém.

    "xil" je taky programátor pro paralelení port, od "dapa" se liší jenom zapojením vývodů. Jak se liší, najdeš v souboru /etc/avrdude.conf (hledej "xil", "dapa" je kousek vedle). Když změníš zapojení, spouštíš avrdude -c xil ...

    (Ta změna zapojení je takhle: MOSI je stále pin2, to se nemění. SCK není připojené na pin 1, ale na pin 3. RESET není připojené na pin 16, ale na pin 4. MISO není připojené na pin 11, ale na pin 13. Všechny změny pinů se týkají paralelního portu, tzn. na straně mikropočítače se nic nemění. Zakreslil jsem změny do původního schématu a přiložil obrázek. Za nic neručím, než to zkusíš, zkontroluj si to podle toho avrdude.conf.)
    Quando omni flunkus moritati
    19.9.2008 16:08 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    No device signature to vrátí pokaždé jinou, občas tak 1/100 pokusů se to trefilo, takže je asi něco s komunikací. Zvláštní je to když je ten pin1 spojen se zemí odporem kolem 600R, tak to komunikuje spolehlivě, ale až do té doby než zapojím externí krystal, pak je komunikace v pase.
    19.9.2008 16:21 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    S tím xilem je to to samý. Naprosto totožný chování. S uzemněnám pinem1 to jede.
    19.9.2008 16:21 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Který pin 1? Pin 1 (STROBE) na LPT portu nebo na MCU (RESET)?
    Quando omni flunkus moritati
    19.9.2008 16:33 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Ještě mě napadlo - zkus tomu avrdude přidat parametr -i 100 (určuje počet mikrosekund mezi každou změnou bitu) Pokud je nějaký problém ve spojení (špatné kabely apod.), tak tohle by mohlo pomoci (za cenu zpomalení programování)
    Quando omni flunkus moritati
    19.9.2008 18:05 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Pin na mcu(reset). Časový interval nezabral.
    19.9.2008 18:18 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Tak se externím krystalem mi to funguje s odporem 440R
    19.9.2008 19:12 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Tak to už nevím. Možná je to opravdu tím, co psal finn.

    Quando omni flunkus moritati
    19.9.2008 19:37 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    No ale já převodník nepoužívám.
    19.9.2008 21:01 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Já myslel tu část:
    Podle datasheetu musí být před započetím programování vývod RESET/ v nule, proto může částečně pomoct ten odpor.
    Ale i tak je to divný. Kdyby to tak bylo, tak to znamená, že LPT port sám není schopen dotlačit pin reset toho MCU do nuly včas. To by znamenalo, že na tom pinu je nějaká dost velká kapacita a to mi přijde divné - kde by se vzala.
    Quando omni flunkus moritati
    19.9.2008 22:14 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Teď jsem měřil napětí, které dodává lpt pinu 1, a je tam 5.8V, což mi přijde docela dost. Po nasazení toho odporu je tam 2.4V a tehdy to funguje.
    19.9.2008 23:49 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    No nic, alespoň že to funguje takhle. Teď zkouším připojit sériový port a nějak se mi to nedaří. Když na konektoru canon 9 pin spojím vysílací a přijímací pin, tak to co pošlo přes echo dostanu přes cat. Za obvodem max232 když spojím vysílací a přijímací, tak se nic neděje a ani naprogramovaný obvod bez "zkratování tx a rx" nic do pc nevyšle. Na výstupu z atmela se ale objeví napětí 5V jak na tx tak na rx vedoucích z atmela, ale na druhou stranu se to přes max232 asi nedostane, nevím jak to odzkoušet. Zapojil jsem podle http://www.abclinuxu.cz/images/clanky/martinek/1cip-max232_sch.png. Co asi dělám špatně? Pokud bude potřeba víc informací k popisu problému, ptejte se. Z atmelem dělám teprve druhý den :-).
    20.9.2008 00:50 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Za obvodem max232 když spojím vysílací a přijímací, tak se nic neděje
    Tzn. piny 9 a 10 toho obvodu MAX232 jsou propojené mezi sebou, ale nejsou připojené k ničemu jinému. Sériový port je připojený k 7 a 8, ostatní piny podle schématu. Když pošleš něco pomocí echo, tak cat nevrátí nic.

    Napadají mě tři možnosti:
    1. nedostatečné napájení - čím to vlastně napájíš?
    2. vadný obvod MAX232
    3. špatné propojení - ten MAX232 je spojen s portem nějakým koupeným kabelem nebo dráty? Jestli kabelem, tak můžou být dráty v něm překřížené (pin 2 na jednom konci spojený s pinem 3 na druhém a obráceně)
    Quando omni flunkus moritati
    20.9.2008 12:39 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Stabilizovaným napětím 5V přes LM78L05. Je propojen kabely na konektor vs obvod.
    20.9.2008 00:35 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Ty hodnoty jsou měřené během programování? Předpokládám, že ne - v takovém případě je 5.8V opravdu dost, má tam být 5.

    2.4V je zase poměrně málo - jestli se tam ten port snaží vyrobit 5V, ale udrží jenom 2.4V, tak asi dostává pěkně pohulit.

    Napadlo mě, jak vyzkoušet, jestli to je tak, jak jsem říkal, tj. port nestihne nastavit pin reset do nuly předtím, než začne programovat.

    Spusť postupně:
    avrdude -c dapa -p t2313 -E reset
    avrdude -c dapa -p t2313 [příkaz pro programování]
    (Místo dapa může být xil, podle toho, jak to máš zrovna zapojené.) Při tom prvním příkazu se nestane nic, jenom bude nadávat, že má špatnou Device signature. Zajímá mě, co udělá ten druhý příkaz. Spouštět samozřejmě bez toho odporu.

    A ještě jeden nápad - jak je ten port nakonfigurovaný v BIOSu? Mám takový matný pocit, že když jsem ho neměl v režimu SPP, tak mi to taky blbnulo.

    Quando omni flunkus moritati
    20.9.2008 12:44 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Mockrát děkuju, S SPP v biosu už to funguje i bez toho odporu. Původně jsem tam měl SPP, zkoušel jsem SPP+EPP, ale SPP mě vyzkoušet nenapadlo.
    20.9.2008 13:29 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    A ještě k tomu sériovému portu. Zjistil jsem, že pokud posílám přes echo na sériové rozhraní nějaká data, tak při připojeném max232n klesne napětí od com konektoru na přibližně -4V na jednom vodiči a na -7V na druhém z původních -6.6V a -10.4V. A na straně, která vede z max232n do atmela je na jednom vodiči z 0.14V 0.10V a druhý zůstává 3.5V i když nic neposílám. Takto se to děje pokud není atmel naprogramován pro sériovou komunikaci. Pokud naprogramován je tak jde z atmela na obou vodičích 5V.
    20.9.2008 14:00 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Zjistil jsem, že pokud posílám přes echo na sériové rozhraní nějaká data, tak při připojeném max232n klesne napětí od com konektoru na přibližně -4V na jednom vodiči a na -7V na druhém z původních -6.6V a -10.4V.
    To je logické. Klidové napětí na sériové lince má být -12V (log.1). Když začneš něco posílat, tak tam občas projde nějaká log. 0 (tj. ideálně +12V), což stejnosměrný měřák vyhodnocuje jako pokles té hodnoy.
    A na straně, která vede z max232n do atmela je na jednom vodiči z 0.14V 0.10V a druhý zůstává 3.5V i když nic neposílám.
    "Jeden" a "druhý" vodič je skvělá identifikace. Já mám třeba na jednom vodiči pořád nulu, ale zas tak moc to nevadí, protože je to zem. (Čti: když nevím, co ty vodiče spojují, nemůžu říct, jestli se chovají správně.)
    Pokud naprogramován je tak jde z atmela na obou vodičích 5V.
    To je správně, v klidovém stavu se vysílá/přijímá log.1, tedy +5V
    Quando omni flunkus moritati
    20.9.2008 14:27 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Podle http://www.abclinuxu.cz/images/clanky/martinek/1cip-max232_sch.png.
    "Jeden" a "druhý" vodič je skvělá identifikace.
    PIN 9 a 10 z MAX232N.
    20.9.2008 18:28 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    MAX232N je v pořádku. Našel jsem doma ještě jeden rok starý a chová se to naprosto totožně.
    20.9.2008 21:57 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Těžko takhle na dálku říct, co tam může být za problém. Osobně bych se v první řadě pokusil dostat do takového stavu, aby fungovala kombinace port - MAX - MAX - port při přenosu dat pomocí echo/cat bez zapojeného MCU.
    Quando omni flunkus moritati
    20.9.2008 23:23 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    A může to tak vůbec fungovat? Pokud zkouším cat-echo na portu, tak nesmím mít připojenou zem. Teď jsem zapojil podle http://www.avrprojects.net/img/AT2313%20board%20RS232_sch.jpg a zjistil jsem, že pokud něco atmel posílá, tak 5V bylo na 11pinu maxe a na tom dalším, který vede taky do atmela bylo 0.3V a zároveň se změnilo napětí na pinu14 z -0.8V na 0.2V, takže to jakoby něco posílá, ale končí to bůhví jak. Napětí bez připojeného atmela jsou na max232 na pinu13 -10.6V a na pinu14 -1.2V, což je rozdílné než při původním zapojení dle http://www.abclinuxu.cz/images/clanky/martinek/1cip-max232_sch.png. Tak nevím co si o tom myslet.
    21.9.2008 00:00 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    A tedka mi prestalo fungovat programovani atmela, musel jsem zas na reset pin pripojit ten odpor. Ja myslim, ze ten port v pc je nejakej nacatej asi.
    21.9.2008 00:03 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    A může to tak vůbec fungovat?
    Jo. Takhle zkouším pokaždé, když se mi procesor nechce bavit s počítačem, abych vyloučil chybu ve spojení.
    zjistil jsem, že pokud něco atmel posílá, tak 5V bylo na 11pinu maxe a na tom dalším, který vede taky do atmela bylo 0.3V a zároveň se změnilo napětí na pinu14 z -0.8V na 0.2V, takže to jakoby něco posílá, ale končí to bůhví jak.
    Zjišťovat, co se děje na datové lince sériového portu stejnosměrným voltmetrem, je krajně neefektivní a nicneříkající. Na to je potřeba osciloskop. Proto doporučuju nejdřív rozchodit komunikaci port - max - max - port. Až to půjde, tak to teprve spojit s MCU.
    Quando omni flunkus moritati
    21.9.2008 00:17 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Tudíš dle schématu http://www.abclinuxu.cz/images/clanky/martinek/1cip-max232_sch.png by stačilo na max232 propojit pin9 a pin10 a mělo by to kecat samo se sebou?
    21.9.2008 01:49 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Mělo by.
    Quando omni flunkus moritati
    21.9.2008 11:46 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Chvilkama mi to nechce komunikovat ani s propojeným pinem2 a 3 na sériáku. Možná mám nějaké divné nastavení portu.
    programator:~# stty -F /dev/ttyS0
    speed 9600 baud; line = 0;
    -brkint -imaxbel
    
    Je tohle v pořádku?
    21.9.2008 12:24 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Tak to nějak samo od sebe začalo fungovat přes max232. Sice to vracelo nějaký zkomoleniny, ale alespoň komunikovalo. Tak jsem to připojil k atmelu, naprogramoval atmel a nic. Tak jsem to od atmela odpojil a spojil piny a teď to ani nic nevrací co mu pošlu. Co si mám o tom myslet? Vadný sériový port?
    21.9.2008 12:47 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Co si mám o tom myslet? Vadný sériový port?
    Jakým způsobem je to vlastně všechno propojené? Myslím jako co je kupované a co je dělané ručně. Jak je propojen port s MAXem, MAX s MCU, LPT s MCU atd. Z toho, že to občas funguje a občas ne, mi přijde, že je to všechno nějak divně popropojované.

    Možná by stálo za to pro zkoušení samotného portu a MAXe zapnout paritu: stty -F /dev/ttyS0 parenb parodd inpck ignpar -parmrk Dokud se nebude vracet to, co z portu vylezlo, tak je stále někde problém.

    (Paritu lze následně opět vypnout pomocí stty -D /dev/ttyS0 -parenb -inpck)
    Quando omni flunkus moritati
    21.9.2008 12:49 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Jestli máš nullmodem kabel a další volný sériák, tak je stačí tím kabelem spojit, nastavit stejnou rychlost (paritu, počet bitů) a echo/catnout a uvidíš zda funguje.
    21.9.2008 15:01 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Teď se to chová takhle: po spojení pinů před maxem:
    ,
    term1: programator:~/programator/lepsi# cat /dev/ttyS0
    term2: while : ; do echo "ll" > /dev/ttyS0; done
    ��H���H���H���H���H���H���H���H���H������C!��H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H���H��kl
    
    ll
    
    ll
    
    ll
    
    ll
    
    ll
    
    ll
    
    Zjistil jsem že nejdřív musím pustit cat a pak echo, jinak to nefunguje. Takhle to funguje dobře, nicméně přes maxe se to nedostane. Zapojený to mám následovně: konektor CANON 9 napájený takto: http://www.abclinuxu.cz/images/clanky/martinek/1cip-rs232-9pin-2.jpg. Od něj jsou vedený 3 vodiče třívodičovým kabelem přes nulové odpory do nepájivého kontaktního pole. Jeden do země, dva do maxe. K maxovi jsou přidělány elektrolytické kondénzátory 1uF. Všechno je proměřené, všechny kontakty ok.
    21.9.2008 15:13 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Teď jsem to přepojil podle http://www.dhservis.cz/dalsi/prevodnik.htm a už to "funguje" i za maxem se spojenými výstupy. Ale vrací to místo ll:
    ┌┌
    
    
    
    ┌┌
    
    
    
    ┌┌
    
    
    
    ┌┌
    
    21.9.2008 15:16 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    To leze ale i pokud spojím kontakty před maxem, takže asi špatný konektor.
    21.9.2008 15:34 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    To bude asi chybným nastavením seriáku, hoď sem ještě
    stty -F /dev/ttySx -a
    .
    21.9.2008 15:47 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    stty -F /dev/ttyS0 -a
    speed 9600 baud; rows 0; columns 0; line = 0;
    intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
    eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
    werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
    parenb parodd cs8 hupcl -cstopb cread clocal -crtscts
    -ignbrk -brkint ignpar -parmrk inpck -istrip -inlcr -igncr icrnl ixon -ixoff
    -iuclc -ixany -imaxbel -iutf8
    opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
    isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
    echoctl echoke
    
    21.9.2008 16:13 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Zjistil jsem že pokud to chvíli nechám a vyzkouším to za pár minut tak už to vrací ll, ale občas jsou mezi tím paznaky. A komunikace s atmelem nejde. Po odpojení od atmela to vrací už jenom paznaky a zase to musím chvíli nechat a pak to vrací ll.
    21.9.2008 16:29 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    A komunikace s atmelem nejde.
    Vykašli se na atmel. Dokud ti nepůjde samotný max, tak ti nepůjde ani ten atmel. A když ho náhodou rozchodíš, tak to bude tak nespolehlivé, že to nebude na žádnou užitečnou práci.
    Quando omni flunkus moritati
    21.9.2008 16:16 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Jaké nastavení sériáku by způsobilo, že port chybně přijme to, co vyslal? Kromě konverze speciálních znaků (která se netýká "ll") mě nic nenapadá.
    Quando omni flunkus moritati
    21.9.2008 17:28 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Příloha:
    Mě se to stávalo, když byla moc velká rychlost na nekvalitním vodiči. Každopádně pokud ten sériak není rozbitý a není špatný vodič, tak to musí být jedině konfigurací. Mě osobně se taky ten sériák občas chová prapodivně, ale vyřešil jsem to tak, že jsem si uložil konfiguraci stty zrovna když to fungovalo (myslím, že třeba po použití minicomu to občas nechtělo přijímat znaky). Taky bych si zkontroloval zda se čte a zapisuje jen jedním procesem a tedy porty nekolidují. Konektory podle mě budou dobrý, je to stará technologie, což znamená, že to jsou jen kusy kovu v sobě (já používám sériak bez konektorů, jen zastrkané drátky a funguje to krásně). Taky bych ty handshake piny nespojoval, sériák funguje i jen 3 drátově (Rx, Tx, GND) ty handshake tam jsou jen jako pomocné (třeba při spojení modemu), sériák je schopen se synchronizovat i jen se start/stop bity. Taky by mohlo být něco špatně v BIOSu (na mé desce občas kolidují IRQ a vůbec to nefunguje, nebo třeba IrDA (ale to nebude moc pravděpodobné).

    Na závěr přikládám bashový skript, který nastaví všechny parametry z doby, kdy to funguje (já vím je to prasárna, chtěl jsem to trochu uspořádát podle manuálu, ale ještě jsem se k tomu nedostal). Neručím ale za něj, protože nevím v jakém je funkčním stavu.
    21.9.2008 16:27 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Teď jsem to přepojil podle http://www.dhservis.cz/dalsi/prevodnik.htm a už to "funguje" i za maxem se spojenými výstupy.
    Podle toho, jak se funkce těch obvodů mění se změnou zapojení, se pro jistotu zeptám ještě jednou: jak to napájíš?

    Nahoře píšeš, že stabilizovaným napětím 5V přes LM78L05. Z čeho bereš vstupní napětí pro ten LM78L05? Jak velké je to vstupní napětí, jak velký proud dá ten zdroj toho napětí? Je na výstupu toho LM78L05 určitě 5V?

    Funkce toho maxe by se neměla měnit se zapojením - na netu se jich povaluje víc, ale měly by být vzájemně ekvivalentní. Podle toho, že ti to občas jde a občas ne, mi přijde, že to nemá dostatek šťávy.
    Quando omni flunkus moritati
    21.9.2008 16:39 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    No zkoušel jsem z toho LM dostat i 100mA do diod a napětí kleslo jen minimálně asi ze 4.98 na 4.95V. Vstupní napětí beru z adaptéru, který dodá 9V při 250mA.
    21.9.2008 16:54 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Teď mi to jde spolehlivě. S nastavením
    stty -F /dev/ttyS0 clocal cread -crtscts cs8 -cstopb hup -parenb parodd -brkint -icrnl ignbrk -igncr ignpar imaxbel -inlcr inpck -istrip -iuclc -ixany ixoff -ixon bs0 cr0 ff0 nl0 -ocrnl -ofdel -ofill -olcuc -onlcr -onlret onocr -opost tab0 vt0 -crterase crtkill -ctlecho -echo -echok -echonl -echoprt -icanon -iexten -isig -noflsh -tostop -xcase time 5 min 1
    
    viz. http://www.abclinuxu.cz/clanky/hardware/seriova-komunikace-pod-linuxem-i to dokonce vypíše přesně to co mu pošlu a nevypisuje to pořád dokola jako předtím.
    21.9.2008 17:02 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Pozorováním jsem došel k závěru, že vše funguje jak má dokud to nepřipojím třeba jen na chvilku na atmela a zpátky. Pak se to musí chvilku nechat a zase jede vše jak má, bohužel jen v "repeat módu."
    21.9.2008 20:33 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Teď mi to jde spolehlivě.
    I s tím MAXem, předpokládám. Výborně.
    Pozorováním jsem došel k závěru, že vše funguje jak má dokud to nepřipojím třeba jen na chvilku na atmela a zpátky.
    Takže pár pokusů:

    1. Vytvoř smyčku s tím MAXem (port - MAX - MAX - port). Atmela připoj jenom k napájení. Komunikuje ještě ta smyčka echo/cat?

    2. Naprogramuj Atmel tak, aby ty sériové piny byly vypnuté, tedy byly nastaveny do stavu vysoké impedance. Úplně na to bude stačit program typu:
    .org 0
        rjmp 0
    Tu stranu, kde jsou TTL úrovně (spojení pinů 9 a 10 na MAXovi), propoj s RXD (pin 2 na MCU). Funguje to ještě?

    3. Piny 9 a 10 na MAX jsou stále spojené, místo s RXD je spoj s TXD (pin 3 na MCU). Funguje to ještě?

    4. Piny 9 a 10 na MAX jsou stále spojené, opět je spoj s RXD a napiš program, který aktivuje RXD pin, například:
        ldi r16, (1 << RXEN)
        out UCSRB, r16
    stop:
        rjmp stop
    Funguje to ještě?

    Všechny testy mají vyloučit hardwarovou chybu procesoru; pokud je procesor v pořádku, nemělo by ani při jednom z nich hrozit poškození součástek.
    Quando omni flunkus moritati
    21.9.2008 22:10 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    1. OK 2. Už nefunguje 3. OK
    21.9.2008 22:12 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Po vymazání čipu je v pohodě i 2. bod.
    21.9.2008 22:18 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Už jsem našel zdroj problému. Měl jsem ve zdrojáku c DDRD=1, což nastavilo všechny D piny na výstupní.
    21.9.2008 22:28 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Jasně. V PORTD je ve výchozím stavu nula, tedy MAX se snažil držet na tom pinu log.1, ten pin zase log.0. To je v podstatě zkrat, takže (spekuluju) dost možná pokleslo napětí, procesor se vyresetoval, tím zkrat zmizel, procesor naskočil, znovu zkrat a takhle se to opakovalo. To by vysvětlovalo ty podivné hodnoty typu 3,5V a podobné.
    Quando omni flunkus moritati
    21.9.2008 22:49 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Příloha:
    Díky za rady. Tak teď konečně k tomu k čemu jsem se chtěl dohrabat. Jak zajistit komunikaci mezi atmelem a pc. Zkouším program(viz příloha). Když něco pošlu na atmela, tak mi vrátí paznaky(alespoň je už vrací atmel). Myslím že je problém v rychlosti komunikace. Když na pc nastavím jinou rychlost, tak to vrací jiné paznaky. Atmel by měl mít frekvenci 9.216MHz a podle toho jsem taky upravil InitUART na 59.
    21.9.2008 22:54 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    No ale částečně to vrací to co jsem poslal + 1 bit(viz. c kod) viz:
    echo A > /dev/ttyS0
    Bò
    
    echo AAA > /dev/ttyS0
    BA
    
    echo AAA > /dev/ttyS0
    BI
    
    21.9.2008 23:05 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Všechno vyřešeno, všechno funkční. Měl jsem špatně nastaven fuse bit, teď to už komunikuje. Mockrát všem děkuji za pomoc.
    22.9.2008 00:10 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Ještě malý dotaz: jak mám napsat fci ReadString, které nebude číst jenom písmena jako ReadByte v pokus.c, ale celá slova?
    22.9.2008 00:11 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    oprava: které nebude číst jenom písmena jako ReceiveByte v pokus.c
    22.9.2008 11:00 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Asi bych to řesil jako na PC, znaky ukončené 0. Jednoduchý cyklus bude potom číst ze seriáku data a zapisovat je do určené oblasti v paměti a po příchodu nuly se ukončí.
    22.9.2008 00:56 atmel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    Kromě vyresetování procesoru asi jo. Protože procesor jel v tu chvíli dál. Nechal jsem ho totiž i problikávat ledky.
    22.9.2008 10:01 mika_hakkinen | skóre: 7 | olbramkostel
    Rozbalit Rozbalit vše Re: Programování ATtiny2313 "selhává"
    velice dobrý programátor přes USB je usbasp, http://www.fischl.de/usbasp/ několikrát se tady řešil stačí jen pohledat

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.