Fórum témák
» Több friss téma |
Mellékelem az általam használt projektet (IAR EW, MSP430G2231). A program a P1.3-ra kötött nyomógomb minden megnyomására eljátssza a zenét. Én a P1.7 lábra akasztottam egy piezo hangkeltőt (egy régebbi számítógép alaplapból lett kioperálva).
Úgy látom a gombal lesz a gond: bekapcsolom felfutó élre a megszakítást. Bekapcsoláskor belefut egy megszakításba és végrehajtódik a megszakítás kezelő.
Ez mitől lehet? Összeszed valami zavart? A program elején így állítom be a megszakítást:
Ezután nem nyúlok a P1.3-hoz.
Tedd át lefutó élre! Alapszint magas, lenyomáskor alacsony, nem?
Igen, alapszint magas, lenyomáskor alacsony.
Így a gomb felengedésekor következk be a megszakítás. Közben arra tipelek, hogy a gombal párhuzamosan kötött 100nF kerámia kondenzátor miatt lehet a bekapcsoláskori megszakítás.
Közben átraktam. Így már nem indul megszakítással.
Köszönöm a segítséget!
A másik megoldás az lehetett volna, hogy az alábbi sor előtt
beiktatsz egy elegendően hosszú késleltetést, amíg beállnak a jelszintek. Hasonlóan, a belső felhúzások bekapcsolásakor is illik várni egy kicsit, amíg a felhúzott bemenetek beállnak. Máskülönben jön a meglepi...
Értem.
Akkor jól gondoltam, hogy a kondenzátor miatt van?
A TimerA Capture modulját próbálgatom, de nem akar összeállni.
A lényeg: (G2553) P2.1-re adok "négyszögjelet" de a "tar" értéke mindig nulla marad. A négyszögjelet egy ss411p bipoláris hall szenzorral állítom elő, úgy, hogy egy mágnest lóbálok elötte. (pontosabban 2 mágnest, egy É és egy D-i pólussal) Valamit nem jól állítok be?
Nem tudom biztosan, de bekapcsoláskor versenyfutás van, amiben a nyomógomb kondenzátora lemaradhat a viszonylag nagyértékű felhúzóellenállás miatt. Az RC időállandóból megbecsülhető, hogy mennyi a feléledési ideje. Ha a program ennél hamarabb élesíti a bemenetfigyelési megszakítást, akkor bukta van.
Ha TA1CCTL0-ben állítod be az elfogást (Capture), akkor tar = TA1CCR1; helyett nem tar = TA1CCR0; kellene a megszakítás kiszolgálásánál?
De igen. Ez bizonyára a próbák miatt maradt úgy, a lényeg, hogy úgy se megy. A próbák alatt azt értem, hogy van egy "teszt" G2553-as m.vezérlőm, amiben a P1.3,4 már elhalálozott, és nem tudom, hogy még melyik láb nem megy. Kipróbáltam új vezérlővel is, de abban se ment.
Megvan! Egy kicsit összekevertem mindent. A megszakítási vektort, a TA0-TA1 stb...
Sziasztok
Ti hogyan oldottátok meg a cél áramkörben lévő proci programozását. Én a LaunchPad-ról vezettem a reset, test, GND, 5v+ jeleket, de a programozó nem ismeri fel a procit. Az átkötő vezeték hossza lehet proléma (50cm)? Idézet: Igen. „Az átkötő vezeték hossza lehet proléma (50cm)?”
Most jutottam hozzá egy HD44780 -as kijelzőhöz
Icserny cikkéből át is vettem a az LCD kezelést 1 az 1 ben. Köszönet érte, működik nagyon jól de csak IAR alatt. CCS alatt hibával leáll. Esetleg valakiinek van CCS -es változata? Idézet: „Esetleg valakiinek van CCS -es változata?” Megpróbáltam átírni. A mellékelt program nálam lefordul, de kipróbálni most nem tudom.
Köszönöm szépen hibátlanul kezeli az LCD -t.
Sziasztok. Egy kis elméleti segítség kéne.
A timer/capture modullal szeretnék sebességet mérni, csak egy kicsit belekeveredtem. Tehát a fenti részletben, a jelelfogásnál az "imp.." változóban összeadom a két elfogás között eltelt időt, és bemásolom "adat"-ba késöbbi feldolgozásra. A kérdésem, ez jó lehet így, vagy halott ötlet?
Köszönöm a segítséget.Az első zenének hol találom meg a forráskódját ugyanebben a formában?Segítséged előre is köszönöm.
1. Az impulzus nevű változó ugye 32 bites?
2. Az elgondolás jónak látszik, de azon ritka eseteket is gondolni kell, amikor versenyfutás van a CCR1 megszakítás kiszolgálása és a Timer túlcsordulása között. Nem ismerem annyira az MSP430-at, hogy fejben végig tudjak gondolni minden eshetőséget. Kellemetlen volna, ha TA1CCR1 pl. 65535-öt (vagy 65534-et) rögzítene, de már a Timer is túlcsordulna, mire a kiszolgálás lefut. A másik izgalmas szituáció, ha a számláló épp túlcsordul, CCR1 már nulla közeli számot rögzít, de a Timer megszakítás még nincs kiszolgálva, nem inkrementál. Ebben talán az MSP430 jobb helyzteben van, mint a PIC, mert CCR1 és a Timer túlcsordulás ugyanazt a megszakítási vektort használják. De nem tudom fejből, hogy melyiknek nagyobb a prioritása.
Idézet: „Az első zenének hol találom meg a forráskódját ugyanebben a formában?” Nem értem a kérdést. Milyen első zenének?
Csak azért írtam azt mert YouTube-on 2 féle van feltöltve , mint videó és csak azért kérdeztem , hogy hol érem el az elsőt.
Persze, hogy 32 bites. Én attól félek, hogy nem lesz ideje a vezérlőnek feldolgozni az adatokat. Gondolok itt a számításokra, hogy a végeredmény km/h-ban legyen, és az lcd-re való kiíratásra. Akkor mint csinál azzal a rengeteg infóval? Arról nem is beszélve, hogy nem csak ez az egy feladata van a G2553-nak, közben figyeli az akkufeszt, hőmérsékletet figyel, és mindezt megjeleníti lcd-n. Hozzátenném, hogy ez utóbbiak, már sikeresen működnek.
A számoláson lehet egyszerűsíteni, ha nem csinálsz fölösleges szorzásokat 65536-tal, hanem a 32 bites változód alső és felső felét 16 bitesen is hozzáférhetővé teszed. IAR-nál ez az union-nal megoldható, CCS-hez meg nem volt szerencsém (még csak szerencsétlenkedtem vele ). Az akkufeszt és a hőmérsékletet meg nem kell túl gyakran nézegetni.
Idézet: Mindkettő benne van a programban, de egyszerre csak egy lehet kommenten kívül. Vele szinkronban a main() függvényben is cserélni kell a kommentben lévő és kommenten kívüli sorokat. „YouTube-on 2 féle van feltöltve”
Az union-ról még csak futólag olvastam. A programom, amibe a sebességmérés kerülne, már most is a proci 3/4-t elfoglalja. (szerintem biztos lehet rajta egyszerűsíteni, de majd 2 év mulva) A nem túl fontos dolgok (akkuf. hő) most is csak néha kerülnek vizsgálatra. Az ami a sok időt elveszi, az lcd. Az lcd-t i2c-n hajtom PCF8574N-el, és csak 100kHz-n tudom hajtani. Tudom, hogy van gyorsabb portbővítő, de ez volt itthon, és megpróbálok ehez igazítani mindent. Ezért vagyok bajban a sebességméréssel.
Egy nem teljes séma a programról az alábbi PDF-ben.
Mégegyszer kössz a segítséget,így már minden zene fut , ahogy annak kell.Mégegyszer kössz a segítséget!
Szitko, akkor most írok itt
Milyen szenzort használsz hőmérésre? |
Bejelentkezés
Hirdetés |