[elektro] keil mdk rejtelmek
hg12345
hg12345 at freemail.hu
Fri Feb 7 09:12:55 CET 2020
Szia
szerintem ennek nem sok köze van a KEIL-hez.
Elvileg ha függvényt vagy változót akarsz máshol használni mint az adott fordítási egységben, akkor #include kell elő definicióval függvény esetében, vagy változó esetén external ezt a az include-t befordított abba a fordítási egységbe ahol szeretnéd használni és elérhető válik.
A keil fordító azért nem ennyire finnyás, mert enélkül is kezeli, de dob warning-t.
A másik, a HAL-ban előszeretettel #define helyettesítik az IT nevét másra és így írják meg az IT függvényt. A keil és legtöbb keret programram az IT-ket weak prefixel még a starup fileban definiálják ami egy B . asm utasítást hajt végre ami egy végtelen ciklus. Így a nem definiált de véletlenűl becsapó IT végtelen ciklusra fut, más hibát nem csinál és majd a program felépítésétől függően valami történik.
(((Amúgy a HAL jó is meg rossz is, sajnos rettentő lassú és amit nem tudott megírni a HAL programozó azt már csak kínszenvedés... ugyan a HAL kezelés saját kézbe vehető, mert a HAL konfigban ez meghatározható, de sajnos globálisan... Vagyis ha elfogadod és használnád az egyis pl.: USART-ban de a másikhoz nem jó, akkor bizony borul a bili mert vagy mindk kettőben használod, vagy egyikbe se.... A másik baja, nem igaz hogy HW elkell fedni a programozó elől, ha tényleg jót szeretnél csinálni, akkor HW is ismerni kell meg HAL gondolkodás módját, ez min. 2x annyi meló....)))
Ha valamit nem találsz a keil-ben, akkor teljes fordítási egységre kereséssel kidobja hol van ilyen, persze ehhez az kell kell, hogy jól legyen beállítva a könyvtár struktura.
üdv
-------- Eredeti levél --------
Feladó: Skandar Graun < sgraun at gmail.com (Link -> mailto:sgraun at gmail.com) >
Dátum: 2020 február 6 21:02:08
Tárgy: [elektro] keil mdk rejtelmek
Címzett: elektro at centralnet.hu (Link -> mailto:elektro at centralnet.hu)
Sziasztok!
Beleakadtam egy problémába, szerintme a hozzáértőknek két perc, én meg
keresgélek fél napja.
Keil ARM SDK
Létrehoztam egy projectet, STM32CUBE segítségével.
Led már villog, szóval valami történik. :D
Valahol egy eldugott filében van az IRQ kezelés, ahol lehet beírni user
kódokat, meg minden finomságot.
Viszont én szeretném az ott levő változókat a main.c-ben is használni.
Na, itt akadtam el, mert nem jövök rá, milyen attribútumok kellenének.
Ha jól sejtem, az extern kéne, de nem látják egymást. A keresések meg mind
ezt ajálnják.
Le is fordul vele, csak nem megy.
Amúgy van egy HAL_TIM_IRQhandler nevű cucc is, ami megintcsak ilyesmi
lenne, de annak meg nem találom a deklarációját... szóval ott sem tudok
csinálni értelmes dolgot.
Tudtok ajánlani valami használható ötletet?
-----------------------------------------
elektro[-flame|-etc]
More information about the Elektro
mailing list