Fórum témák
» Több friss téma |
Keress másik projectet, ez hiányos. Utánanéztem orosz oldalon, nem teljes.
Akkor keresgélek köszönöm a segítségedet
Ezt miben írtad, mert nálam nem egészen így néz ki a 877A configja.
Íme:
Különös tekintettel az oszira és a power on, és boren timerekre. A hozzászólás módosítva: Aug 19, 2014
Erősítsetek meg, hátha csak én kerestem rosszul. Olyan lehetőleg 8 bites PIC-et keresek ami tud 3 PWM-et RGB vezérlésre, van 1 IIC vagy SPI kommunikációja,ezek mellet plusz 1 kimenet kell és minimális lábszámmal rendelkezik. A minimális amit találtam 20 lábú. Ha valaki tud ennél kevesebbet az jó lenne, de ha nem akkor lehet, hogy szoftveres PWM lesz belőle, ha a sebesség megengedi.
Mar bocs, de ez nem a '877A configja. A '877A config bitek igy vannak elnevezve:
Nalam ilyen a config:
Közben rájöttem, megnéztem én is, csak már nem tdtam javítani. Amit én írtam az már az mplab által generált változat a configra.
A hozzászólás módosítva: Aug 19, 2014
Sziasztok,
Igen, olvastam a szimulációra vonatkozó javaslatodat, de nem igazán értem mire gondolsz, illetve nem tudom, azt hogy kell csinálni. Mi és hol derülhetne ki. A hozzászólás módosítva: Aug 19, 2014
Ez így most működik!
Működik!!!! Kösz!
Nagy segítség volt, hogy kaptam tőled egy tutira kipróbált programot! Amíg a Te programoddal kísérleteztem, véletlenül rájöttem mi volt a baj! A csatolt képen látható kapcsolást használtam. Felváltva, hol PIC16F887-el, hol PIC16F877A-val. A 887-el semmi gond. A 877A a programozás után nem csinál semmit. AMÍG AZ MCLR VEZETÉKET KI NEM HÚZOM! (A rajzon okkersárga vezeték.) Úgy tűnik, ennél a PIC-nél, amíg a PICKIT2 1-es és a PIC MCLR össze van dugva, nem sikerül a VDD-re felhúzás, emiatt gondolom folyamatosan resetben van a PIC. Még ilyet?!?! De miért? És miért van ez másként PIC16F887-nél, PIC16F690-nél, PIC12F675-nél. Ezekkel kipróbáltam, ezeken nem kellett az MCLR vezetéket a PIC és a PICKIT2 között bontani a programozás után. Csak a 877A-n. Fura. Nagyon köszönöm még egyszer a segítséget!! L.
A MPLAB IDE egyik kituno szolgaltatasa a MPLAB SIM. Ezzel a PC- n tudod futtatni a PIC programjat HW jelenlete nelkul. Kivalasztod a Debugger-> Select Tool-> MPLAB SIM eszkozt, es tudod leptetni, futtatni a leforditott programot. A "Special Funtion Registers" ablakban lathatod a SFR-ek tartalmat, valtozasait, a "Watch" ablaban pedig lathatova valnak a valtozok. Persze van meg egy rakas mas funkcioja is (Stopwatch, Stimulus, Logic Analyzer...). Probald ki a Te programodat leforditas utan a szimulatorban. Nem nagy program igy konnyu lesz elkezdeni. A SIM kivalasztas utan a Debugger Settings-ben be tudod allitani az orajel frekvenciajat, valamint be tudod kapcsolni a "Stopwatch" funkciot. Utana tudod leptetni a programot sorrol-sorra, es lathatod hogyan valtoznak a regiszterek.
Talalhatsz magyar nyelvu leirast is a Juhász Róbert honlapjan.
A hozzászólás módosítva: Aug 20, 2014
Sziasztok!
Nagyon kezdő vagyok a témában és egy számomra érdekes jelenségre lettem figyelmes. Adott egy PIC18F45K22 és egy 8x8-as ledmátrix. Az első kódban minden lábhoz sorban meg van adva mikor mit tegyen, hogy az ábra kirajzolódjon:
Ez tökéletes eredményt ad, de kód nem újrafelhasználható, minden ábránál újra kellene írnom. A másik kódban egy tömbből olvasom ki az ábra adatait (így könnyebb megrajozni is).
Itt is megjelenik az ábra, de minden az ábrához tartozó bekapcsolt led alatt 1-egyel, halványan világít még 1. Mondhatnám úgy is, hogy szellemképes. Sötétben nagyon zavaró. Mi okozza ezt a problémát?
Előbb nullázd a LATC-t, állítsd be a LATA-t és utána állítsd be újra a LATC-t.
A hozzászólás módosítva: Aug 22, 2014
Köszönöm a megoldást, így már letisztult az ábra! Tehát egy pillanatra "átcsorgott" a LATA beállítása a következő sorra. De ezt miért nem csinálta az első kódnál? Ezen még gondolkodnom kell, hogy átlássam... köszi még1x
Sziasztok!
16F887-es PIC-kel szeretnék vezérelni egy 4 digites LCD kijelzőt. Azt már kitapasztaltam, hogy melyik szegmens hol van, de pont inverzben működik. Leírásokat böngészve azt találtam, hogy van valami BP láb a kijelzőn, amivel a polaritást lehet cserélni, és ha jól sejtem akkor rendesen fogja nekem mutatni a karaktereket. Tudna ebben vki tanácsot adni?
Nehéz ügy . Ott kezdődik, hogy a 887-esnek kevés a lába. Inkább használj erre kifejlesztett PIC-et (mondjuk 16F1946, az adatlapját mindenképpen érdemes tanulmányozni).
A lényeg: ha 1 BP van, akkor statikus módban kell vezérelni. Mivel az LCD nem kaphat egyenfeszültségű komponenst, ezt úgy szokták csinálni, hogy a hátlapra (BP) egy négyszögjelet vezetnek. Amelyik szegmensre ugyanilyen fázisú négyszögjel megy (tehát ahol a BP magas ott a szegmens is magas), akkor világos marad, ha ellenfázisú, akkor sötét ( tehát ha BP magas -> szegmens alacsony, BP alacsony -> szegmens magas). Ezt nem egyszerű leprogramozni, egyszerűbb másik PIC-et választani, esetleg LCD meghajtó IC (CD4543, PCF8576).
MPLab X alatt hol lehet állítani a frekit? Sehol nem találtam...
Nekem meg nincsen ilyenem. Talan a doksi megmondja.
A hozzászólás módosítva: Aug 22, 2014
Maximtól rendeltem korábban ingyenes mintákat, találtam köztük egy Max7231-et elvileg az is LCD dekóder. Még nem használtam ilyent, de megpróbálom ezzel.
Sajnos úgy látom az nem lesz hozzá megfelelő, mivel az 1/3 multiplexes LCD-hez való, ahol 3 BP lenne, neked meg statikus kellene. Ez a hátránya a statikus LCD-knek, hogy rengeteg kivezetés kell hozzá.
Sziasztok!
Nem tudom, hogy ebbe a topicba kell feltennem a kérdésem...? Inkább csak elvi lenne a kérdésem, ezért konkrét forrást most nem írok, majd ha oda jutunk. Szóval adott egy PIC18F46K80-as eszköz, három más idejű megszakításokkal (1,2, 10 msec) Az 1 msec-es ciklusban olvasok 5 analóg értéket, ami van, hogy rövid időre (kb. 0.1 sec) össze-vissza számot kapok. Olyan, mintha a táp vagy éppen nulla [V] kerülne az analóg bemenetekre. Azt kiszűrtem, hogy valahol az ASM-ben (mikroC-ben van a forrás) nincs-e véletlenül TRIS állítás vagy PORT-ra írás. Ami ugye okozhat ilyen jelenséget. A kérdésem az, hogy találkozott valaki ilyennel már, ill. mitől lehet az analóg konvertált értéke nagyban változó, miközben a bejövő jel mV-okat mozog. Üdv és köszönöm, Roland
Üdv.
Nem kell dekóder. Ettől sokkal bonyolultabb statikus lcd-t hajtok meg 18f6520-as pickel, és pont maradt 3 láb: 2 a soros portoknak, (hardveresen), 1 meg egy piezonak.
Srácok, írt már valaki közöltek olyan programot C nyelven amellyel egy PIC-et hálózaton keresztül lehet vezérelni?
Tehát lenne egy weboldal ahonnan el lehetne érni a PIC-et és a portjait lehetne állítani, esetleg egy-egy adatot pl. hőmérséklet vagy ilyesmit lehetne lekérdezni? Ha van valaki aki készített ilyen progit vagy akár hasonló megoldást és szívesen segítene annak nagyon örülnék. Egy tanuló projekt keretében szeretnék először egy weboldalról kapcsolgatható LED-es dolgot elkészíteni. **** (ui: 18-as családból 442, 452 és 4550-es PIC-em van itthon.) Felesleges részeket kivettem! Van a kérdésednek témája, használd bátran. -moderátor- A hozzászólás módosítva: Aug 25, 2014
Szamy, üzenet ment privátban, de esetleg itt is kifejthetnéd. Csodálkozom, hogy ebben a témában alig találtam leírást a neten. Sehol sem találtam kódrészletet arra vonatkozóan, hogy hogyan lehet statikus LCD-t hajtani mezei PIC-kel.
Sziasztok!
Valaki tudna segíteni, hogy az XC8 fordítóban az stdio.h állományban _HOSTED mit tesz? Próbálkoztam vele beirtam #include <stdio.h> elé, hogy #define _HOSTED, de akkor ezt az errort kaptam:_HOSTED:27: error: (125) illegal character (32543 decimal) in #if _HOSTED:86: error: (125) illegal character (32543 decimal) in #if _HOSTED:124: error: (125) illegal character (32543 decimal) in #if. És a hosted csak azokra az fv.-kre vonatkozik melyek a streamből vagy a streambe írnak. Még abban kérnék segítséget mint C18-ban megadható stdout = _H_USER és az XC8ban hogyan tehető? Köszönöm! |
Bejelentkezés
Hirdetés |