Fórum témák

» Több friss téma
Cikkek » AVR-es tranzisztor-teszter beállítása
AVR-es tranzisztor-teszter beállítása
Szerző: pluto, idő: Szept 27, 2013, Olvasva: 27577, Oldal olvasási idő: kb. 8 perc
Lapozás: OK   6 / 7

A szerző az AVRDude segítségével fejleszt. Mi most az AVRStudio 6.xx verzióját használjuk, mégpedig parancssoros „üzemmódban”. Vagyis semmi másra nincs szükségünk, mint egy telepített AVRStudio 6.xx-re, valamint egy egyszerű szövegszerkesztőre, mellyel a Makefile-t szerkeszthetjük. Mindenkinek csak ajánlani tudom a Notepad++ alkalmazást, ami kifejezetten erre lett kihegyezve. Letölthető innen: http://notepad-plus-plus.org/.  A fordítás menete a következő:  a Start menűben felhívjuk az Atmel/Atmel Studio 6.x Command prompt bejegyzést. Itt megnyílik egy parancssoros ablak, majd elballagunk abba a mappába, ahol az általunk szerkesztett Makefile található. Itt azt mondjuk, hogy „make all”, mire a compiler szépen lefordítja a forráskódot és létrehozza a HEX és EEP fájlt, amit aztán már égethetünk is.

És most a lényeg, a MAKEFILE opciók:

PARTNO a felhasznált processzor

m8 = ATmega8

m168 vagy m168p = ATmega168

m328 vagy m328p = ATmega328

Default: PARTNO = m168

 

UI_LANGUAGE a jelenleg rendelkezésre álló nyelvi változatok: LANG_ENGLISH, LANG_GERMAN, LANG_POLISH, LANG_CZECH, LANG_SLOVAK, LANG_SLOVENE, LANG_DUTCH

Default: UI_LANGUAGE = LANG_ENGLISH

 

LCD_CYRILLIC abban az esetben, ha egy cyril karakterkészletű LCD-t használunk. A „μ” és az „Ω” hiányzik a karakterkészletből. Az opció megadásával a software betölti mindkét karaktert.

CFLAGS += -DLCD_CYRILLIC

Default: ----------

 

LCD_DOGM Amennyiben az LCD, ST7036-s vezérlővel dolgozik, a kontraszt a programból van állítva. Software verzió 1.08k-tól.

CFLAGS += -DLCD_DOGM

Default: ----------

 

STRIP_GRID_BOARD Ez az opció a PortD pin kiosztását változtatja meg egy adott próbapanel használatakor. Erre nem tér ki ez a leírás.

Default: ----------

 

WITH_SELFTEST Az opció aktiválja a Software-be épített teszt funkciót, amit három a mérő bemenet rövidre zárásával, valamint mérésindítással aktiválunk.

Default: CFLAGS += -DWITH_SELFTEST

 

AUTO_CAL A kondenzátorméréshez szükséges offset kiegyenlítés értékét visszaírja az EEprom-ba, így további mérésekhez használható. Amennyiben a null-offset beállítása után csatlakoztatunk egy 100 nF - 20 µF értékű kondenzátort az 1-es és 3-as mérő pin-re, akkor az analóg komparátor offset értéke is meghatározásra kerül. A port kimenetek ellenállása minden méréskezdésnél újra meghatározásra kerül.

Default: CFLAGS += -DAUTO_CAL

 

FREQUENCY_50HZ A kalibráció végén egy percen keresztül a Port2 és Port3 kimenetekre ad  50Hz-es szignált.

CFLAGS += -DFREQUENCY_50HZ

Default: ----------

 

WITH_AUTO_REF Kisebb kapacitású (< 40 µF) kondenzátorok mérésénél, méri a referenciafeszültséget a megfelelő mérési faktor meghatározására.

Default: CFLAGS += -DWITH_AUTO_REF

 

REF_C_KORR Kapacitásmérésnél a kiolvasott referenciafeszültséghez ad egy offset értéket (mV). Kisebb kondenzátorok kapacitásmérésének finomhangolására használjuk. Amennyiben az AUTO_CAL opciót is választottuk, a megadott érték csak még egy plusz offset, a komparátor-offset mellett. Egy 10-es érték cirka 1%-kal csökkenti a mérési eredményt.

Default: CFLAGS += -DREF_C_KORR=12

 

