Fórum témák
» Több friss téma |
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
Lehet, hogy túlbonyolított, de ne engem okolj, ilyenekkel van tele a vízköves topik, ahonnan szedtem. Megrajzoltam magamnak, és kicseréltem benne pár ellenállás, hogy a nekem megfelelő frekvenciákon sugározzon.
Ahogy janyjozsef is írja, a KI1 és a KI2 pontokra kerül a piezo. Én csak egyszerű jumperrel jelöltem, nem rajtam a panelra a piezot. A csatolt elképzelésedet még azért kipróbálom, ha ezt így rá szabad kötni az AVR-re. Az ellenállások értéke maradjon az eredeti, tehát a bázisnál 10k, a kollektornál pedig 470 Ohm?
Kipróbáltam. Így is pattog.
Ja, és az előbb lehet, hogy félreérthető volt: KI1 és KI2 két külön piezohoz tartozik.
Szerintem nem kellene pattognia, de egy oszcilloszkóp mutatná meg, hogy mi is történik valójában.
Szia!
Akkor szerintem lassan egyértelmű, hogy a program a hibás. Az okozza a pattanó hangot.
Folyamatosan kellene kelteni a hangot, hogy ne legyen közben szünet, s kvázi folyamatosan kellene hangolni - valahány periódusonként egy egységgel növelve vagy csökkentve a periódusidőt.
Ezért mondtam a CTC-t. Direkt erre való. Továbbá kettős pufferelt minden változója a timernek ebben a módban (kivéve ICRx) így ha új értéket írsz bele, akkor teljesen periódus helyesen a következő periódusban fog csak update-elődni. Így nem lesz pattanás!
Több oldallal ezelőtt mondtam, hogy amit akartok, arra CTC-t kell használni. Ami a cikkemben volt csipogó, az max arra jó. Többre nem. Arra, hogy bármelyik lábon csipogni lehessen.
Helló mindenki!
Segítségeteket szeretném kérni! ATmega164P mikrovezérlővel egy RS422a szabvány szerint kommunikáló jeladó jelét kellene kezelnem. A uc-en lévő usart képes erre vagy azzal direktbe csak rs232 valósítható meg? Egyelőre nem sikerült használható infókat találnom a neten a kérdéshez, a szabvány meg nincs meg nekem... niches
Ha nem tévedek, az RS422-es szabvány csak a fizikai réteget definiálja (a kábel és az elektromos jelek milyenségét írja le). Így gyakorlatilag lehet használni az MCU USART-ját megfelelő illesztő IC beiktatásával.
A neten egy csomó infó van az RS422/EIA422 ről. Az 'a' jelölés viszont nem tudom, hogy mit jelent.
Sziasztok!
ATtiny 26-ba szeretném használni az ADC-t. Az ACD7/XTAL1/PB4 lábra van kötve a bemenet amit mérni kéne. A gond az, hogy a PB4 valamiért "lehúzza", leterheli a jelet. Tehát a műveleti erősítő kimenetén 3Volt van, de ha rákötöm a PB4 lábra akkor lecsökken 0,6V-ra. Nincs semmi más rákötve a lábra, panelen minden rendben van. Mitől lehet ez?
Egy sima potméteres feszosztóval is ugyanezt csinálja, tehát a proci/program oldalon van a gond.
És elég nagy az áramfelvétele is. Ha közel tápra kötöm 70mA-ig is felmegy.
InitPORT() fgv:
Eszerint kimenetnek állítod a PB4-et. Így persze hogy "lehúzza" a kimeneted.
Köszi!
Ez volt a gond... a "legjobb", hogy ezt néztem át elsőnek, de rendben találtam
Sziasztok!
Azzal kapcsolítban írok, hogy nem találok sehol egy teljes, mindenre kiterjedő leírást az AVR-ek működéséről, vagy könyv is jó lenne a témával kapcsolatban. Még új vagyok itt, és nem találtam korábbi cikkeket:S Remélem ti megleptek: ) Előre is köszi srácok: )
Hát ez nem terjed ki mindenre, mert akkor kb 1000000 oldalas lenne, de nem rossz könyv:
avrC programming ui.: és pár itteni cikk: AVR cikkek
És véletlenül valami magyar leírás a működési elvéről van vajon?
: $
Hi mindenki!
Van egy régi TTL IC-kel működő NIXIE csöves órám, nagyon megtetszett a csövek kék fénnyel való megvilágítása ezért elterveztem, hogy átépítem de akkor már mikroprocesszorosra szeretném. Nekem a pascal jön be és ahogy olvasgatom a cikkeket az AVR tetszik jobban a PIC-el szemben. A MIKROPASCAL for AVR rokonszenvesnek tűnik. Szóval nincs valakinek PASCAL-os óra progija?
HELLO !
Tudtok valamilyen megbízható letöltőprogramot AVR chipekhez ? A PonyProgot húztam le, csináltam egy soros portos programozót és olyan egy éve is ilyet használtam és jó volt most meg csak olvasni lehet vele a chipeket írni és törölni már nem. Százszor átnéztem a progizót de semmi hibát nem találtam. 3 db ATmega8-as chipet próbáltam de egyikkel sem ment. Lehet hogy a chipek mentek tönkre ? A választ előre is kössz.
Tápfeszültséget kap az IC külön?
Gépcsere nem volt? Az újabb sorosportok +/-5Vról mennek, a régiek +/-9Vról...
Nem volt gépcsere. Külső 5V-os táplálást használok az IC-re és az áramkörre is. Gondolod, hogy meg kéne mérni a tápfeszt a sors porton és ha 9V-os akkor egy 78L05-ös stab IC-t betenni ?
Sziasztok!
Van egy AVR Dragonom, az AVR Studio első indításkor frissítette a szoftverét. Ha megpróbálok kapcsolódni nem sikerül, a log. így néz ki:
Egy ATiny45 van ISP-n rácsatlakoztatva. Az isp kábel hossza 25cm. Bármilyen segítséget megköszönök.
Helló,
avr-doper-hez programoznék fel egy atmega8-t bascommal és stk200 (bufferes) lpt programozóval. Látszatra sikerül is a mutatvány, de a doper-t gépre dugva nem ismert eszközként tartja nyilván a windows. Próbáltam driverekkel, stb, semmi. Igazából fogalmam sincs, hogy pl. a fuse biteket hogyan kellene beállítanom, ezeket defaulton hagytam. Olvastam viszont, hogy nagy AVR-ek esetén (pl.: atmega8) ezeket változtatni kell. De hogyan? Milyen logika szerint? Másik, hogy stk200-nál ugye 16MHz-es a kvarc, doper-ben pedig 12MHz-es. Nem fog ez problémát okozni? Bascomban a kvarcot állítottam 16MHz-re, sebességet 57600Baud-ra, chipet atmega8-ra, programozót stk200-ra. Mást nem piszkáltam. Programozó amúgy felismeri a chipet, írni, törölni is tudom, csak ahogy már írtam, nem jó. Tudnátok segíteni, hogy konkrétan mit állítsak be a fuse bit oldalon? Köszönöm!
Sziasztok!
Egy olyan kapcsolást szeretnék csinálni ATtiny45 segítségével, ami bekpcsol egy ledet, ha egy gombot 3 mp-ig nyomva tartok* és kikapcsolja az ha ugyanezt a gombot 5 mp-ig tartom nyomva. *A kódból látszik, hogy a nyomva tartást nem figyeli, csak azt, hogy az első nyomástól számítva 3/5 mp múlva is le van-e nyomva a gomb. Az általam írt(nem működő) program így néz ki:
Valaki legyen szíves megmondani, hogy mi benne a hiba.
Szia.
Először is.
És szerintem a (-(LED_ALL)) -nál a - nem kell.
Valószínű, hogy a komplemensét akarta képezni (ellentettjét), viszont az valóban nem a "-" jel hanem a "~", ami így nézne ki:
Nemrég kísérletezek AVR-ekkel. Most az RS232 kommunikációval birkózok, ehhez egy ATtiny2313 mikrovezérlőt használok + MAX232 IC-t soros kábelen. (LED be-ki kapcsolás PC-ről).
Működik is szépen, de szeretném vezeték nélkül is megcsinálni. A kérdéseim: 1: Ha egy BTM-112 vagy BTM-222 bluetooth modult használnék, akkor kell-e a MAX232 IC vagy az már benne van a modulban? 2: A programozás ugyan az mint kábeles esetben, csak most egy virtuális COM porton zajlik az adatforgalom.
Hello!
Segítség kellene elakadtam A problémám az lenne hogy megrendeltem a topi féle USB-s AVR-doper ISP-s programozót. Össze is raktam fel is ismeri a gép COM portként. De amikor megnyitom az AVRStudio-t és rákattintok a Display the 'Connect' dialog-ra és feljön a párbeszéd ablak kiválasztom az STK500 or AVRISP-t éss rákattintok a connectra nem csinál semmit. Ez miért van? Mit kellene mér beállítanom vagy telepítenem hogy működjön? Fontos lenne! Segítségeteket előre is köszönöm.
Üdv!
Furcsa problémám akadt az egyik cikkben leírt ni-mh töltővel. Látszólag rendesen működig 6mp tölt aztán sönt és mér, de a végén nem óhajtja lekapcsolni a töltést amikor az aksik már elérték az 1.41V-ot pedig a mérő lába megkapja az osztott feszt(ami kel neki ahhoz hogy átkapcsoljon). Próbáltam másik avr-el ugyanez a helyzet. Mi lehet a gond? ( tápra tippelnék, bár usb-ről jár az avr) Köszönöm!
Amit írtál azt hol kellene kijavítanom?
A - jelet átírtam ~-ra, így bekapcsol, de nem ki még nem.
A nyomógombra tettél felhúzó ellenállást? Mert a programban nem látok, így viszont lóg a levegőben és instabil állapotot vesz fel. Ha viszont belső felhúzóellenállást akarod bekapcsolni akkor ezt még tedd hozzá a 15. sor után:
Célszerű a definiciókat zárójelbe tenni, mivel én már találkoztam olyan esettel, hogy WinAVR lefordította viszont hibásan, vagy egyáltalán nem is működött. Például így: [code=c]#define LED_ON (PORTB |= (1< |
Bejelentkezés
Hirdetés |