Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Én csak arra próbáltam terelni a figyelmet, hogy szenvedés helyett talán 1 kis EEPROM is elég lenne.
(LOMEX M24C02 kemény 28 Ft)
Sőt, a PIC saját EEPROM memóriáját is használhatná, ingyér!
A program elejére beszúrtam egy másik programom elejét. Átírtam benne a konfigurációs biteket úgy ahogy itt mondták. És ekkor rengeteg hibaüzenetet kidobott. A TRIS regiszterek deklarálásáról. Meg az ADCON1 reg. deklarálásáról. Azokat kikommenteltem. És szépen lefordult. A PICKIT2 sem nyavalygott a konfig bitek hiánya miatt. (És már nekem is leesett, hogy az ügyben mi volt a baj.) De ha ez megvan, akkor is csak annyit csinál a valóságban, hogy a kijelző első sorát elsötétíti. Ezt az eredményt már elértem párszor. (De nem ez a cél.)
Szia!
Töltsd be a forrást, menj a 7. sorra, másold le a sort! A lemásoltat alakítsd át a következőre:
Fordítsd le, töltsd be a PICkit2 programjával...
Az nem jó...arra én már rátenyereltem.. ott vannak letárolva a telefonszámok, az sms vezérlőparancsok meg egy csomó paraméter amik azért kellenek hogy egy áramkimaradás után ne kelljen újra smsben felprogramozni az egész kütyüt...Induláskor onnét olvassa ki a már beállított paramétereket. Szóval ott sem férnék már el...de az ötlet nem volt rossz, köszi.
Szia!
Biztosan jó az a forrás? Miért kezdődik a program a 0x4 vagy 0x5 címen?
Ezt ne tőlem kérdezd. Ez elvileg egy működő projekt forrása. Én amikor a régebbi MPLAB-bal szimuláltam beszúrtam egy org 0-át.
OK, akkor marad a nagyobb PIC vagy külső memória. A Winbond W25Q128BVFIG pl. 776 Ft-ért 128 megabitet (16 magabyte) kínál.
Na jo, de nem a forrasba tetted be! Ha MPLAB-bal firkalnad a PIC-et akkor jo lenne -- de jobb lenne ha bele raknad azokat a biteket a forrasba es akkor bele kerulne a HEX-be!
Igen, már bele írtam a forrás elejébe. csakúgy, mint az include-ot, meg a PIC típusjelét is. Íme a forrás. (De ekkor dobja a rengeteg hibát a deklaráció miatt.) Azokat meg kikommenteltem. Mivel nem látom értelmét hogy miért kell helyet lefoglalni a memóriából az alapvető regisztereknek. De itt a forráskód hogy érthető legyek.
Na lesz még ebből énekes halott. Ismét a régi MPLAB-bal kezdtem játszani. És abban is elkészítettem ezt a foráskódot. (Csatolva.) Ezzel már legalább kiír a kijelzőre egy pár teli kockát, alulvonást és O betűt. (Tehát nem jól, de legalább valami már működik.) (Na az összes előzményt hagyjuk, szerintetek ebben merre keressem a hibát.)
A bankváltások tutira jók. (Azt leteszteltem.) De mivel a kijelző csak egy sort jelenít meg pedig kettőt kellene neki, ezért azzal valami probléma van.
Szia!
Innen származik? Ez sem sokkal jobb, mert ez is 0x04 -ről indul... Mekkora órajelet használsz? Idézet: „;PIC16F877-4, 3.2768Hz, WDT OFF, POR ON, XTAL XT” Ez egy kicsit lassú, nem érdemes kivárni. Lehet, hogy 3.2768MHz kell neki? 2 sor helyett 1 sor: Ezzel már találkoztam, ott a D6 vonalon volt szakadás az LCD és a PIC között.
Szia, igen onnan származik.
Az eredeti áramkörben akkora értékű az oszci, mint ami kell. Most a tesztpanelemben nyaggatom, abban pedig 4MHz-es oszci van. A kijelzőt 4 biten kezeli és a D6 vonalon pont a PORTA4 van. (Ez nyitott draines.) Nekem az egy 1kohm-os ellenállással van felhúzva tápra. (Az eredeti kapcsolásban 10kohm-mal van felhúzva tápra.) De ez nem hiszem hogy gond lehet. Vagy igen?
Köszönöm mindenkinek a segítséget. Megvan a hiba. A teljes programot átnéztem leszimuláltam. És találtam még egy bankváltást, amit addig nem vettem észre. Ill. a decimális számokat is átirkáltam, mert azt hittem hogy decimálisan kezeli, ha csak simán oda van írva, de rájöttem hogy hexadecimálisan kezeli olyankor. (Szimulációnál vettem észre.) De az a lényeg hogy működik. Majd teszek fel pár képet, csak hogy lássátok mivel szenvedtem eddig. (Igaz a dobozolás miatt, még csúszik a képfeltevés egy pár napot.) (Na meg ha a max038 túlélte a fordított tápfeszt.) Mivel a mai kapkodásban egyszer sikerült fordítva adni neki a + és - 5V-ot.
Nem értem miért erőltetitek ezt a memóriás dolgot, mikor van más megoldás. Ráadásul, egy olyan, amit elejétől fogva kellett volna használni...
Sziasztok!
Szeretnék kérdezni valamit PIC-es kapcsolással és programozással kapcsolatban. Lehet kapni a conrad-nál egy LSG A671 nevű kétállapotú LED-et, amelynek két állapota van, egy piros és egy zöld. Ha erre 1,5-2 V-os feszültséget kapcsolok, akkor zölden világít, ha pedig polaritást váltok, akkor pirosan. Hogy tudnám ezt PIC-hez felhasználni? Hogyan tudok polaritást váltani a PIC két lábával? Konkrét rajz érdekelne PIC-hez illesztéssel és progiban is tanácsot várok! Köszi előre is!
Sziasztok!
PIC-el valamiféle megoldás lehet RGB lednél színt válltani? Valami féle analóg kimenetet lehet alkotni valahogy? láttam olyan megoldásokat,hogy csak 1 vagy 2 szint kapcsolnak be,de én nem olyanra gondoltam,az elég egyszerű. Hanem az átmenetet valahogy megvalósítani
Túlélte a max038. És nagyon szép jelet produkál. (Bár a szinusz kissé szögletes kisfrekin, de annak majd még utánajárok.)
Üdv, mindenkinek.
Én nemnagyon értek a pic-hez. De azért megpróbálom. Csatoltam egy képet én rajzoltam és azt szeretném tőletek kérdezni hogy ez igy működhet-e? A kapcsolás egy pic-el vezérelt optocsatoló. A segitséget előre is köszönöm.
Így van pont ahogy mondod! vagy mégsem...? Első ránézésre valóban feleslegesen tárolgatok le karaktereket mikor menet közben (ahogy érkezik az adat az RX en) ki tudom keresni honnan kezdődik a "lényeg". A felesleget átugrom / eldobom, most is ezt csinálom hogy a hellyel spóroljak... Nem véletlen vannak különböző karakterekkel elválasztva a különböző adatok az sms kiolvasásakor. Tehát kiválogatom honnan kezdődik a lényeg és már mehetne is kifelé a TX en a modul felé...De ott vérzik el a dolog hogy a vétellel egyidőben nekem küldenem is kéne a modul felé AT parancsot hogy felépítsem az sms küldését (AT+CMGS = " /itt ki kell olvasnom a küldendő telefonszámot/...stb stb) ez egyidőben a vétellel nem megy...!
Az, hogy a vételből rögtön az eepromba írom a szövegezést azon úszik el, hogy az írásnak ugye van késleltetése, e miatt lehet lemaradok a következő karakter vételéről....ahonnét 9600 al jön az adat.. Tehát nagyon úgy látszik hogy más PIC re kell az egészet fejlesztenem vagy marad az eredeti panelre "rávarrt" külső memória. Ami nem túl elegáns de célravezető...De, jut eszembe...szabad láb sincsen már a 648 ason....ahhoz meg ugye az kéne. És külső memóriát is csak fényképen láttam, a kezelése kimerül nálam annyiban max, hogy meg tudom fogni a csipesszel...
Bekötöd 2 I/O közé majd kiadod, hogy az egyik L a másik pedig H legyen. Ezután az egyik H és a másik L szintű. Ennyi. (értelem szerűen ha mindkettő L vagy mindkettő H szintű akkor nem fog világítani. Azért a soros áramkorlátozó ellenállást pl. 330R, ne feledd!)
Szerintem ehhez nem kell PIC....ha a LED tokjában két antiparalel dióda van és egy közös pontjuk (tehát a LED nek 3 lába van...) akkor ehhez elég egy inverter is. A LED ek közös lábát az inverterre kötöd a másik kettőt pedig tápra / födre , persze egy áram korlátozó ellenálláson keresztül. Vagy elég egy tranzisztor is...de smidth triggeres invertereket lehet már kapni smd tranzisztor méretben és árban, igy én azt használám...pl 74lvcg14
Ha két lábú a led akkor meg két kimenettel vezérled aminek a polaritásait (egszerre) megfordítod. De ehhez sem kell a PIC...szerintem.
Ha már PIC akkor milyen PIC el szeretnéd ezt összehozni..? És hogyan..? Úgy értem hogy pl felváltva villog a két szín mint egy astabil LED es villogó? vagy egy nyomógomb / kapcsoló hatására színt vált...stb?
Illetve a 3 kivezetéses esetben soros a két dióda és a közös pontjuk van kivezetve...
A lednek két kivezetése van. Egy PIC24FJ128GA010-es mikrokontrollerre helyezném rá. Semmi mást nem akarok, csak egy állapotjelzést megvalósítani. Ha zöld, akkor minden rendben, ha pedig piros, akkor pedig hiba van. Ezt még most csak tesztelem, úgy gondoltam, hogy 5 sec-ig zöld, majd 5 sec-ig piros. Csak teszt lenne.
Akkor ha jól értem, a PIC két lábára rákötöm és programból kiadom?
Idézet: Természetesen áramkorlátozó ellenállást is kell használni! „Akkor ha jól értem, a PIC két lábára rákötöm és programból kiadom?” Idézet: Többféle módon is lehet. Az egyik közismert módszer a kimenet ki/be kapcsolgatásán és a kitöltési tényező változtatásán (PWM) alapul.„PIC-el valamiféle megoldás lehet RGB lednél színt válltani? Valami féle analóg kimenetet lehet alkotni valahogy?” A PWM egyszerűbb esetekben szoftveresen is megvalósítható, de a PIC mikrovezérlők hardveres PWM egységgel (vagy egységekkel) is rendelkeznek. Azt azért meg kell nézni a PIC típusának kiválasztásakor, hogy melyik típus támogatja három (vagy több) egymástól független kitöltési tényező beállítását.
Ja, a lényeget kifelejtettem: Watt mester honlapján is találsz egy szép példát. Bővebben: Link
én is a PWM-emre gondoltam,de kondi nem kell hozzá? amit töltene közbe,és a led meritené.
elég lenne a szemnek az egyszerű pwm vezérlés? 4 mhz-en 1 utasítás 1 us csak tanulási célra szeretném kiprobálni, 16f877a-s pic,és van benne,de engem jobban érdekel az mpasm-be megírni Akkor köszönöm, csak így eszembe jutott,és sok helyen az rgb picnél azt jelentik,hogy összeraknak 3*3 ledet,3 különböző ledből 3 darab,és annak a kombinációja. |
Bejelentkezés
Hirdetés |