Fórum témák

» Több friss téma
Fórum » ARM - Miértek hogyanok
 
Témaindító: gtk, idő: Jún 26, 2007
Lapozás: OK   143 / 143
(#) icserny válasza kepitu62 hozzászólására (») Aug 5, 2019 /
 
Olyan USB-soros átalakítót kell használni, amit az Android felismer. FTDI FT232 pl. esélyesebb volna.
(#) kepitu62 válasza Peppe hozzászólására (») Aug 5, 2019 /
 
A jumperek rb. működnek, hidegen kimérve és feszültség alatt a chip lábakra a megfelelő feszűltségszinteket adja. Nálad egy gyári új ST feszültségre kapcsolásakor csak a piros led ég,
a zöld led pedig sötét mindaddig míg valami progit betoltesz?/ pl. Blink/
A hozzászólás módosítva: Aug 5, 2019
(#) don_peter válasza vargham hozzászólására (») Aug 6, 2019 /
 
Ezt megerősíthetem, 1-2 hete futottunk bele egy ilyenbe, nem akart rendesen működni.
(#) icserny válasza kepitu62 hozzászólására (») Aug 6, 2019 /
 
A Dfuse nyilván nem ismeri fel, mert az STM32F103C8T6 bootloadere csak UART módban működik.

Windows alatt STM32Flasher vagy STM32 Cube Programmer (ez utóbbi Linux alatt is működik) letöltőprogram kell hozzá, meg egy USB-soros (TTL) átalakító. A boot0 jumpert 1 állásba kell tenni. Az átalakító Tx lába A10-re, az Rx lába A9 menjen, az 5 V-os és a GND kimenete pedig értelemszerűen a "blue Pill" 5V és GND lábára menjen.

Az általad belinkelt oszcilloszkóp projekt v1.03 firmware nálam nem működött valamiért. Az 1.05 (kísérleti) firmware jól működött, de csak a feleségem telefonján (nálam 4.4 Android van, az nem támogatott (nem ismeri fel a csatlakoztatott eszközt).
(#) cross51 hozzászólása Sze, 17:42 /
 
Sziasztok!

Egy kicsit homályos az interrupt-nál a prioritás grouping működése.
(a kérdésben vegyük úgy, hogy 4 prioritás bitünk van)

Ha a priority grouping 0 akkor van 16 db prioritásunk.

Ha priority grouping 5 (2-2 bit) akkor kap értelmet a preemt és a sub priority.
A preemt dönt vagy azonos időben vagy ISR alatt fut be más megszakítás.
A sub priority meg akkor jön szóba ha két IRQ preemt prioritása azonos.

1. Kérdés, hogy ezt jól értem-e
2. Írás közben meg találtam, hogy a 0-ás prioritás (STM32F4) a nagyobb ez globális vagy gyártó függő és akkor a preemt-re is ez vonatkozik?

És egy mellékes kérdés szerintetek van értelme emberire invertálni (kisebb-kisebb, nagyobb-nagyobb) a prioritást egy függvénnyel (én PIC-ről az emberi verziót szoktam meg) vagy inkább álljak át/szokjam meg hogy hol így hol úgy?
(#) csatti2 válasza cross51 hozzászólására (») Sze, 21:26 /
 
Jól értelmezted. Azért a kisebb szám a nagyobb prioritású, mert az ARM mag lehetővé teszi a gyártóknak, hogy maguk döntsék el hány bitet használnak a maximális 8-ból a megszakítások prioritizálására. Ráadásul mindig a legfelső bitek használatosak (a háttérben pl. az 5-ös prioritást shifteljük 4-el balra, így 80 lesz a tényleges érték). Ez azért jó, mert ha utána olyan mikrokontrollerre fordítjuk a progit, ami mondjuk csak 3 bitet támogat, akkor még jó eséllyel működőképes marad a program (egyszerűen elveszítjük a legkevésbé szignifikáns bitet).
(#) csatti2 válasza csatti2 hozzászólására (») Sze, 21:40 /
 
Csak azt nem magyaráztam el, ténylegesen miért is.

Na szóval, léteznek negatív prioritású megszakítások (ezek a rendszermegszakítások, pl. Hard fault). Ezek mindig fix prioritással rendelkeznek és a felhasználó nem állíthat be magasabb (alacsonyabb értékű) megszakítást náluk. Azzal, hogy az alacsonyabb érték a magasabb prioritás, mindössze egyetlen bitre van szükség, hogy ezen megszakításokat az IC-ben megkülönböztessék (3 bit megszakításnak minden modellnél garantáltan van). Ha azonban értékben magasabbnak kellene lennie akkor mindig meg kellene valósítani mind a 8bitnyi alapprioritást és 1bitnyi rendszerszintet, ami jelentősen növelné a szükséges IC komplexitást (csomó plusz kapu, miközben semmi szükség egy egyszerűbb mikrokontrollernél annyi megszakítás szintre).
(#) cross51 válasza csatti2 hozzászólására (») Sze, 22:41 /
 
Köszi, így értelmet nyert az érthetetlen.
Ha már a szóba jött a fix 16 "égetett" IT ezek az NVIC_EnableIRQ-val nem piszkálhatóak?
pl.: SysTick-re CTRL-jében lehet engedélyezni az IT-jét.
(#) csatti2 válasza cross51 hozzászólására (») Csü, 18:23 /
 
Az ARM megkülönböztet rendszer kivételeket és megszakításokat (ami szintén egyfajta kivétel) egymástól. A kivételek (ez ARM specifikus) egy része ki/be kapcsolható (különböző ARM regiszterekben, fejből nem tudom) és a prioritásuk megváltoztatható, egy része pedig fix (-3-tól -1-ig) terjedő prioritással rendelkezik. A megszakítások viszont gyártó specifikusak. A rendszerkivételek a CPU felől érkeznek az NVIC-be (a SysTick kivételével) a megszakítások pedig a perifériák felől.
(#) cimopata hozzászólása Szo, 17:20 /
 
üdv.

Hogyan szoktéteok védeni a mikroproszesszorok 3v3 tápját a tápfelől érkező feszültségimpulzusok ellen? AMS1117 stabilizátorokat használok amik általában egy 5V AMS1117-3.3 ből állítja elő a 3,3-ot. Az AMS1117-5.0 nak pedig magasabb feszültségű DC_DC konverter adja a tápot 30-200V tápfeszültségből.

Néha előfordul hogy bezárlatosodik 1-1 STM32-es proci. Próbálom maximálisan bevédeni őket miden létező módon. Minden külső bemenet BAT54-es diódával védve, proci alatt amennyire lehet teli GND. 3v3 tápban 10µF kondi + minden VCC-n 100nF közvetlenül alatta. ADC bemenetek 100nF kondizottak. Digitál bemenetek is ha lehet pluszban kondizom kcsit. Ennek ellenére néhe bezárlatosodik 1-1 proci. Már csak arra tudok gondolni hogy a táp felől jövő valami megnyomja az 5V tápot. Vagy pedig a DC_DC feől átjön valami tranziens.

Mivel lehetne pluszban védeni a 3,3v tápot? 3,3v tranziens diódákat nézegettem de nekem kicsit magasnak tűnik a nyitási feszütlsgük 4V-felett. 4V meg felette lenne az abszolút maxnak.

Szerintetek?
A hozzászólás módosítva: Szo, 17:21
(#) vargham válasza cimopata hozzászólására (») Szo, 17:57 /
 
Bezárlatosodik? Ez alatt mit értesz?
Nálam nem volt eddig probléma ezekkel az eszközökkel.
Publikus a kérdéses NYÁK terved? Töltsd fel ide!
Pontosan melyik MCU?
Mi van még a NYÁK-on? Tápot honnan kapja? A hiba bekövetkezte után az AMS1117 még működik?
(#) csatti2 válasza cimopata hozzászólására (») Szo, 19:57 /
 
Az AMS1117 egy régi design abból a korból, amikor még inkább tantál kondenzátorokat használtak az 1µF körül SMD méretben. Nem tudom a jelenlegi áramkörödben mit használsz hozzájuk de ha nem megfelelő az ESR akkor a táp instabillá válhat. Manapság sokkal jobb és modernebb LDO-k is kaphatóak.
Én egyébként az 5V-os sínt védeném TVS diódával, az LDO feladata lenne, hogy ebből szép stabil 3V3-at állítson elő.
Ami a külső bemenetek védelmét illeti, nem biztos hogy a BAT54 önmagában elég (sőt, akár azon keresztül szállhat el a 3V3-as buszod). Ehhez ismerni kellene a felhasználás körülményeit. Az ipari elektronikákban például többlépcsős védelmet szoktak használni.
Következő: »»   143 / 143
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu