Fórum témák
» Több friss téma |
Fórum » CCS PIC Compiler
Ez nekem is furcsa... Mutatóval indexel tömböt, és a mutató értékének előtte beállítja a tömb nulladik elemének értékét. Ha működik is egy speciális esetben, akkor sem jó megoldás.
Igazad van qtk!
Elbambultam egy kicsit. Nem indexelni akartam a pointerrel. Tehát, a CCS-ben lehet így csinálni (nem Ansi): LCD_pointer=LCD_buff; a buffer első elemének a címe Változó=*LCD_pointer; a buffer első elemének az ertéke A buffrer deklarálásnál pedig pontosítanék (mentségemre), hogy nem carakterlácot hoztam létre, hanem csak egy 20 byte-os buffert. A 20 elemű karakterlánc valóban ez lenne: char LCD_buff[21]; Mégegyszer bocs mindenkitől, akit félreinformáltam. sysypet Idézet: „Igazad van qtk! Elbambultam egy kicsit. Nem indexelni akartam a pointerrel. Tehát, a CCS-ben lehet így csinálni (nem Ansi): LCD_pointer=LCD_buff; a buffer első elemének a címe Változó=*LCD_pointer; a buffer első elemének az ertéke” Ezt nem csak a CCS-ben lehet így, hanem bármely más C környezetben... A mutatóknál úgy van, hogy "*valami" az értéke, "valami" a címe, ha nem pointerként deklaráltuk, akkor a címére &valami -vel hivatkozhatunk. Ez a tömbös dolog úgy fest, hogy a [] kifejezést a feldolgozás során átírja a következő módon: valami[20] -ből ez lesz, hogy *(valami+20) és majd ezt értelmezi. Amikor mátrixot deklarálsz, akkor van ott egy apró gubanc: normális esetben létrehozhatod a tömbödet úgy, hogy int valami[]; de ha mátrix kellene, akkor nem írhatod azt, hogy int valami[][]; (mert mit is kell ilyenkor csinálni? *(valami+(méret1*x+y)) -re kell átírni), csak szerencsétlen fordító nem tudja kitalálni a méretet, és így előveszi a pengét és felvágja az ereit, hogy Ő bizony nem... Ezért azt kell csinálnod, hogy megadod az egyik méretet, pl: int valami[5][]; mutatókról dióhélyban ennyit... (ha valahol hülyeséget írtam volna, ne tartsátok magatokban, bár tudom, hogy ettől nem kell félnem :p ) tudom picit off volt a hozzászólás, de lehet hogy másoknak hasznos
annyit felejtettem ki a hozzászólás elejéből, hogy a típusoknak kell azonosnak lennie, amikor átadod az egyik címet a másik pointernek...
természetesen meg lehet erőszakolni ezt is a void típusú pointerrel, mert annak bármilyen címet át lehet adni, és utánna azt is átadhatod, de a belső adatszerkezetek nem fognak egyezni, így csak szélsőséges esetekben használható
Örülök, hogy működik. Azt a hibát meg direkt tettem bele, kívácsi voltam hogy észreveszed-e
Rengeteg ilyen fuggveny van hogy void* -al van deklaralva valamelyik parametere. Nehany a man-bol: read, write, recv, send, stb.. Lehet ilyen fuggvenyeket nyugodtan hasznalni, csak ismert kell legyen az adat merete. Az AVR/LCD driver kodban is hasznaltam ilyet.
Én is ezt mondtam...
ezek tipikusan nem olyan függvények amelyek nagyon meg tudnak hülyülni... én gondoltam az előzőnél az összeadásra, kivonásra, stb... ott ha más adatszerkezetekkel csinálod ezt, akkor marhaságokat fogsz visszakapni... na persze itt sem string+int -re gondolok, hanem pl float + int, vagy ehhez hasonlóra (pl: long int + int)... a méret meg hozzátartozik az adatszerkezet fogalmhoz, annak az egyik részhalmaza... nem azzal van a baj, hogy void*-ként van deklarálva, az senkit nem érdekel, akkor van gond, ha más fajta adatot akar kezelni egy fv-el, mint amire az íródott
Na, most jókedvemben találtatok és feltoltam a Kernighan-Ritchie féle C programozós könyvet magyar nyelven! (alapmű!)
Link: http://rapidshare.com/files/45577770/Kernighan_Ritchie_C_konyv_hun.doc sysy
Köszönöm(jük), de a doksi.hu oldalról - több más hasznos infóval - egy regisztráció után beszerezhető.
Igazad van!
Elnézésedet kell, hogy kérjek tőled MPi-c, hogy figyelmetlen voltam és nem olvastam végig a doksi.hu-t. Elég lett volna csak a linket feltennem. ... De! Akit érdekel a dSPic programozása és mintaprogramokat is akar forráskódban nyálazni annak kihagyhatatlan a Learn Hardware Firmware and Software Design című könyv. De már nem merem feltölteni mert le leszek ugatva. Ha valakinek van tudomása róla, hogy hol lehet letölteni, az tegye közzé. sysy Moderálva!
én például nem ismertem az oldalt, és szerintem még jó sokan vannak ezzel ugyanígy...
Idézet: „De! Akit érdekel a dSPic programozása és mintaprogramokat is akar forráskódban nyálazni annak kihagyhatatlan a Learn Hardware Firmware and Software Design című könyv. De már nem merem feltölteni mert le leszek ugatva” Engem pl erdekelne!!! Ne, hagy magad eltanotritani a celtol, csak toltsd fel nyugodtan, akinek nem tetszik, az majd menjen jol a boltba es vegye meg penzert, ha ingyen nem tetszik!!!
...Sok jó, hasznos információt osztottál meg velünk eddig is, folytasd csak nyugodtan!
... Üdv! Moderálva!
Engem is érdekelne az a könyv.
Amúgy begugliztam, de csak ezen találtam meg, és a fájl sérült volt :rinya: .
Engem is érdekelne, meg a rapidshare nem a hobbielektronika szerverét terheli, stb... Csak tömörítsd be pl. zip-be, hogy kisebb legyen.
Kedves MPi-c!
... uff én szólottam. Moderálva!
Már letörik a billentyüzetem, annyifelé kell elküldenem magánban a könyvet. (...)
Itt a dSP könv linkje: http://rapidshare.com/files/45654868/Hardware.Firmware.and.Software...gn.001 http://rapidshare.com/files/45654869/Hardware.Firmware.and.Software...gn.002 http://rapidshare.com/files/45654870/Hardware.Firmware.and.Software...gn.crc A letöltött fájlokat a TotalCommander Fájlegyesítés menüpontjával tudjátok eggyé varázsolni! Moderálva!
Sysy és MPi-c!
A vitát fejezzétek be, mert ellenkező esetben kénytelen leszek a topicot zárolni! Ez az oldal nem arról szól, hogy ganyáljuk egymást, hanem arról, hogy segítsünk! Sysy! Ha egy picit körültekintőbben jársz el, nem kapsz semmilyen negatív visszajelzést és privát üzit! MPi-c! Nem kell(ett volna) lerohannod sysy-t, mert feltett valamit, ami máshol (is) megtalálható!
Igazatok van!
Mindenki előtt bocsánatot kérek MPi-c től. Teljesen felesleges egymást heccelni. Magánban is ment a levél MPi-c nek. (...) Mégegyszer mindenkitől elnézést szeretnék kérni. Különösen az érintettektől. Remélem a thread továbbra is jó és hasznos lesz! sysy Moderálva.
Tudomásul vettem.
Nekem nem volt szándékom hozzászólásommal senkit megbántanom, kioktatnom vagy bármi más módon személyeskedébe váltanom. Tisztában vagyok vele, hogy a fórum nem az indulatok levezetésére van kitalálva. Sajnálom, ha hozzászólásomat lerohanásnak értékeltétek, ilyen szándékom nem volt, ezért bocs mindenkitől! Korábban is köszönetet mondtam sysy-nek az infókért, és most is arra kérem, folytassa csak ezt, mindannyiunk hasznára. És persze, köszönöm a moderátori figyelmet!
Én pedig köszönöm mindkettőtöknek, hogy megértőek vagytok. Ezennel tekintsük a dolgot elsikáltnak, és folytassuk a topicot az eredeti medrében, ott, ahol abbamaradt.
Köszönöm Uraim!
Aprpó! Használta már valaki a CCS-t RTOS üzemmóban? Kellene némi útmutató nekem.
sysy
van a mappájában vagy 10 példa...
kéretik megnézni
Sysy:
Szia. Ez a dspic könyv nincs meg másutt is ? Letöltöttem mindegyik részt az általad felvésett linkről és a 001-esre azt írja a WinRar, hogy sérült. Innentől kezdve a könyv megdőlt.
Hummer!
Én is letöltöttem és sikeresen összeragasztottam mind a 3 állományt a TotalCommanderrel. Töltsd le mégegyszer és ha akkor sem sikerül összeragasztani, akkor kitalálunk valamit. sysy
EZENTÚL MINDEN, NEM TÉMÁBA ILLŐ HSZ-T TÖRÖLNI FOGOK MODERÁTORI JOGOMMAL ÉLVE, AZ OLDAL SZABÁLYAINAK MEGFELELŐEN!
A SZEMÉLYESKEDŐ LEVELEKET PRIVÁTBAN VÁROM!
Ha esetleg vki megkonyorulne rajtam es elkuldene a CCS-t a szabolcs pont lelesz kukac gmail pont com címre azt nagyon megköszönném... :yes:
Üdv.
Próbáltam írni egy 4x4 -es billentyűzet kezelőt, de végtelen ciklusba kerül tőle a pic (vagy lefagy). Most úgy akarom megírni, hogy a main csak átfut rajta, a karaktert kiírja az LCD-re, majd a prog végét egy LED villogtató végtelen ciklus zárja. Íme a függ.
A segítségeket előre is kösz. Használjuk a [ c o d e = c ] tagot! [ / c o d e ]. Ezentúl ilyen hosszú, strukturálatlan programrészleteket csatolmányként kérünk illeszteni. Köszönjük. deguss |
Bejelentkezés
Hirdetés |