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   79 / 840
(#) trudnai válasza PLaci hozzászólására (») Nov 3, 2008 /
 
Meg valami ahhoz ami KrunCH irt: Az AVR Assembler 2-ben mar lehet C stilusu preprocessor elemeket megadni, tehat egeszen hasonlo lesz a helyzet mint a PIC assemblernel:
  1. #include <tn45def.inc>
  2. #define LED     PORTB,1
  3.         .org    0
  4.  
  5.         sbi     LED
  6.         cbi     LED
  7.         rjmp    PC-4

Magyaran C preprocessor makrot definialhatsz, C stilusu indluce-ok, de mukodnek a C stilusu felteteles forditasi direktivak is. A PC-nel figyeld meg, hogy ugye a cimzes byte-os, hasonloan a PIC18F-ekhez, tehat ha ket utasitast akarsz vissza lepni akkor az -2*2...
(#) zsuscsinyo válasza Dudus hozzászólására (») Nov 4, 2008 /
 
Szia sajnos az a helyzet hogy nem, mivel még nem értek hozzá, Assembly-ben még nem programozok, de ha kifejtenéd bővebben hogy mit takar akkor az talán elég lenne. Köszönöm!
(#) Dudus válasza zsuscsinyo hozzászólására (») Nov 4, 2008 / 4
 
Az AT-Mega interrupt kezelése vektoros, ami azt jelenti, hogy ha megszakítás érkezik, akkor a program egy adott címen lévő utasítást ( ugrást ) hajt végre. Ez az ugrás a megszakításodat kezelő programra mutat. ( jmp rutin kezdete )

Ha lekezelted a megszakítást egy RETI utasítással tér vissza oda ahol a megszakítás generálódott és végrahajtja a soron következő utasítást.


Olvasd el a datasheet 60. oldalát.

Itt az adatlap
(#) zsuscsinyo válasza Dudus hozzászólására (») Nov 4, 2008 /
 
Köszönöm! Ez alapján sikerült megcsinálnom, a legelején is ezzel voltam bajban ugyanis a programban példaképp csak timer interrupt volt, ami hivatkozott egy címre de ugyanolyat nem találtam külső megszakításra. Mégegyszer köszönöm a segítséget, ha lenne pontom akkor szivesen adnék.
(#) Dudus válasza zsuscsinyo hozzászólására (») Nov 4, 2008 /
 
Nincs mit!

(pontot nem gyűjtök ne aggódj emiatt )
(#) Moderátor hozzászólása zsuscsinyo hozzászólására (») Nov 5, 2008
 
Idézet:
„ha lenne pontom akkor szivesen adnék.”

Megoldva.
(#) vtsoftware hozzászólása Nov 6, 2008 /
 
Sziasztok

Szerettem volna utánépíteni egy AVR órát ATMega8-al, de sajna valami nem stimmel vele.
Ide feltettem egy videót róla.
A videón nem a kis FPS miatt látszik úgy mintha "egyirányú knight-rider effektet játszana", szemmel nézve is ilyen.
És egyáltalán nem is számol semmit sehova.
Az óra cókmókját csatoltam. Valaki meg tudná mondani hogy segíthetek rajta?
Nem tudom attól előfordulhat hogy belsó oszciról járatom. Nem tettem rá sem kvarcot, sem kondit mivel ilyen kvarcom nincs is hozzá...

Köszi szépen

avr_clock.zip
    
(#) TavIR-AVR válasza vtsoftware hozzászólására (») Nov 6, 2008 /
 
Igy 1 MHzrol jar... Ehhez 1 MHz-vel ujra kellene forditani a programot (a pontossagarol ne beszeljuk )
(#) vtsoftware válasza TavIR-AVR hozzászólására (») Nov 6, 2008 /
 
Őőő... azt hogy kell?
Nem időt mérni/órának kell, csak szeretnék belőle tanulni...
(#) zsuscsinyo hozzászólása Nov 6, 2008 /
 
Ahogy az mindig is lenni szokott, a biztos működőből áttérni egy bizonytalanra, szokatlanra, nagyon nehéz...

A PIC-ről az AVR-re már sikerült, viszont a Basic nyelvtől nehezebb az elszakadás... Bepróbálkoztam a WinAVR nevű programnál követtem a cikket ami itt van a HE-n. (Elvileg) STK200-as programozóm van, mellékeltem a rajzát. A gondom csak az vele hogy az istenért nem akarja felismerni a programozót, vagy nem tudja kezelni... nemtudom... amikor megpróbálom felírni ezt kapom...

Tudna valaki egy "Működőképes" C-nyelvű programot ajánlani, és kicsit bevezetni hogy miket is kell beállítani? Most is rááldoztam az egész estét hogy kilábaljak ebből a gubancból, de nem sikerült :no:

Eddig Ponny-val programoztam, azon belül pedig ez volt beállítva: AVR ISP I/O LTP1

Remélem hamarosan elmélyülhetek a C nyelv rejtelmes világába

A segítséget előre is köszönöm!
(#) trudnai válasza vtsoftware hozzászólására (») Nov 7, 2008 /
 
Nezd meg az ISR-t es csereld le a 'prescaler' figyeleset 15.258789063 -re.... ha tudod - ezert irta tobbek kozott TavIR, hogy a pontossagarol ne beszeljunk, es akkor hozza fuznem, hogy az a furcsa erteku kristaly nem veletlen ott...
(#) IMi válasza zsuscsinyo hozzászólására (») Nov 7, 2008 /
 
Hello!
Említetted a BASIC-et , ott (BASCOM) próbáltad már a programozódat?
Nézt át az lpt port beállításait, a proc megkapta a tápfeszt?
TavIR-AVR fórumtársun lapján sok hasznos infót találsz igaz basic-hez, pl ITT foglalkozik az STK200-al.
(#) zsuscsinyo hozzászólása Nov 7, 2008 /
 
Innen építettem meg az STK200-at mégis a Bascom azt írja hogy: "Could not identify chip with ID: FFFFFF"

A programozó működik, gond nélkül a PonnyProg2000-el tudom használni. Követtem az utasításokat és semmi...

De most már elég elszánt vagyok hogy hagyom a Basic nyelvet. Ezért keresek egy biztosra működő C compillert és vele működő programozót. A mikroBasic már marhanagy kódokat generált, az Attiny13-at már nem tudta kezelni...

(#) TavIR-AVR válasza zsuscsinyo hozzászólására (») Nov 7, 2008 /
 
LPTport beallitva?

Bascom esetén a TVICPORT.DLL (setupIO) feltelepült?

setupio.exe
    
(#) TavIR-AVR válasza zsuscsinyo hozzászólására (») Nov 7, 2008 /
 
Programozónak a STK200/300 van kiválasztva?
A céláramkörről tápot kap?

Végső esetben a Bascomban a PonyProg, mint External Programmer is megadható....
(#) googa hozzászólása Nov 7, 2008 /
 
Sziasztok! Azt hallottam, hogy az AVR-ek bizonyos típusai LINUX kompatibilisek, vagyis egyes LINUX módosítások képesek rajtuk operációs rendszerként futni. Hallottatok erről, vagy igaz ez?
(#) zsuscsinyo válasza TavIR-AVR hozzászólására (») Nov 7, 2008 /
 
Szia! Igen STK200/300 van kiválasztva, feltelepítettem, újraindítottam és még mindig ugyanaz. A céláramkörről kap tápot, eddig kifogástalanul működött úgyhogy azzal nincs gond. Fogalmam sincs mi a hiba... de már nem Basic-ben akarok gondolkodni
(#) tibi0531 válasza zsuscsinyo hozzászólására (») Nov 7, 2008 /
 
C nyelvhez kezdésnek tudom ajánlani a Codevision AVR C fordítót, nekem is bonyolultnak tűnt a WinAVR elsőre. Ha már kicsit belejöttél, nem fog gondot okozni az utóbbi sem. Elvileg kezeli sz STK200-as programozót is.
(#) icserny válasza googa hozzászólására (») Nov 7, 2008 /
 
Az AVR mikrovezérlők erőforrásai nem elégségesek ehhez, de az izmosabb ARM kategóriájú processzorokon már valóban futtatható Linux. Lásd pl. az Olimex ajánlatában az ATMEL AT91SAM9260 mikrovezérlővel felszerelt SAM9-L9260 fejlesztői kártyát.

  1. SAM9-L9260 is low cost development platform with ARM9 microcontroller, 64MB SDRAM and 512MB NAND Flash. The board have Ethernet 100Mbit controller, USB host, USB device, RS232 and 40 pin extension port with all unused SAM9260 ports available for add-on boards. SAM9-L9260 have waste amount of Flash and RAM and runs Linux, WindowsCE and other RTOS natively. RTC clock is backup with 3V Li battery.


Kép: Hivatkozás
(#) googa válasza icserny hozzászólására (») Nov 7, 2008 /
 
Ez az AVR meg ARM nem volt nekem egyértelmű, vagyis még most sem az, és éppen ezért kérdezek.
Köszönöm!
(#) trudnai válasza googa hozzászólására (») Nov 7, 2008 /
 
Atmel a gyarto ceg, AVR az egyik termeke, masik az ARM - ill ez utobbit mas gyartok is gyartjak, de ez most lenyegtelen. Elmeletileg mivel gcc fordito van AVR-re is ezert lehetne kesizteni linux valtozatot, azonban ahogy icserny mar emlitette a RAM es egyeb eroforrasok igencsak leszukitik a lehetosegeket, ezert a gyakorlatban nagy valoszinuseggel nem mukodne egy ilyen. A "nagy testver", az ARM azonban elegendo eroforrasokat kinal - ARM-eket a szmaitasi teljesitmenye miatt mar inkabb a processorok (CPU) kategoriajaba szoktak sorolni mig az AVR-eket a mikrovezerlok (MCU) koze, bar ez a felosztas az Atmel ARM eseteben nem igaz hisz sajat belso memoriaval es buszvezerlovel rendelkezik.
(#) icserny válasza googa hozzászólására (») Nov 8, 2008 /
 
Idézet:
„Ez az AVR meg ARM nem volt nekem egyértelmű”

Nézd meg a gyártó honlapján a gyártmánycsaládokat! Az AVR kontrollerek zömében 8 bites felépítésűek (PIC18F kategória) - ezek nyilvánvalóan nem alkalmasak a Linux futatására. Kivétel ezalól az AVR32 AP7 processzorcsalád, ami 32 bites felépítésű és eléri azt a teljesítményt ami a Linux futtatásához kell.

Az ARM (licenszelt) felépítésű processzorok már 32 bitesek, közülük a SAM9 és efölötti kategóriájú gyártmányok alkalmasak Linux futtatásra ((az ábra közepe és tőle jobbra)
Kép: Hivatkozás
(#) zsuscsinyo hozzászólása Nov 9, 2008 /
 
Hihetetlen hogy mennyivel jobb ez a C nyelv, olyanokat is meg tudok csinálni amikre még nem is gondoltam, tegnap kezdtem el és már az LCD-t programozom vele
(#) googa válasza zsuscsinyo hozzászólására (») Nov 9, 2008 /
 
Idáig mivel próbálkoztál?
(#) zsuscsinyo válasza googa hozzászólására (») Nov 9, 2008 /
 
Szépen végigmásztam az elejétől:

- Regiszterek állítása I/O
- Portok kezelése (be és kivitel)
- For ciklus, végtelen ciklus
- Bitrotáció
- Deklarálások
- Feltételkezelés
- LCD vezérlés, karaktergenerálás
- Megszakításkezelés

stb.. Most csak ezek jutottak eszembe
(#) googa válasza zsuscsinyo hozzászólására (») Nov 9, 2008 /
 
Jajj, ez jó, ügyes vagy! Egyébként így is kell. Különben arra gondoltam, hogy milyen nyelven programoztál eddig?
(#) zsuscsinyo válasza googa hozzászólására (») Nov 9, 2008 /
 
Jah bocsi, Basic nyelven, de nem bántam meg hogy a süllyesztőbe dobtam
(#) vtsoftware hozzászólása Nov 11, 2008 /
 
Sziasztok

Van az ATMega8-nak a DIP és TQFP tokozása.
A DIP-nek ugye 28, a TQFP változatnak pedig 32 lába van.
A TQFP-n van két plusz GND és VCC lába valamint egy ADC6 (19.) és ADC7 (22.) lába. Ez a DIP-en nincs.
Nekem az ADC6 (19.) láb kellene de a DIP IC-nél.
A kapcsrajz szerint a PB0, ICP (12.) láb szabad.

Valahogy át lehet-e írni a programot hogy működjön DIP fajta IC-vel?

Köszi szépen
(#) Norberto válasza vtsoftware hozzászólására (») Nov 11, 2008 /
 
Idézet:
„kapcsrajz szerint”


Melyik?
(#) vtsoftware válasza Norberto hozzászólására (») Nov 11, 2008 /
 
Bocs Most nézem...
Ő lenne az
Amúgy nem at IC ára a bajom (520,-Ft) hanem mert SMD.
Előbb pedig mielőtt nyákra szerelve megépíteném, szeretem a dolgokat előbb próbapanelen összerakni, a másik meg hogy DIP ATMega8 IC-m van is itthon.
Összeszorított foggal: de 16Mhz-s kvarcom bezzeg nincs
Következő: »»   79 / 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