Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Igaz, ezt megtehetném! Csak ezt utólag módosítottam, és nem akartam a több fájlos forráskódban lecserélni a neveket másra, mert csak megcseréltem a pwm1-et a 0-val...
Meddig tart kicserélni, pár gombnyomás minden fájlban? Jobb a békesség, ha 5 év múlva előveszed, nem tudod miért nem úgy működik ahogy írva van
![]() Cseréld ki PWMX-re, és akkor elég a main.h-ban definiálni a PWMX-et, és béke van. A hozzászólás módosítva: Dec 20, 2017
Ok, igazad van..., végülis gyorsabban kijavítottam a warningokat, semmint megtaláljam a megoldást a kiiktatásukra
![]() ![]()
Lehet itt kicsit off lesz. Pic32 régi mla-k tcpip stack-je érdekelne (encX24, spi, csak udp csomagok, ha bármit számít). Multicast ip-re kellene udp csomagokat küldeni, és fogadni is kellene a multicast címekre szóló packeteket, de az alapértelmezett config-ban csak unicast ip beállítási lehetőség van, és a help doksiban sem találtam felvilágosítást. Küzdött már meg olyan problémával itt valaki?
Nem ment így sem
![]() Pedig látszólag jó kódot fordított a fordító, de valójában mégsem működött! A megoldás az lett, hogy az attribútumoknál psv-t kellett megadni, prog helyett. Érdekes, hogy az utóbbival a program memóriában megegyező címmel generált forráskód volt az ami nem működött, míg a psv-vel a cím első 4 bitje olyan területre mutat, ami már nincs is fizikailag! Ennek ellenére ez működik jól. Feltehetően valami laphatár dolog van a háttérben....
Van egy összetett struktúrám. Szeretném inicializáláskor fel is tölteni kezdőértékekkel. Ez ugye sima ügy, {} közé írva az értékeket, szépen fel is töltődik.
Igen ám, de ha bonyolult a struktúra, amikor kézzel tölteném fel, már gondot okoz, hogy melyik tag, melyik után következik, ha valahol eltévesztem - és ezt igen könnyű jelen esetben -, akkor attól kezdve a többi is hibás lesz. Van arra valami bevett szokás, vagy mód, hogy ezt hogy célszerű kezelni ?
A harmony-t nem nézted ? Vagy az nem jó neked ? Elvileg kifejezetten a 32 bites pic-ek támogatására készült...
Az arra jó, hogy legyen mivel szenvedni. Én használni akarok majd valamit
![]()
Az mla-t se tudod most használni!
![]()
Minden tag után kommentben beírod micsoda
![]() ill. az értékadáshoz bekopizod a komplett struktúra deklarációt, soronként kommentbe teszed, beírod elé az értéket... Én jobbat nem tudok
Most pontosan ezt teszem..., de a hajam már kezd égnek állni
![]() Én ezt szeretném:
Beírásnál, mintha támogatná is...de eddig nem sikerült lefordítani így...
Ha ez a kezdő értékadás lenne, szerintem nem így "szokták".
Bővebben: Link a keresőjébe meg írd be: struct , vannak minták...
De, ezt így szokták...már ha a fordító támogatja?! Elvileg úgy tudom, hogy az xc fordítók GCC alapúak, ott pedig ez támogatott, sőt, van másik hasonló is, pk "tagnév:érték" forma. De ez a nyomi fordító egyiket sem akarja megenni....
![]()
Ansi C99-től támogatott, de ezt írják mindenhol, ahol ez a példa előkerül.
A hozzászólás módosítva: Dec 20, 2017
Megnézted a mintát?
a kapcsos zárojelek között, csak az értékeknek kell sorrendhelyesen szerepelni, nem értékadásnak. Szerintem...
Hát de pont ez a bajom, hogy a sorrendtől szeretnék megszabadulni!!!
A nevesített formák pont ezt adják, a szabadságot, hogy tetszőleges sorrendben, akár kihagyva tagokat add meg, amit akarsz!
Az ok...de hát már az sem mai csirke, egy viszonylag új fordítónak, mint amilyen az xc sorozat, már illene tudnia azt is...
Ha a dokuban nincs leírva, akkor nyilván nem tudja...
rolandgw említésére ránéztem, ez van a linkelt dokuban:
All the MPLAB XC compilers conform to the ANSI X3.159-1989 Standard for programming languages (with the exception of the MPLAB XC8 compiler’s inability to allow recursion, as mentioned in the footnote). This is commonly called the C89 Standard. Some features from the later standard, C99, are also supported.
Bár nem szoktam struktot használni,de ez nem lenne jó?
Én pedig fogtam és egy kis próba struktúrát hoztam létre, teszt céljából, mely GOND nélkül lefordult!!!
És ez miben más mint a fenti nem leforduló?
Mi volt a hibaüzenet? A hozzászólás módosítva: Dec 20, 2017
Nem tudom még..., talán abban, hogy ez egy végtelenül egyszerű struktúra, míg amit próbálok alkalmazni, az ennél lényegesen bonyolultabb szerkezetű ?! Most nézem, mi lehet a különbség és ok...
A deklaráció végén a V ?
Vagy a point foglalt név?
Ez nálam működik:
Az csak a typedef utasítás miatt kell oda! Ha nem deklarálsz új típust, lehagyhatod a végéről...
Nincs köze a dologhoz...
Persze hogy működik! Ugyanezt írtam feljebb is, csak új típuson keresztül(ami most lényegtelen)
De van...
az elsőnél a 10. sorból hiányzik a struct ezt helyettesíti a második példádban a struct végén a V megadása, és az értékmegadás elején a V tipus megadása |
Bejelentkezés
Hirdetés |