Fórum témák
» Több friss téma |
Fórum
Bocsi, lehet én fogalmaztam pontatlanul, vagy valamit nem veszek észre a válaszodban!
Van egy PIC-en két Nextion kijelző. A feladat az lenne, ha az A kijelzőn nyomok egy gombot akkor oda küldje vissza az adatokat, ha a B-n akkor oda. 10-20 adat lenne ablakonként, 15-20 ablak, és nem akarom kétszer leírni szinte ugyan azt a programba, azért lenne jó ha egy paraméter ( Pl a stream, csak az sajna nem működik nekem) átírásával a másik porta küldené ki.
Sajnos csak a kérdést olvastad el, a megoldást nem. Pedig ott van alatta...
Ha jól értelmezem akkor az első #use rs232 ... sor utáni függvények a B0, B1 lábakat használják, a második #use rs232 ... után a B2, B3-at, függetlenül attól honnan vannak meghívva? A főciklusba, ha beteszek egy putc(c)-t az hova küldi az adatot? Az utolsó #use rs232-t veszi figyelembe? Bááár ... nem tudom ez megoldás-e az én problémámra. A hozzászólás módosítva: Jan 10, 2019
Próbáltam, de a UART_NEXTION helyén változót nem fogad el, csak olyan értéket fogad el amit az #use rs232-nél adok meg.
Az fprintf első paramétere a stream (esetedben UART_NEXTION). Ha ide a másik UART streamet adod át akkor oda fog printelni.
Hogyan tudnám az fprintf-sort úgy "paraméterezni", hogy másik UART protra küldje ki az adatokat.
Magyarul van két nextion kijelző egy PIC-en és néha az egyikre néha a másikra kéne küldeni az adatokat, attól függően melyikről érkezett be adat.
Sziasztok! Azt szeretném kérdezni, hogy van-e arra mód, hogy ha én C-ben (CCS C compiler) írok PIC16F877-re programot, de ebbe a C kódba szeretnék régebben ASM-ben megírt programrészletet beilleszteni, akkor arra van valamilyen lehetőség? Köszi!
Hát ez az!!!
És honnan jön??? ![]() És nem egyenértékű a két megoldás? ![]() A hozzászólás módosítva: Dec 7, 2018
int1-be hogyan fér bele 2?
Az alábbi két függvény közül az egyik visszatérési értéke 2!!!!!!
Miért?????
A hozzászólás módosítva: Dec 7, 2018
SPI kommunikációval küzdök ( PIC24FJ256BG106)
Az engedélyező kimenet átvált, de az órajel nem megy ki ... így adatok sem érkezhetnek be ... Be kéne még valami mást is állítanom?
Ha mégsem működik... akkor inkább szerintem
char const *muvkiir[32][22]; de nézd meg szimulátorban/debuggerben ... A hozzászólás módosítva: Júl 17, 2018
A 'muvkiir' pointer szerepe az lenne, hogy tartalmazza annak a tömbnek az elemeinek a címét, amelyet kiválasztottunk. A 22. sorban láthatod a felhasználását. Jelenleg az egynyelvű verzióban ez egy char const tömb, amelyben a magyar szövegek vannak. Miután ez több száz helyen van a 22. sorhoz hasonlóan használva a programban, ezért úgy gondoltam, hogy az a legegyszerűbb, ha ezt definiálom át a program elején pointernek és a magyar és angol szövegeket tartalmazó tömbök pedig a 'muvkiir_hun', ill. a 'muvkiir_eng' nevű char const típusú tömbökbe kerültek. Így a tanácsod alapján a 'muvkiir pointer' a 'nyelv' változó beállítása, ill. értékadása alapján vagy a 'muvkiir_hun', vagy a 'muvkiir_eng' tömbre mutat, igaz? Az értékadást azért nem látod a kódban, mert nem tudtam a szintaxisát, így kérdőjeleket írtam a helyére. Nem gondoltam, hogy a pointer értékadás egy sima egyenlővé tétellel megoldható... Ezek szerint az alábbi változat lenne a jó megoldás?
Őszintén nem látom a kódodban a muvkiir pointer szerepét és, hogy hol adod meg neki az értéket.
Én úgy csinálnám, hogy beállítanám a pointert, hogy mutasson az egyik tömb kezdőcímére (pointer=tomb1), ha meg váltani kell, akkor meg a másik címére (pointer=tomb2). Annyi a lényeg, hogy a pointer típusa egyezzen meg azzal, amire mutat, az se baj, ha ugyan abban a sorban definiálod őket (pl. unsigned char valtozo, *valtozoramutatopointer; ). A hozzászólás módosítva: Júl 16, 2018
Kedves Bence, az ötleted nagyon jó, köszönöm, viszont kérlek, segíts kicsit, mert nincs sok gyakorlatom a pointer direkt programozásban, így a szintaxisában sem.
Idemásolok egy programrészletet, kérdőjelekkel jelöltem meg a pointer beállítási részt (mármint ahol szerintem lennie kellene), kérlek, pontosítsd, hogy Te hogyan csinálnád. Előre is köszönöm a fáradozásod.
Azért konstans, hogy az már ne változzon. A programodat kell átírni, nem a tömböket macerálni. Meg egyébként is, ha utána visszaállna magyarra, akkor azt hogyan tenné, ha felülírtad?
Én egyébként úgy csinálnám, hogy lenne egy nyelv pointer változóm, amit lehetne változtatni, s ennek adnám meg először a magyar tömb kezdőcímét, ha meg változás van, akkor az angolét. Így vissza is tudsz állni, ha kell, s a csere is egy pillanat műve.
Sziasztok,
Segítségre lenne szükségem. Adva van egy programom, amelyben a display szöveges üzeneteit egy const char tömbben tárolom. Kénytelen vagyok const tömböt alkalmazni, mert egyébként nem férek el a RAM-ban. Szeretném megoldani, hogy egy változó futás-közbeni átállításával a program szövegei angolul jelenjenek meg, így készítettem egy ugyanolyan elemszámú és méretű const char tömböt az angol szövegeknek is. Eddig nincs is gond, így szépen elfér mindkettő. A problémám ott kezdődik, hogy nem tudom, miként tudnám az angol szöveget tartalmazó const tömböt átmásolni a magyar szöveget tartalmazó const tömbbe, felülírva az abban levő elemeket. Az átmásolásra azért van szükség, mert a program az eredetileg magyar szöveget tartalmazó tömb megnevezését használja mindenhol, így annak a tartalmát kell megváltoztatnom. Lenne valami ötletetek a másolás elvégzésének módjára? Előre is köszi a segítséget! A hozzászólás módosítva: Júl 16, 2018
Idézet: „Létezik arra lehetőség, hogy fordító megálljon, és megkérdezze melyik verziót akarom fordítani?” Fordítónál szerintem nem, de a Makefile-ba bele lehetne patkolni egy ilyen szkriptet ami bekéri ezt. Idézet: „"Kőbaltás" módszerrel így oldanám meg, csak lehet elfelejtem kikommentelni a megfelelő sort mielőtt rányomok a fordításra. ” A fordítónak -Degyik segítségével tudsz define-okat átadni. (Ez olyan mintha a #define VALAMI-t írnál be.)
Egy olyan feladatot szeretnék megoldani, hogy ugyan azt a programot kéne lefordítani két különböző lábkiosztású áramkörre. ( tehát mondjuk az egyik panelon az LCD kijelző lábkiosztása más mint a másik panelon, de egyébként minden azonos)
Létezik arra lehetőség, hogy fordító megálljon, és megkérdezze melyik verziót akarom fordítani? "Kőbaltás" módszerrel így oldanám meg, csak lehet elfelejtem kikommentelni a megfelelő sort mielőtt rányomok a fordításra.
Köszönöm.
A tanácsok és a link alapján keresgéltem és végül sikerült is. Továbbra sem értem, hogy a fordító mintaprogramja miért nem jó, de ez már nem is annyira lényeges.
Az lcd_init eljárás várakozásokat tartalmaz, felhasználása előtt be meg kell adni az órajel frekvenciáját. Az LDC -re menő vonalakat kimenetté kellene és (mivel analóg funkciójuk is van) digitális módra célszerű állítani.
Bővebben: Link
Sziasztok!
Egy PIC16f690 segítségével szeretnék adatokat kiírni egy 2x16-os LCD-re. Sajnos bárhogy próbálkozok nem történik semmi. A ccs c által készített példaprogramot is kipróbáltam, de a kijelzőn nem látható semmi. A kontrasztot beállítottam úgy, hogy a "dobozok" éppen láthatóak legyenek.
Itt van a kód amivel próbálkoztam. Az lcd_init(); függvénynél akad el, de nem tudom miért. Minden segítséget előre is köszönök. A hozzászólás módosítva: Okt 11, 2017
Bocsánat a késői válaszért.
Kipróbáltam és működik is. Köszönöm! Sokat segített a megértésben.
Sziasztok,
A segítségeteket szeretnék kérni FT800, ill. FT810 EVE fejlesztő modul témában. Nemrég vettem egy FT800-ra épülő vm800b50a-bk EVE fejlesztő modult, illetve egy ugyancsak 5"-os 800x480-as FT810-es fejlesztő modult és szeretném használni PIC18F, ill. PIC24HJ MCU-val. Miután CCS C-vel dolgozom, az lenne a kérdésem, lenne-e valakinek az FT800-hoz, és/vagy az FT810-hez kimondottan CCS C-ben írt drivere és egy kis mintaprogramja, amelyen kicsit könnyebben el tudnék indulni, mint a gyári programozói leírásán, mert meg akarom tanulni a használatát. Vagy, ha nincs senkinek ilyen, akkor esetleg tudna-e valaki valahol a neten ilyenről (sokat kerestem, de nem találtam eddig), ha fizetős a csomag, az sem baj. Előre is köszönöm a segítségeteket!
Köszönöm!
Sajnos legkorábban hétfőn tudom kipróbálni. A kód formázásában is van hova fejlődnöm.
Szia,
Próbáld meg feltölteni ezeket a kódokat és nézd meg, hogy ezekkel működik-e a dolog. Adó:
Vevő:
Üdv Máté
Megnéztem oszcilloszkópon az adó PIC-et és szépen elküldi a biteket.
A vevő PIC nyomkövetését még meg kell néznem, hogy hogy is kell. |
Bejelentkezés
Hirdetés |


És honnan jön??? 

