Fórum témák
» Több friss téma |
Szerintem ez a parancs állítja be a A/D csatorna számát az ADCON0 regiszterben:
Értelemszerűen a (2) a csatorna szám (AN2); Ja azt nem mondtam, de a TRISA érkéke 0xFF, vagyis minden Aport bemenet. Ez benne van. Mondjuk a referencia pontot állító regisztert én csak a komparátorhoz találtam, de lehet, nem voltam elég szemfüles.
Meg tudnád mondani melyik regiszter ez? Vagy az ADCON1 regiszter ezen beállításaira gondolsz?
Idézet: „ bit 5 VCFG0: Voltage Reference Configuration bit (VREF- source) 1 = VREF- (AN2) 0 = VSS bit 4 VCFG0: Voltage Reference Configuration bit (VREF+ source) 1 = VREF+ (AN3) 0 = VDD ” Ez nem csak a komparátorra vonatkozik?
Ez a rész az, ez az AD-re vonatkozik. Ez az "ADCON1"-ben van, de nálad jól van beállítva.
Rendben. Köszönöm a segítséget, akkor jobban körbenézek hardver ügyileg. Hátha valamit benéztem.
Igen, én erre gondoltam, illetve még arra, hogy konkrét AD konverterből álltalában csak egy van, csupán váltogatni lehet a bemeneteket. Assemblerben például előre ki kell jelölni az összes használni kívánt analóg bemenetet, majd az éppen beolvasni kívántat meg kell hívni.
Nem tudom a mikroC fordító mit hogyan fordít, de bizonyos, hogy valami hardver hibám van, mivel 2 PIC-et is raktam az áramkörbe, az eredmény ugyanaz, egyikkel sem működik. Megépítettem egy alapkapcsolást egy próba panelon, a fenti 2 PICCel nem (nyilván valami bajuk lett), de egy 3-adik PIC-el tökéletesen müködött. Tehát maradt az eredeti hardver összeállítási hiba. Köszönöm mégegyszer.
Idézet: „Egy kis segítségre lenne szükségem. Adott egy 18f4550-es PIC. Ennek a picnek a AN0, AN1, AN2, analóg bemeneteket szeretném használni analóg jel olvasásra.” A honlapomon találsz részletes leírást a PIC18F4550 ADC beállításáról (PICCOLO projekt).
Üdvözletem!
Köszönet a honlapodért! Jelenlegi assembly programozói tudásom kb 40%-át onnan mazsoláztam össze! Kár, hogy a PWM fejezet még nincs kész. Komoly kutatómunkát megspórolt volna nekem. Remélem, fogod még bővíteni. Nagyon várom.
Köszönöm a segítséget. Tényleg elég részletesen le van írva minden, lehet tanulni... Bár első olvasásra kicsit magas (nekem), de átrágva magamat rajta, gyakorolgatva, biztos nagy segítség lesz. Ritka a magyar nyelvű precíz leírás. Azt gondolom mindenki nevében mondhatom, hogy köszönjük szépen.
Kedves Hp41C! Igazad van a bemenetekkel kapcsolatosan. Ez is lehetne hiba forrása. Nem szabad üresen hagyni bemenetet (zavar forrás), de mondjuk azt nem mondtam, hogy a teljes A PORT csoport bemenetnek van használva, ebből az első 3 analóg, a többi digitális, és mind természetesen ellenállással a gnd-re van alapból húzva.
Sziasztok !
PIC24 szériához szükségem lenne egy 32bit/16bit -> 16bit, vagy egy 32bit/32bit -> 16bit osztó rutinra A netet áttúrtam magyar és angol nyelven, de csak szorzáshoz találtam. Valami olyasmi kellene, hogy pl.: osztandó -> REG1 és REG2 osztó -> REG3 kód végrehajtása eredmény -> REG4 A maradék most nem érdekes számomra. Ha valakinek volna egy működő megoldása, megköszönném ! Üdv.: Laci.
Van utasítása a 32bit/16bit -> 16bit osztásra. Ld. adatlap Instruction set summary DIV.
Igazad van ! Nem néztem át figyelmesen az adatlapot.
Köszönöm a választ ! Laci.
Sziasztok. Érdekes a jelenség. Egyszerűen a programozóm nem képes felismerni a 16LF628A és egy bontott 16F627A -val sem bír el.
Egy DIP tokozású 16F627 -es 18f4520 -as kontrollerekkel, vagy 24lc EEPROM -okat vígan megeszi. Körülbelül már 6 éves Szilva féle programozóm van, sosem volt vele gondom és most is jól működik, még a GS ellenállásokat sem forrasztottam be (ezutóbbi értéke mekkora legyen, mert nnem szeretném, hogy ennyin múljon egyszer.) A hozzászólás módosítva: Márc 2, 2015
A panelen az oszcillátor ki van építve vagy belső oszcillátor van kiválasztva, az MCLR funkció le van tiltva és / vagy a PGD ill. PGC lábak kimenetnek, T1 oszcillátornak vannak beállítva rögtön a program elején.
Programmer / Manual device select Device family / Midrange / Standard / PIC16LF628A Tools / Use Vpp First Programing entry Read Így mennie kell. A hozzászólás módosítva: Márc 3, 2015
Sziasztok!
Mplab 8-ban hol lehet beállítani hogy ne az forráskód mappába tegye a hulladékot (hex, err, cof, lst, map)?
Project / Build Options / Project
Sziasztok!
Fordult már elő veletek olyan, hogy tönkrement egy külső kvarc oszcillátorotok? Nekem nagyon max 2-3 óra használat után egyszerűen nem adott több órajelet, de nem működés közben szállt el, hanem egyszer táp bekapcsolása után egyszerűen nem szólalt meg. Szóval meglepődtem hogy miért nem csinál semmit az áramkör, így elég sokáig tartott kibogarászni hogy végülis ez a probléma. Kicseréltem másikra és ezzel már minden oké.
Sziasztok!
Assemblyben, hogyan lehet azt megtenni, hogy DE-vel eltárolok egy stringet a program memóriában és hogy két sort egy DE-vel (esztétika miatt) tudjak tárolni, hogy érthetőbb legyen: elgondolás
ahogyan működik
De ez nem tetszik és C-hez hasonlóan úgy szeretném figyelni, hogy mikor 0x0 értékkel tér vissza akkor "tudja", hogy kiírta a szövöget de ez csak akkor működik, ha két darab DE-t használok és páros számú a karakterek száma ha páratlan befordít egy 0x00 ahova nem kéne. Erre van megoldás assemblyben a C ben ismert sortörő karakterrel (\) is próbálkoztam de úgy se jó vagy esetleg más fordítás vezérlő utasítással lehet megoldani? Köszönöm!
Sziasztok!
Ilyet lehetne pic-cel vezérelni? 3w power led 700mA áramot vesz fel, szóval nem direktben gondoltam. Az megoldás lehet, hogy keresek egy tranzisztort, ami elbírja az áramot méghozzá kb stabilan, és azzal kapcsolgatom?
Sziasztok! Eddig nem igazán kedveltem a PIC-et (ezután sem fogom nagyon) , azonban egy egyszerű feladatot meg kellene valósítanom egy tokban. Vagy atmel, vagy pic, vagy texas. Gyakorlatilag egy bemenetválasztó. Mi kellene nekem ha (majdnem) nulláról szeretnék megvalósítani egy ilyet? (kép). Mennyi hardverre, mennyi szoftverre van szükségem (Windows XP)? Mekkora tárterületet kell beáldoznom? PAL-GAL megoldás is érdekes lehet, de ahhoz még kevésbé értek. Egy VS4000 Stager RAM/ROM/EEPROM/UV EPROM/GAL programozóm van, ami elvileg írja a PIC-et, de gyanítom, hogy maximum hex-et enged. Hányféle nyelv áll rendelkezésre ingyen?
Sziasztok!
Ide írok, mert PIC programozással kapcsolatos, és ez a téma legalább nem merül el a süllyesztőben, mint a sajátja, és talán több hozzáértő jár erre. Van nekem egy pár RFM73-as modulom, amiket szeretnék életre kelteni. Miután a gyártója (HopeRF) által közölt forráskód szinte használhatatlan, kénytelen voltam mást keresni. Meg is találtam Áron blogját, de a siker nem felhőtlen, mert Ő AVR-el foglalkozik. Gondoltam ezt a forráskódot átírom PIC-re, konkrétan 16F1705-re, be is vásároltam a cuccokat hozzá. Sajnos a program nem működik, Áronnal már vagy 50 üzenet váltás után arra jutottunk, hogy ketten kevesek vagyunk megoldani a problémámat. A vevő nem vesz tudomást az adó által küldött adatokról. Mindkét modulnál (az adónál és a vevőnél is), az SPI kommunikációt tesztelő programot beégetve jelzi, hogy működik, szóval a PIC és a modul közt nincs probléma a kommunikációban. A vevő oldal odáig sem jut el, hogy a modul vegye a jeleket, mert vételkor az IRQ lábon alacsony szintnek kéne lennie, ez állandóan magasan van. Tudtok segíteni? Mi lehet a baja? Fontos lenne, hogy összehozzam ezeket a modulokat, de én itt már tehetetlen vagyok.
Sziasztok!
SPI-nél több eszközt használok egy adatvonalon. Hogyan lehet megoldani a chip select-et? Ugyanis hamarabb váltok eszközt, mint ahogy gondolom az SPI buffer kiürül. Így az adatok egy részét nem a cél eszköz veszi.
Persze, simán!
Idézet: „Ilyet lehetne pic-cel vezérelni? 3w power led” Hát persze! Watt fórumtársunk oldalán találsz egy mintaprojekt leírást is hozzá: RGB_LLED_627A
Szia!
Használd a DT utasítást! Igaz, hogy a kód elé beír egy RETWL utasítást, de ennek nincs jelentőssége, mert nem az olvasható adatmezőbe teszi. Lényeg, hogy mindig 16 karakter legyen az idézőjelek között és két szövegrész közé tegyél vesszőt. Èn készítettem magamnak assembly-ben egy alapprogramot, ami lekezeli a kijelzőt, és a sorszámozott 2x16 karakteres szövegeket a program bármely részéről egy egyszerű utasítással lehet meghívni. Az alapprogram önálló egység. A Main rutin helyére bármi beírható. Összesen 255 szöveg tárolható le benne. Ha van rá érdeklődes egy cikkben leírom a működését és feltöltöm a szoftvert.
Sziasztok!
Még mindig az időzítőmmel szívok, amivel közben azért kicsit sikerült előre lépnem. Ezért köszönöm a tanácsokat mindenkinek, de legfőképp don_peter-nek a rengeteg segítségért. Közben csináltam paneltervet és nyákot is az időzítőmhöz, ezt mellékeltem is. Első sprintout-os munkám, így a szakavatottak biztos találnak benne hibákat. Ddiódákat nem tettem bele, de láttam olyan példakapcsolásokat, ahol szerepelnek, ezért a helye felkerült a panelra. Ennek még utána kell néznem. Valamint a csipogónak, mert alíg hallani a hangját. Szóval az elektronika nagyjából elkészült, közben a kijelzővel is sikerült dűlőre jutnom, valamint minden funkció működik. a kódom a következő:
Viszont a problémám az, hogy ha az időzítőt is szeretném használni, akkor az túl gyorsan fut le, tehát perceket másodpercek alatt számol. Pedig amikor az elején ledet villogtattam csak, akkor a beállított időnek megfelelő volt a villogás is. Valamint az időzítéssel párhuzamosan nem fut a végtelen ciklus tartalma, így az időzítés idejére a kijelző sem működik rendesen. Amikor a másodperc és perc pedig nullára ér, akkor pedig a TMR2IE nem áll le, hanem bennragad az időzítés azon if ágában, ahol a hangszóró csippanna és leállna a folyamat. Viszont ez nem egyet, hanem folyamatosan csipog. Tudnátok segíteni, hogy mit javítsak a kódomon, a szabályos működés érdekében? Üdv: spgabor Idézet: „...páros számú a karakterek száma ha páratlan befordít egy 0x00 ahova nem kéne.” A program 18F -re készül. A DT -s megoldás nem hatékony rajtuk. Abszolut kód: Írd két sorba külün DB direktíva sorba. Minden sor páros számú karaktert tartalmazzon. Relokálható kól: Nézd meg a code pack lehetőségeket.
Legalább 14 lábú tok kell a feladathoz: 16F630, 16F684, 16F688
A progarm kb. 20 - 40 sor assembly -ben, kb. 10 - 15 sor C -ben. 2k -ba bőven belefér. Programnyelvek: Assembly: MpLab 8.92 vagy MpLabX beépített assembly fordítója, C: C5X,CCS C, Microelektronika C, HighTech C, XC8. A demo / free változattal lehet ekkora programot fordítani Pascal, Basic: Microelektronika fordítók A Gooooogle rengeteget más fordítót is találna.
Hello!
Nekem a DT utasítással 18F14K22-es PIC működik. Valószínűleg az álltalam használt kiolvasási módszer más. Nálam csak akkor működik, ha így tárolom le: DT "Szerbusz pajti! "," Hogy vagy? " Tehát a szöveget mindig ki kell egészíteni space-val, hogy kilegyen a 16 karakter. Nem mellékesen, itt már a beírásnál látod, hogy fog kinézni a kijelzőn. |
Bejelentkezés
Hirdetés |