Fórum témák

» Több friss téma
Fórum » AVR - Miértek hogyanok
 
Témaindító: pakibec, idő: Márc 11, 2006
Témakörök:
WinAVR / GCC alapszabályok:
1. Ha ISR-ben használsz globális változót, az legyen "volatile"
2. Soha ne érjen véget a main() függvény
3. UART/USART hibák 99,9% a rossz órajel miatt van
4. Kerüld el a -O0 optimalizációs beállítást minden áron
5. Ha nem jó a _delay időzítése, akkor túllépted a 65ms-et, vagy rossz az optimalizációs beállítás
6. Ha a PORTC-n nem működik valami, kapcsold ki a JTAG-et
Bővebben: AVR-libc FAQ
Lapozás: OK   129 / 840
(#) Mumtaz hozzászólása Jún 9, 2009 /
 
Korábban írtam, hogy a Topi féle AVR-Doperrel csak 5 centis kábellel tudtam programozni, vagy egyáltalán lekérdezni egy AVR-t. Most az egészet bedobozoltam, csináltam egy nyákot a doboz belső oldalára, amire ráforrasztottam egy 4-es dip kapcsoló sort, egy 20-as dip IC foglalatot, valamint egy programozó csatit. Természetesen programozni lehet vagy a csatin keresztül, vagy az IC foglalatba. A nyákot nem szalagkábellel, hanem picit vastagabb és egymástól különálló 5 centis vezetékekkel kötöttem a programozóhoz. A gond csak az, hogy üresben az AVR Studióban tesztelésképpen törlésekkel és "Read Signature"-el próbálkoztam, és mindkettőnél 10-ből átlag 8-szor hibás értéket kaptam vissza ellenőrzésre.

Gyakorlatilag milyen lenne az optimális kábel? Mivel próbálkozzak?
(#) vzoole válasza Mumtaz hozzászólására (») Jún 9, 2009 /
 
Szerintem ott valami más gon lesz.

Elsőként talán egy másik PC-vel kéne kipróbálni.
Nekem a régi PC-vel elég nehézkesen megy (10/3 sikeres programpzás), de az újakkal mindig rendesen működik 25 cm-es kábellel.
(#) gtk válasza Magor hozzászólására (») Jún 9, 2009 /
 
Es tartsd be az adatlapban ajanlott L szurot.
(#) Mumtaz válasza vzoole hozzászólására (») Jún 9, 2009 /
 
Egy USB 1.0-ás 366 celeron lapitopival próbáltam, és a saját Athlon 64-es (kb 4 éves) gépemmel. Azért elég nagy a szórás.

Korábban írtam is, hogy 10 centis kábellel fel sem ismerte az attiny-t. Kicsit rövidebbel már egyszer-egyszer igen. 5 centi körüli kábellel pedig mindig. Többször is teszteltem.
De most ezzel a megoldással az előbbi hozzászólásomban leírt módon működik. Szóval nem értem.
(#) kendre256 válasza Mumtaz hozzászólására (») Jún 9, 2009 / 1
 
Szerintem is mással lehet a probléma. Nekem 30 cm-es szalagkábellel jól megy,. A fejlesztés során eddig legalább 200-szor programoztam ATmega8-at, ATmega16-ot, meg egypárszor ATiny45-öt, ATiny2313-at, sose volt vele probléma.
Van szűrés a kábel végén a táplábakon? Én bread board ("dugdosós") panelon próbálkozom, azon a tápfeszültség vezetékekre raktam egy 100 µF-os elektrolitkondenzátort.
(#) Topi válasza Mumtaz hozzászólására (») Jún 9, 2009 /
 
Egyszer egy srác hasonlóval küzdött, aztán kiderült, hogy nem adott tápot a processzornak, továbbá nem voltak rendesen összeföldelve.
És a szerencsétlen processzor a belső 50K körüli Reset ellenálláson keresztül lett táplálva, így aztán néha olvasott, néha nem.
(#) Mumtaz válasza Topi hozzászólására (») Jún 10, 2009 /
 
TVCC bekapcsolva. Mikor összeraktam a külső nyákot, akkor kimértem minden programozáshoz bekötött lábat az ic foglalaton. 20-as lábon a +5V ok, 10-es lábon a föld ok.

A programozó és a nyák 0,5-ös vezetékekkel van összekötve.
(#) Topi válasza Mumtaz hozzászólására (») Jún 10, 2009 /
 
Tegyél egy szkópot a MISO vonalra, és próbáld meg eljuttatni hozzánk a képet.
(#) Sir-Nyeteg hozzászólása Jún 10, 2009 /
 
Tisztelt "gtk"!
Végre vizsgák után lett időm kipróbálni az általad publikált LCD drivert. De sajna van pár problémám vele:
-SRC átírása és lefordítás után ezt az üzenetet kapom: LCD1
-miután kitöröltem a szerintem felesleges pontosvesszőt ezeket kaptam: LCD2
-miután próbálkozások után átírtam a
  1. #include "simple_driver.h"
sort
  1. #include "simple_driver.c"
-re, megkaptam a LCD3-at
Mit rontok el, vagy mit csinálok rosszul?
Ekkor már felprogramozható az AVR, és működik is, csak érdekes a dolog.
Mivel kb 6kb a program mérete, így egy kicsit jobban le kéne rövidíteni, menne mellé még jópár funkció, ebben tudnátok segíteni? Lényegében 4-5db változó értékét szeretném csak kiiratni vele
(#) Norberto válasza Sir-Nyeteg hozzászólására (») Jún 10, 2009 /
 
Idézet:
„Végre vizsgák után”


Ó, bárcsak én is mondhatnék már hasonlókat!

De még holnap lesz egy szóbeli megmérettetésem kora délután...
(#) vzoole válasza Sir-Nyeteg hozzászólására (») Jún 10, 2009 /
 
Beimportáltad a fájlokat a helyére?

AVRStudio.gif
    
(#) Sir-Nyeteg válasza vzoole hozzászólására (») Jún 10, 2009 /
 
Mindjárt másabb a helyzet!
Köszi, nem tudtam, hogy importálni kell.
Így is kiad pár sárga hibát, de max 1-2db-ot.
(#) Sir-Nyeteg válasza Sir-Nyeteg hozzászólására (») Jún 10, 2009 /
 
Kicsit elakadtam (nem tartott sokáig).
Hogyan tudok egy változót kiratni az lcd-re?
Kód: egyértelmű, kiirja a "szöveg"-et, de hogyan tudom az "a" értékét kiiratni?
  1. int a=123;
  2. lcd_putstr ("Szöveg", LCD_FIRST_LN_ADDR);

Köszönöm!
(#) Mumtaz válasza Topi hozzászólására (») Jún 10, 2009 /
 
Sajnos nincs szkópom.
Nem vagyok műszerész, ezért vagyok ilyen béna az elektronikához.
(#) gtk válasza Sir-Nyeteg hozzászólására (») Jún 10, 2009 /
 
Az "undefined reference" akkor jelentkezik ha olyan fuggvenyre van hivatkozas ami "nem letezik". Ha nem adod meg a C fileokat a projektkezelonek, a kornyezetnek, akkor nem forditja be azokat a fuggvenyeket emire hivatkozol.
C filet nem includolunk. Ajanlom alaposan tanulmanyozd at az ansii C-t. Konnyunek tunhet, de nem egy konnyu nyelv, rengeteg buktatoja van. Az a pontosvesszo elgepelestol kerult bele.Nekem annak idejen nem panaszkodott ra a fordito, ezert maradt benne. A frissitesnel is elfelejtettem kijavitani
(#) gtk válasza Sir-Nyeteg hozzászólására (») Jún 10, 2009 / 1
 
Tipus konverzio kell.
Idézet:
„itoa( )”
, >itt van<
Vagy pedig sajat fuggveny: >itt van<
(#) Sir-Nyeteg válasza gtk hozzászólására (») Jún 10, 2009 /
 
Köszönöm, így már érthető!
(#) zombee hozzászólása Jún 10, 2009 / 1
 
Üdv mindenkinek.

USBTiny eszközömmel képtelen vagyok programozni.

Driverek fent vannak, com0com fentvan, usbtinyisp<->stk500 fut és látja a portokat, avrdude is látja az eszközömet, de az AVRStudio(ver 4.15) zagyvaságokat művel.

Csatlakozáskor látja a programozót, de a firmware verzió miatt figyelmeztet. Ha olvasni szeretnék, hibaüzenetet kapok. Megpróbáltam az AVRDUDE-vel elérni, az látja a programozót és az eszközt is, a piros lámpát is felvillantja a programozón.
Egy 100µF-os kondit már ráforrasztottam a programozó Attiny2313-as lábaira.

képeket csatoltam.
mi lehet a gond?
(#) Tomi20 válasza zombee hozzászólására (») Jún 11, 2009 /
 
heló

Az AVRStudio wf promlémájára mégsét kell nyomni, utnána tökéletesen programoz (tudomásom szerint az USB-s STK500-ak mind így működnek). Az AVR-ed új?
(#) vzoole válasza Sir-Nyeteg hozzászólására (») Jún 11, 2009 /
 
(#) zombee válasza Tomi20 hozzászólására (») Jún 11, 2009 /
 
Szerintem új lehet az AVRStudio-m.

Amúgy korábban ugyanezzel a verzióval ment valamennyie, látta a fuse biteket, még a programozás is elindult, de nagyon keserves volt, alig akart bármit is írni, mindig elcseszte.
Most meg fel sem ismeri a végére dugott mega16-ost...
(#) Tomi20 válasza zombee hozzászólására (») Jún 11, 2009 /
 
Az ATmega16-od új? Nem lehet, hogy kizártad magad az AVR-ből?
(#) zombee válasza Tomi20 hozzászólására (») Jún 11, 2009 /
 
Hogy érted hogy új a mega16-om?

LPT-portos ISP-n(ponyprog) és sorosporti JTAG-en(AVRStudio) nem volt gond.
A JTAG-et is én építettem, az a kezdetektől fogva működőképes.

Az USBTiny is ment egy keveset, de csak a fuse meg lock biteket olvasta(azt se mind jól), ráadásul égetéskor folyton elcseszte a konfigot.
(#) Tomi20 válasza zombee hozzászólására (») Jún 11, 2009 /
 
Arra gondolok, hogy nem lehet, hogy külső oszcillátor van bekonfigolva, és nem tudod emiatt olvasni, programozni, írni? Azért kérdeztem, hogy új-e, hogy már volt-e programozva. Az STK500-ad az USB-s változat?
(#) zombee válasza Tomi20 hozzászólására (») Jún 11, 2009 /
 
Biztos hogy nem külsőre van állítva, gyárilag amúgy belső RC-re teszik az újakat.
Ha külső RC-n lenne, akkor csak JTAG-el lehetne felprogramozni, ISP-vel még LPT porton sem állna szóba.
De már említettem, hogy mind a JTAG, mind az LPT-s ISP programozókkal megy a dolog.

Igen USB-s STK500-am van, ATTINY2313-al.
Az eszközt ezen WEBOLDAL alapján vittem véghez.

Sajnos kicsit sokat követel a kicsike:
kell driver, com0com portozó, stk500<->USBTiny híd, ez utóbbinak futnia kell az AVRStudio-val egyidőben.
Lényeg, hogy néha lehet vele valamit látni néha nem, most pedig egyáltalán nem...

AVRDude látja, felvillantja, de AVRStudio nem.
(#) Tomi20 válasza zombee hozzászólására (») Jún 11, 2009 /
 
Akkor sajnos nem tudok segíteni, én most kezdtem az ismerkedést az AVR-ekkel.
(#) zacc hozzászólása Jún 11, 2009 /
 
Helló.
Bascom probléma.
Ati mega8 al hőmérőt épitetem. LM35 ös senzort használok valamint az Aref a +5v. Az adc3-on olvasom a senzor értékeit. A gondom az hogy nem jövök ra hogy hogy kellene az " adc3=Getadc(3)" bol viszatérni fokba.
(#) TavIR-AVR válasza zacc hozzászólására (») Jún 13, 2009 /
 
bemeneti mV = fok*10

Arányosítva:
1023˘~ 5V
mértX ~ yV
Így: y=mértX*5/1023
Y*1000/10 = eredmény fokban....

Legalábbis ez alapján:
http://www.national.com/ds/LM/LM35.pdf
(#) TavIR-AVR hozzászólása Jún 13, 2009 /
 
AVR Chipválasztó, mely nem bogarászást jelent. Végre.
Minden fejlesztési javaslat jöhet!

AVR Chipselector
(#) Sir-Nyeteg válasza TavIR-AVR hozzászólására (») Jún 13, 2009 /
 
Naggggyon jó!
Eddig ezt bogarásztam, de nem fullos a lista.
Javaslat:
--Esetleg lehetne ABC sorrendbe rakni a "Device" neveket.
--Flash méret byte-ban van megadva kb helyett
--Sokszor az "alaphelyzet" gombra kattintottam, az valahogy jobban kézreesik az elküld gomb helyett, én cserélném a kettő helyét
Következő: »»   129 / 840
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem