Fórum témák

» Több friss téma
Fórum » MSP430 mikrovezérlők
 
Témaindító: gomzito, idő: Ápr 21, 2006
Témakörök:
Lapozás: OK   51 / 139
(#) icserny válasza szikorapéter hozzászólására (») Ápr 10, 2012 /
 
Idézet:
„A 6Mhz-s kristállyal csak arra céloztam hogy ilyenem van itthon...”
Gondoltam. Én meg arra céloztam, hogy az MSP430G2xxx mikrovezérlőkhöz ez a MHz-es nagyságrend nem jó (32 kHz-es való hozzá, ami esetleg régi alaplapból, vagy kvarcórából is kitermelhető)

Ha nem állítottál be semmit, akkor az 1 MHz körüli DCO az alapértelmezett órajelforrás, ahhoz nem kell kvarc. Ugye, perifériákhoz sem használja az ACLK jelet a programod?
(#) szikorapéter válasza icserny hozzászólására (») Ápr 10, 2012 /
 
Hát eddig csak LED-eket meg egy dallamot töltöttem át.Még nem nagyon értek ehhez a programozáshoz....ehhez a fajta programerhez a csipen keresztül lehet kötni 8bit-es alkatrészelet mert abból rengeteg van itthon egy csomó szétszedett comodor meg ilyen nagyon régi számítógép alkatrészek(I/O kártya,videókártya,comodore pet alaplap,comodor 64+/4alaplap)
(#) Smithy87 hozzászólása Ápr 14, 2012 /
 
Üdv!

Lenne egy kérdésem. Olvasgatom az Órajeles cikket. Nekem kellene egy 40Khz egy négyszögjel egy ultrahang adóhoz. De az MSP-nek kb 8MHZ en kellene futnia ha jól gondolom, hogy legyen elég idő a bejövő lábat tiltani és engedélyezni a fogadáshoz. A cikkben azt írta a szerző, hogy 1,2,4,8 as osztást tudunk megvalósítani ha jól emlékszem. Na most ezekkel az osztókkal kissé problémás a 8Mhz vissza osztása 40khzre. Valamint az is kérdésem lenne, hogy külső áramköri elemek nélkül az egyk lábon ki tudok e adni egy mondjuk 10 impuzusból álló 40khz-s jelsorozatot?
(#) colosseum hozzászólása Ápr 14, 2012 /
 
az alap óra jelet tudod leosztani az smlckra és stb ra.
ergo ha dco 8mhz div 8 akkor smlck 1mhz. ami akár 1 hzre is le tudsz osztani.( ha jol emlékszem)

benne van az óra jel generátor doksiban az osztások.

De icserny kolléga majd szakszűbben leírja mint én ez olyan joazan paraszt eszes


ui: elkészült a hőmér projekt nyákja is telis tele smdvel( 8db XD ) majd teszek fel képeket ha valakit érdekel
(#) ban.laszlo válasza colosseum hozzászólására (») Ápr 14, 2012 /
 
Szia!
PT100-al mérsz hőfokot? Engem érdekelne a téma hobbi szinten.
(#) colosseum válasza ban.laszlo hozzászólására (») Ápr 14, 2012 /
 
Szia!

Texas Instrument tmp124-el
(#) ZsoltiD hozzászólása Ápr 14, 2012 /
 
Sziasztok!

Nemrég én is beszerváltam az EXP430G2 launch padot.
Jelenleg egy M430G2553 mikrovezérlővel használom.
Még csak próbálgatom, felmerült bennem két kérdés.:

1 - Az oldalon is említett kódnál, ami egy LED villogtatását teszi lehetővé egy __delay_cycles(250000) függvény segítségével próbáltam egy változóval meghatározni a várakozási időt a következőképpen:
  1. #include "io430.h"
  2. #include "intrinsics.h"
  3. unsigned long a;
  4.  
  5. void main(void) {
  6.          WDTCTL = WDTPW + WDTHOLD;       //Letiltjuk a watchdog időzítőt
  7.          P1DIR |= BIT6;                  //P1.0 legyen digitális kimenet
  8.          a=500000;
  9.          while(1) {
  10.            P1OUT ^= BIT6;                //P1.0 állapotának átbillentése
  11.            __delay_cycles(a);            //Várakozás kb. 250 ms ideig
  12.          }
  13. }

Valamiért rikácsol a delay-es sornál, hogy: "Error[Ta003]: Intrinsic function parameter must be literal "
Miért nem enged beleírni változót, hogy kéne megoldani?

2 - Valahogy lehetséges az, hogy érzékeljek/vizsgáljak valamelyik két be-ki menete között egy rövidzárat (Pl.: P1.4 és P1.5 közötti rövidzárat? (Amúgy számkombinációs kódzárnál használnám)

Köszönöm!
Zsolti
(#) idlob válasza ZsoltiD hozzászólására (») Ápr 15, 2012 /
 
A __delay_cycles() függvényben a fordító előre kiszámol olyan paramétereket, amire futási időben vagy nincs lehetőség vagy még inkább idő nincs. Ezért "Intrinsic function": bennfentes függvény.
Ha mégis változtatható hosszúságú időzítés kell, akkor ciklus segítségével egy kisebb késleltetés ismételgetésével tudod előállítani.
A másik problémádra: az egyik lábat kimenetre és magas szintűre állítod, a másikat bemenetre és figyeled az állapotát. De ugyan miért tennél ilyet? Az egyik lábon bekapcsolod a felhúzó ellenállást, a kapcsolót pedig a láb és a föld közé kötöd.
(#) ZsoltiD válasza idlob hozzászólására (») Ápr 15, 2012 /
 
Köszi a gyors választ!
Az elsőt értem.
A másodiknál bonyolultabb a helyzet, mert mint ahogy írtam számkombinációs nyomógombos felületről van szó, amin 12 db karakter van (0,1,2,...,*,#), és mindössze 7 darab kivezetése van az egész dolognak, és csak ezeket tudom vizsgálni. "Össze-vissza" vannak kötözgetve (természetesen egy gomb lenyomásánál csak két kivezetés között van rövidzár), de a 7-ből pl 1 van, mikor 7 gombnál is használatos.
(#) ZsoltiD válasza ZsoltiD hozzászólására (») Ápr 15, 2012 /
 
Itt van egy ábra a nyomógombos cucchoz.
Bocs a Móricka ábra miatt, de a lényeg látható.
Itt
A középső sornál a számozások a kivezetések, és az összekötések pedig egyes gombok lenyomásánál érzékelhető rövidzárak.
(#) ZsoltiD válasza ZsoltiD hozzászólására (») Ápr 15, 2012 /
 
Vagy csináljam úgy, ahogy írtad, csak másodpercenként többször is vizsgálnám mind a 12 kombináció ki,be menetének állapotát? ("az egyik lábat kimenetre és magas szintűre állítod, a másikat bemenetre és figyeled az állapotát.")
(#) idlob válasza ZsoltiD hozzászólására (») Ápr 15, 2012 / 1
 
Akkor ez egy multiplexelt billentyűzet. Valóban azt tudod csinálni, amit írsz, hogy pl. a sorokra rendre feszültséget kapcsolsz, majd megnézed melyik oszlopon jön ki.
Létezik többféle megvalósítása, ezt vagy a dokumentációból, vagy méregetésből/szétszedésből tudod megállapítani. Pl. a charlieplexingről találtam cikket.
(#) mechanika hozzászólása Ápr 15, 2012 /
 
Sziasztok!

Msp430-mikrovezérlőt szeretnék ilyen modullal vezérelni:Bővebben: Link

Két kérdésem lenne:
1. a nyitott kollektoros lábakon kilépő 5v-ot hogyan lehet a legegyszerűbben a mikrovezérlő bemenetére kapcsolni (ami ugye 3,6v visel el maximum)? Icserny korábbi hozzászólásában olvastam, hogy: "Egyszerű esetben az egy feszültségosztóval megoldható." Ez hogyan néz ki a gyakorlatban? Egy alkatrésszel megoldható?

2. a készüléknek max. 3 ledet kell vezérelnie+ ehhez jön az rf vevő 5mA-es fogyasztása.
A tápellátást ceruza akkuról gondoltam megoldani step-up konverter segítségével. A másik kérdésem erre irányulna, hogy hogyan érdemes előállítani a vevőnek szükséges 5v-ot illetve a mikrovezérlőt működtető kb.: 3,5 v-ot?
(Fontos lenne, hogy minél tovább működjön feltöltés nélkül és ne legyen túl nagy méretű az akksi.
A mikrovezérlő ideje 90%-ában LPM4 üzemmódban pihenne.)
Segítségeteket előre is köszönöm.
(#) szitko válasza mechanika hozzászólására (») Ápr 15, 2012 /
 
Szia. Az 5V -> 3.3V topikban rengeteg megoldás van, de a legegyszerűbb az ellenállásosztó, 2db ellenállásal.
Ha step-up konverterrel akarod megoldani a tápellátást akkor az MC34063-at javaslom, (szintén van topikja), de több akkuval jobban jársz.
(#) icserny válasza mechanika hozzászólására (») Ápr 15, 2012 /
 
Idézet:
„1. a nyitott kollektoros lábakon kilépő 5v-ot hogyan lehet a legegyszerűbben a mikrovezérlő bemenetére kapcsolni (ami ugye 3,6v visel el maximum)?”
A nyitott kollektoros kimeneten nincs 5 V, hanem "földre húz". Ha egy ellenállás egyik végét a +3.5 V-os tápfeszültségre kötöd, a másik végét pedig a nyitott kollektoros kimenetre, akkor máris 3.5 V-os jelszintű kimeneted van, ami közvetlenül ráköthető a mikrovezérlőre.
(#) mechanika válasza icserny hozzászólására (») Ápr 15, 2012 /
 
Köszönöm ez nagyon jó hír!
Milyen paraméterrel rendelkező ellenállást használhatok erre a célra?
(#) icserny válasza mechanika hozzászólására (») Ápr 16, 2012 /
 
Például 1 kOhm.
(#) tloszk hozzászólása Ápr 16, 2012 /
 
Sziasztok!

Mikrovezérlők témakörében eléggé kezdő vagyok (konkrétan még egy sem volt a kezemben), de ez a Launchpad nagyon szimpatikus árát tekintve is. Azt szeretném kérdezni, hogy valahol, valamelyik debreceni elektronikai boltban nem lehet véletlenül kapni?

Köszönöm előre is a választ!
(#) icserny válasza tloszk hozzászólására (») Ápr 16, 2012 /
 
Boltban nem árulják, de ingyen házhozszállítják (legalábbis két hete még ingyenes volt a szállítás).
(#) colosseum válasza tloszk hozzászólására (») Ápr 16, 2012 /
 
Szia!

Ha nem tudsz rendelni netről, akkor én megrendelem neked ha akarod és tőlem át tudod venni, én is Db-i vagyok.
(#) szitko hozzászólása Ápr 16, 2012 /
 
Gxxx2-es sorozatnál, hogy tudnám megoldani, két független PWM jel, hardveres előállítását? Plusz még számlálni is kellene, de azt megoldom a WDT-vel.
(#) icserny válasza szitko hozzászólására (») Ápr 16, 2012 /
 
Ha jól csalódom, azokban három Capture/Compare regiszter van. CCR0 adja a periódusidőt, CCR1 és CCR2 pedig a két kitöltést.

A másik megoldás az, amit a http://www.hobbielektronika.hu/cikkek/launchpad_ismerkedes_az_msp43...l?pg=8 mutattam "Két, független PWM csatorna egyidejű vezérlése" címmel. Ez a Timer0_A2 típusú számlálóval is működik, bár nem hardveres pontosságú.
(#) szitko válasza icserny hozzászólására (») Ápr 16, 2012 /
 
Köszi. Kicsit összekevertem az adatlapokat. A G2231-es adatlapját néztem a 2252-es helyett.
Valóban, a Gxxx2-es sorozatban, Timer0_A3 van.

Köszi.
(#) szikorapéter válasza szikorapéter hozzászólására (») Ápr 16, 2012 /
 
Magyarul arra a válaszra keresem a kérdést hogy,az msp felprogramozott chipjével lehet-e 8bites vezérlést csinálni?pl: (régi videókártya,I/O port kártya,commodore pet alaplap,commodor +/4alaplap).
(#) szitko hozzászólása Ápr 16, 2012 /
 
Ha beállítom, hogy a P1.4-en jöjjön ki a TACCR2 jele, akkor miért az SMCLK-t mérem?
  1. P1DIR |= (BIT2 + BIT4);
  2. P1SEL |= (BIT2 + BIT4);    // TACCR1=P1.2, TACCR2=P1.4
  3. .
  4. .
  5. TACCR1 = 200;
  6. TACCR2 = 100;

Az adatlap szerint
Idézet:
„TA0.2/ Timer0_A, capture: CCI2A input, compare: Out2 output”

csak ez az egy kimenete van a TACCR2-nek. Vagy megint rosszul nézek valamit?
(#) icserny válasza szitko hozzászólására (») Ápr 16, 2012 /
 
A P1SEL2 regisztert is be kellene állítani! (Table 16., 40. oldal)
(#) szitko válasza icserny hozzászólására (») Ápr 16, 2012 /
 
Most találtam meg. De nem értem, hogy miért nem tudják odaírni a használni kívánt perifériához, hogy azt is be kell kapcsolni. Vagy meg kéne tanulni az összes adatlapot?
Köszönöm.
(#) colosseum válasza szitko hozzászólására (») Ápr 16, 2012 /
 
Sajnos kb.

De én arra jöttem rá hogy ha nem General I/onak haználod.(tudom nagyon nagy felfedezés XD ).
Akkor mindig be kell lőni a p1sel-t.
Én csak azt nem tudom hogy a p1sel2 mit csinál.
(#) szitko válasza colosseum hozzászólására (») Ápr 16, 2012 /
 
A P2SEL2 meghatározása:
Idézet:
„Secondary peripheral module function is selected.”

A Family User's Guide, Digital I/O 8.2.5. bekezdésnél megtalálod.
Én lassan már úgy vagyok, hogy nem is tanulom, hanem próbálgatom. Ha így nem megy megpróbálom úgy. Mert mire megtalálom, hogy hova írták le, végigpróbálgatom az összes regisztert. (de ez csak vicc)
(#) icserny válasza colosseum hozzászólására (») Ápr 16, 2012 /
 
Idézet:
„Akkor mindig be kell lőni a p1sel-t. Én csak azt nem tudom hogy a p1sel2 mit csinál.”
Bonyolultabb perifériakészlet esetén egy-egy portlábhoz annyi funkció tartozhat, hogy TÖBB BIT kell a kívánt funkció kiválasztásához. Ezért vezették be a P1SEL mellé a P1SEL2 regisztert is. Erről szólnak a 14., 15., 16. stb. táblázatok és a portlábakat leíró sematikus vázlatrajzok.
Következő: »»   51 / 139
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