REF_L_KORR Induktivitás mérésnél adhatunk a referenciafeszültséghez még egy offset értéket (mV). A REF_C_KORR offset, illetve a kalibrációnál talált offset is figyelembe van véve az induktivitás mérésnél. Amennyiben a mérés a 680 Ω ellenállás nélkül megy végbe, úgy az érték kivonásra kerül, ellenkező esetben hozzáadódik.

Default: CFLAGS += -DREF_L_KORR=40

 

REF_R_KORR A belső referenciafeszültséghez ad egy offset értéket (mV). Ezzel az offset értékkel kiegyenlíthető a referenciafeszültség váltásból adódó eltérés az ellenállásmérésnél. Ha az AUTO_CAL opciót választottuk, akkor ez csak egy offset érték az AUTO_CAL funkcióban talált feszültségkülönbséghez.

Default: CFLAGS += -DREF_R_KORR=3

 

C_H_KORR Korrekciós lehetőség, nagyobb kondenzátorok méréséhez. Egy 10-es érték cirka 1%-kal csökkenti a mérési eredményt.

Default: CFLAGS += -DC_H_KORR=0

 

WITH_UART A pin PC3-t soros szöveg kiadására használja (V24). Ha az opciót nem használjuk, úgy a PC3-ra tehetünk egy 10:1-es feszültségosztót, amivel például z-diódák letörési feszültségét mérhetjük. Ezt a mérést másodpercenként háromszor végzi el a készülék, amíg a START gombot nyomva tartjuk.

Default: CFLAGS += -DWITH_UART

 

CAP_EMPTY_LEVEL Itt határozzuk meg azt a töltési szintet (mV), ahonnan már egy kondenzátort üresnek tekinthetünk. Az érték növelhető, ha a kondenzátor kisülése egy meghatározott időn belül nem fejeződik be. Ebben az esetben a készülék egy hosszabb mérési ciklus után, „Cell!” hibajelentéssel reagál.

Default: CFLAGS += -DCAP_EMPTY_LEVEL=4

 

AUTOSCALE_ADC Bekapcsolja az automatikus tartományérték választót. Az ADC vagy a Vcc-t használja, vagy a belső referencia feszültséget. A belső referencia feszültség ATmega8-nál 2,56 V, a többinél 1,1 V.

Default: CFLAGS += -DAUTOSCALE_ADC

 

ESR_ZERO A nulla értékét adja meg az ESR mérésnél. A megadott értékre cseréli a kalibrációnál meghatározott mindhárom pin kombinációjának a nulla értékét. A nulla érték, a méréssel meghatározott értékből kerül levonásra.

Default: CFLAGS+= -DESR_ZERO=20

 

NO_AREF_CAP Ezzel jelezzük a software felé, hogy az AREF Pin (Pin21) nincs kondenzátorral hidegítve. Rövidebb időket eredményez aktivált AUTOSCALE_ADC opciónál az átkapcsolásnál, bár valójában 1 nF értékű kondenzátort csatlakoztatunk. Egy kicsit bővebben:

Az AREF pin 100 nF helyett 1 nF-os kondenzátort kapott. Ennek az oka nagyon tanulságos. Egészen odáig, hogy a referencia feszültség állandó, a 100 nF rendben van. Abban az esetben viszont, ha a software-t az ATmega 168/328-ra fordítjuk, az 5 V referencia feszültségről automatikusan átvált a belső 1,1 V referencia feszültségre, amennyiben a mérendő feszültség 1 V alá esik, a magasabb felbontás érdekében. Sajnos az 5 V -> 1,1 V átváltás meglehetősen lassú, ca. 10 ms. A kondenzátor cseréjével viszont az átváltási idő számottevően csökkenthető. A mérés minőségére az eddigi tapasztalatok szerint nincs kihatással, sőt, teljességgel el is hagyható. Ha viszont valaki ragaszkodna a 100 nF értékhez, akkor a make opció NO_AREF_CAP megszüntetésével fordítsa le. Itt láthatóak a kapcsolási idők 1 nF értékű kondenzátorral:

 aref2_1v.png

5 V -> 1.1 V

aref2vcc.png

 1.1 V -> 5 V

Mint az látható az 5 V -> 1,1 V átváltás jóval lassabb, mint vissza az 5 V-ra. Ha ehhez még egy 100 nF-os kondenzátor is társul, úgy a kapcsolási idő ca. faktor 100-zal hosszabb.

Default: CFLAGS+= -DNO_AREF_CAP

 

OP_MHZ Határozza meg, mekkora órajellel dolgozik a készülék. A software 1 MHz, 8 MHz és 16 MHz-cel lett tesztelve. Az 1 MHz-es órajel használata az alacsonyabb felbontás miatt nem ajánlott.

Default: OP_MHZ = 8

 

RESTART_DELAY_TICS Ezt az értéket 6-ra kell állítani, amennyiben ATmega168 vagy ATmega328 kvarc nélkül, belső oszcillátorral fut. Ha nincs megadva az érték, a software 16384 órajelet vár a startig, kvarc-üzemben.

CFLAGS += -DRESTART_DELAY_TICS = 6

Default: ----------

 

USE_EEPROM Táblázatok és állandók az EEprom-ban lesznek tárolva, egyébként a programtárolóban (Flash). Mindenféleképpen ajánlott az EEprom tároló használata!

Default: CFLAGS += -DUSE_EEPROM

 

EBC_STYLE Ez határozza meg a tranzisztor lábkiosztás megjelenítésének módját, hogy az „EBC=…” vagy „GDS=…” formában történjen meg. Ez a megjelenítési mód takarékosabban bánik a program memóriával. E nélkül az opció nélkül a lábkiosztás így kerül megjelenítésre: „123=…”, mikor is bármelyik pont lehet E(mitter), B(ázis), K(ollektor). Illetve G(ate), D(rain), S(ource). Ha a mérőpontok sorrendje nem 1,2,3 balról jobbra, akkor egyszerűen megfordíthatjuk az EBC_STYLE=321 opcióval. Ez a „321=…” lábkiosztásnak felel meg.

CFLAGS += EBC_STYLE

Default: ----------

 

NO_NANO Kapacitásmérésnél az eredmény nF helyett μF-ban kerül kijelzésre.

CFLAGS += NO_NANO

Default: ----------

 

PULLUP_DISABLE Ez határozza meg, hogy a belső felhúzó ellenállások használaton kívül kerülnek-e. Ebben az esetben külső felhúzó ellenállás szükségeltetik, a Pin13(PD7) és VCC-re csatlakoztatva. Ezzel az opcióval megakadályozzuk a felhúzó ellenállások esetleges kihatását a mérő-portokra (PortB és PortC) .

Default: CFLAGS += -DPULLUP_DISABLE

 

ANZ_MESS Ez az opció határozza meg, hogy hány konverziót indítson az ADC, melyek értéke összeadásra kerül az átlag érték meghatározásához. Nagyobb értékek pontosabb eredményt adnak, de tovább tart a mérés. Az „ANZ_MESS” értéke 5 és 200 között változhat. Egy 44 ciklusból álló ADC mérés cirka 5 ms-ig tart.

Default: CFLAGS += -DANZ_MESS=25

 

POWER_OFF Aktiválja az automata kikapcsolást. Ha kihagyjuk, a mérések egy végtelen ciklusban ismétlődnek, amíg meg nem szakítjuk a tápellátást. Amennyiben lekapcsoló áramkör nélküli mérőt építettünk, hagyjuk figyelmen kívül ezt az opciót (ebben az esetben a funkció nem értelmezhető). Ha automata kikapcsolással rendelkezünk és kihagyjuk a POWER_OFF opciót, akkor is létezik egy lehetőség a lekapcsolásra. A méréseredmény kijelzésénél lenyomjuk a START-gombot és néhány másodpercig nyomva tartjuk, míg meg nem jelenik a kijelzőn a „Timeout” jelzés. Ha most felengedjük a START-gombot, megszűnik az áramellátás. A POWER_OFF opciónál azt is megadhatjuk, hányadik olyan mérésnél - ahol nem talált mérendő alkatrészt – kapcsoljon le. Viszont talált mérendő alkatrésznél dupla annyi mérést végez és utána kapcsol ki, hogy egy teljes elem lemerülést elkerüljön, amennyiben csatlakoztatva hagyunk egy alkatrészt. A CFLAGS+=-DPOWER_OFF=5 opció, öt, egymást követő mérés után lekapcsol, ha nincs semmi csatlakoztatva. Tíz, egymást követő csatlakoztatott mérés után is lekapcsol, illetve ha a mérési széria egy másik típussal lesz megszakítva, folytatja a mérést. A mérési eredmények kijelzése 14 sec hosszan történik, egyszeri mérésnél. Sorozat-mérésnél 5 sec (config.h fájlban állítható) . Amennyiben a START gombot bekapcsolásnál hosszan nyomjuk, úgy a szériaméréseknél is 14 sec hosszan mutatja az eredményt. Az ismétlések száma maximum 255. CFLAGS+=-DPOWER_OFF=255.

CFLAGS += -DPOWER_OFF=5

Default: CFLAGS += -DPOWER_OFF

 

BAT_CHECK Bekapcsolja az elemfeszültség ellenőrzését. Amennyiben az opciót nem használjuk, úgy a software verziószámát írja ki. Ha elemről működtetjük a készüléket, mindenképpen hasznos a használata, mivel emlékeztet az elem cseréjére, amennyiben az szükséges.

Default: CFLAGS += -DBAT_CHECK

 

BAT_OUT Amennyiben használjuk a BAT_CHECK opciót, úgy a BAT_OUT bekapcsolja az LCD kijelzőn a feszültségmérést. Ha a polaritás védelmet egy dióda biztosítja, úgy a küszöbfeszültség torzítja a feszültségmérés eredményét, pontosan a küszöbfeszültség értékével mutat kevesebbet. Ezt elkerülendő, használjuk például a BAT_OUT=600 opciót, a felhasznált dióda függvényében. Így a T3 tranzisztoron létrejövő feszültségesést is figyelembe tudjuk venni. Tehát, ha a BAT_OUT opcióhoz értéket rendelünk, az mV.

CFLAGS += -DBAT_OUT

Default: CFLAGS += -DBAT_OUT=150

 

BAT_POOR Itt állítjuk be azt az elem feszültségértéket (mV), ami alatt üresnek tekintünk egy elemet. A figyelmeztetési küszöb 0,8 V-tal magasabb, mint a megadott „üres feszültség”, amennyiben az „üres feszültség” az 5,3 V-ot meghaladja. Egyébként a figyelmeztetési küszöb 0,4 V-tal magasabb. Újra tölthető 9 V-os akkunál ügyeljünk a megadott értékre, nehogy mélykisülésbe vigyük. Amennyiben tölthető akkut használunk, a „Ready to Use” típus az alacsony önkisülése miatt ajánlatos. Mint itt látható, egy LDO még 5,4 V-on is szépen muzsikál, ami egy 7805-ről már nem mondható el. A feszültségszabályzó kiválasztásában azért mindenki a maga számára fontos kritériumok alapján döntsön.

low drop szabályzó (5.4V): CFLAGS += -DBAT_POOR=5400

7805 szabályzó (6.4V): CFLAGS += -DBAT_POOR=6400

Default: CFLAGS += -DBAT_POOR=6400

 

INHIBIT_SLEEP_MODE Megakadályozza, hogy a processzor „Sleep Mode”-ba váltson. Normál esetben, hosszabb szünetekben, a software használja az alvó állapotba váltás lehetőségét, a fogyasztás csökkentésének érdekében. Az alvó állapot használata csökkenti ugyan a fogyasztást, de az alvó állapotból való kilépés növeli a feszültségszabályzó terhelését („rángatja” az áramkört). Ha külső áramforrást használunk, aktiváljuk az opciót. (Megjegyzés: az alvó állapot használata és egy háttérvilágítással rendelkező LCD kettős, már önmagában is egy ellentmondás, bár tény és való, a fogyasztás csökken.)

CFLAGS += -DINHIBIT_SLEEP_MODE

Default: ----------

 

Innentől AVRDUDE felhasználóknak:

 

PROGRAMMER Beállítja a programozó típusát. A megfelelő beállítás feltétlenül szükséges, amennyiben a „make upload” vagy „make fuses” parancssort használjuk. További információk az AVRDUDE kézikönyvben.

PROGRAMMER=avrisp2

 

PORT Beállítja azt csatornát, ahol az AVRDUDE számára az ATmega elérhető. További információk az AVRDUDE kézikönyvben.

PORT=usb

 

További paraméterek a Transistortester.h és config.h fájlokban találhatóak. A Transistortester.h fájl tartalmazza a globális változókat, meghatározza a Port-/Pin beállításokat, valamint az ellenállás értékeket, melyek a mérésekhez használatosak. A config.h fájl tartalmazza a különböző processzortípusok beállításait, várakozási időket, valamint az ADC órajel beállításait. Alapesetben ezeket az értékeket nyomós indok hiányában ne változtassuk!


A cikk még nem ért véget, lapozz!
Következő: »»   6 / 7
Értékeléshez bejelentkezés szükséges!
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