Fórum témák
» Több friss téma |
Ezt mire érted?
Így elsőre tök jónak gondolom a megoldásom, de ettől még lehet géz Más: Uraim olyan kérdésem lenne, hogy van egy rohadt nagy tömböm ami így néz ki:
P18F684-es chip-el dolgozom aminek csak 128byte adatmemóriája van. A kérdésem az lenne, hogy van e mód egy 280byte-os területű tömb használatára? Vagy, ha ennek esélye nem sok, milyen módon tudnám kikerülni, hogy ne foglaljon le ekkora területet? Vagy egy hatékonyabb megoldás elmélete is érdekelhet. WandClock órám programján dolgozom amelyhez egy rugalmasabb alapot akarok készíteni. Előre is köszi... ui: most egy switch() elágazással oldottam meg, de ez véleményem szerint nem hatékony megoldás.
Szia!
Egyszerű. Tedd a programmemóriába. Ahhoz pedig elég 3 betű: ROM. Ezt írd a deklarációnál pl. a "static" mellé. Ezután a programmemóriába fordítja a konstansokat. Ha jól emlékszem legalábbis...
Hibát dob nekem rá sajnos. Így írtam be:
Milyen környezetben is írtad?
Mi a fordító tipusa? Egyébként nem ram, rom. De lehet elírtam. Sőt. Biztos, bocsánat. A romot felejsd el. A static elé írd hogy "const". A hozzászólás módosítva: Júl 13, 2014
Ohh, bocs az tényleg lemaradt. MPLAB és próbáltam rom-ot is és ugyan úgy hiba jön.
Így is próbáltam:
"static const rom unsigned char ... " Ugyan az a hiba MPLAB Hi-Tech 10-12-16 a fordító.. Köszönöm jó irányba mutattál ezer hálám A jó megoldás:
A hozzászólás módosítva: Júl 13, 2014
Na, csak hogy össze legyél zavarodva, így a helyes:
static const rom unsigned char ... Bár ez lehet hogy a Te fordítódnál nem lesz jó. A hozzászólás módosítva: Júl 13, 2014
Sziasztok.
Meg tudná mondani valaki, mit felejtek ki? 12f683 ADC-t próbálnám, de vagy gyújtás nincs, vagy benzin, mert nem indul. Köszönöm előre is.
Bocs, megtaláltam.
ADCON0/Analog Channel Select bits maradt ki. A hozzászólás módosítva: Júl 14, 2014
Ugyan azt csinálja (,ha el nem írtam valamit)... De érdemes megnézni a fordított kód hosszát és hatékonyságát. A PIC16F -eken nincs több bites léptetés, így a (bitek>>i) önmagában egy ciklus. Visszafelé:
A hozzászólás módosítva: Júl 14, 2014
Hi Mesterek!
Az lenne a kérdésem hogy 16F690-nél az AD már 1,2V-nál túlcsordul, ez normális? Ugyanaz ha belső illetve külső vref-et használok. Úgy használom hogy a AD-nak az értékét rakom a pwm-be, feszosztóval megoldottam a hibát, de azért "idegesít" dolog. Valószínű a prg hiba? Debugolni nem tudom mert kifagy mihelyst "online-ba" akarok menni a pk2-vel .
Majdnem biztos, hogy hiba van a programban, de látni kellene.
Ez lenne az:
Az eredmény MSB-it a PWM LSB helyeire írod be.
Nem tudom mit szeretnél vezérelni a PWM-mel, de ha nem valami baromi precíz dologról van szó akkor elég volna az AD-ből a felső 8 bitet. Akkor sokkal egyszerűbb lenne a kód.
Így sem lesz sokkal bonyolultabb, csak balra kell rendeztetni az AD eredményét .
A prg.-ben a 35 sorban van jobbra, balra opció. Már próbáltam és teljes kitöltést kapok már 1,278V-nál. Először 8 bittel próbáltam majd 10 bittel, mind két esetben ugyan az.
Semmi precíz dologról nincs szó, hegesztőt próbálok vele majd hajtani. Ma lesz a próba Akkor jelenleg most az alsót a felsőbe íratom, mh... ? A hozzászólás módosítva: Júl 15, 2014
Idézet: Mert megkeverted a bitek sorrendjét. CCP1L-be a lagmagasabb helyiértékű 8 bitet kell beírni, te viszont a 10 bites kiolvasás alsó 8 bitjét töltöd bele.„Már próbáltam és teljes kitöltést kapok már 1,278V-nál.” Legegyszerűbb megoldás: balra igazítva kérd az ADC eredményét, és az EREDMENYH tartalmát másold CCP1L-be! Idézet: Persze, hogy nem, hiszen a normál kiadású PIC16F690 nem debugolható. AC162060 ICD headert kell a mikrovezérlő helyére dugni, azzal debugolható. „Debugolni nem tudom” A hozzászólás módosítva: Júl 15, 2014
Sziasztok! Szükségem lenne egy olyan cuccra, amivel egy master és töb slave beszélget egymással, viszonylag nagy távolságon. Az RS485 tűnik alkalmasnak a feladatra. No, ehhez keresek valamilyen c mintát, csak nem találok. Tudna nekem valaki ajánlani egy helyet ahol ilyet fellelhetek?
Előre is köszi!
Udv mindenkinek
Elkeszitetem a mellekelt faljban levo kapcsolasi rajzot . Csak nem akar sehogysem mukodni ... Az esetemben VCC = 5V , es kezdtem meregetni az LM324 , 1-es es fold kozot a feszultseget , ami szerintem ha a feheren van akkor 5V es ha a fekete van a szenzor elott akkor 0V . De nekem konstans 3.8 V -van .... 10k ellenalas helyett 12k raktam mivel csak olyanom van . Szerintetek annyira fontos hogy 10k vagy 12k ? Azert nem mukodik ugy ahogy kell ?
A diódát és a ledet leárnyékoltad egymástól? Pl. egy darab nem átlátszó csövecskével?
Nem sajnos koszi , kiprobalom , es jovok az eredmenyekkel .
a fotodiodan : 4.88 V - van ... es csakugy mukodik . es mostmar tettem az infraled es a fotodioda koze egy csevetestet (mellekelt foto) .
igy jo ? vagy tegyek ra egy kis csovecsket hogy semmi kulso feny ne erje az oldalrol .?
Microchip AN774
A következő kérdés úgyis az lesz, hogy "milyen protokollt használjak": Például: PIC18 Modbus example A hozzászólás módosítva: Júl 15, 2014
Köszi! Az elsőt megleltem, csak már távol áll tőlem az asm, de csak megértek belőle valamit
A második sem fog rosszul jönni, úgyis a modbus volt tervbe véve Igazából az adás-vétel váltása ami problémát okoz, főleg, hogy több slave lesz. Sajnos én igazán csak működő példákon keresztül tudok tanulni. |
Bejelentkezés
Hirdetés |