Fórum témák

» Több friss téma
Fórum » PIC kezdőknek
 
Témaindító: Placi84, idő: Okt 3, 2005
Témakörök:
- A PIC ÖSSZES Vdd és Vss (AVdd és AVss) (tápfeszültség) lábát be kell kötni!
- A táplábak mellé a lehető legközelebb 100nF-os KERÁMIA kondenzátorokat kell elhelyezni.
- Az MCLR lábat, 10kohm-mal fel kell húzni a Vdd tápfeszültségre.
- Külső kvarc használatakor 4MHz-ig XT, a fölött pedig HS konfigurációt kell beállítani.
- Stabilizált tápegységet kell használni, a kapcsoló üzemű "telefon töltő" adapterek okozhatnak hibákat.
- Programozáshoz, használj lehetőleg PICKIT2 vagy 3 programozót. Kerülendő a JDM (soros porti) programozó.
- A PIC adatlapja (PDF), tartalmazza a lábak kiosztását és a PIC minden paraméterét. Az adatlap ingyen letölthető!
- Egyes PIC típusoknál az RA4 nyitott nyelőelektródás (Csak lefelé húz L szintre, H szintet nem ad ki!)
- Ha a PGM lábat digitális ki-/bemenetnek használod, az alacsony feszültségű programozási lehetőséget le kell tiltani.
Lapozás: OK   917 / 1203
(#) pajti2 válasza kriszrap hozzászólására (») Ápr 4, 2017 / 1
 
Szoftveresen átlag úgy prellmentesítenek, elkülönítik a fizikai állapotot, és a virtuális állapotot. A virtuális állapotot változóban modellezik. Ha a főciklusod aszinkron design (ha nem az, használhatsz timer megszakítást is) rendszeresen olvasgass rá a bemenetre. A virtuális állapot változó folytán látni fogod, ha a fizikai bemeneten ellentétes érték van, mint a változóban. Csinálj egy számláló változót is. Ha a fizikai bemenet és a virtuális állapot azonosak, kinullázod a változót, ha ellentétesek, növeled eggyel a változót. Ha a változód elért egy korlát értéket, átváltod a virtuális állapotot, és lenullázod a számlálót. A bemenet "kiolvasást" külön a virtuális változóra irányítsd át, a fizikai bemenetet programból más célra nem használod, mint a fentebbi állapot gépre. Ha a számláló korlát értékére pedig találj ki valamit a főciklus vélhető sebessége alapján, gondolom, nem végtelen sebességgel pörög az sem. Kapcsoló prellmentesítésre 200 milli sec idő már elég, 50 milli sec alatt pedig valószínűleg kevés lesz. Ha a főciklusod ahhoz képest is nagyon kiszámíthatatlan, használj timer interruptot beidőzítve, és arra rakd rá a fizikai állapot beolvasást. Vagy ha van az alkalmazásodban "gépóra", akkor csak X időközönként futtasd a fizikai beolvasást, és ha még nincs ideje, simán skip. Kód részletet nem adok, mert csak elrontanám a szórakozásodat. Egyszer ilyesmit lekódolsz, olyasmi, mint a biciklizés, utána már menni fog készség szintjén. Első alkalommal értsd meg alaposan, miről is van szó, és csináld meg saját kezűleg. Később a copy / paste is elég lesz. Olvasnivaló oszcilloszkóp képekkel illusztrálva. Have fun.
(#) pajti2 válasza zenetom hozzászólására (») Ápr 4, 2017 /
 
Átszoktam laptopra, és itt mások a billentyűzet fizikai arányai. Ctrl-c/v -t használni aránytalanul nagyobb erőfeszítés. A csuklóm szétmenne tőle.
(#) pajti2 válasza sonajkniz hozzászólására (») Ápr 4, 2017 /
 
Oké, de már megint oda lukadtunk ki, hogy a hardveres környezeted véges teljesítőképessége erősebben van megközelítve a felhasználás által. A C és a trehányság nyilván erőforrást pocsékolnak, ami ha nincs, nem engedheted meg magadnak azt a luxust. De ha megengedheted magadnak a luxust, ugyan miért ne választanád a kényelmet?
(#) pajti2 hozzászólása Ápr 4, 2017 /
 
Idézet:
„Hmm. Hogyan mondják angolul, hogy "kevesebb lábszámmal"?”

Senki?
(#) sonajkniz válasza pajti2 hozzászólására (») Ápr 4, 2017 /
 
Idézet:
„De ha megengedheted magadnak a luxust, ugyan miért ne választanád a kényelmet?”

Biztos rosszul vagyok behuzalozva, de pl. az is csípi a szememet, ha kamionnal szállítanak egy darab egeret.
Értelmetlen pazarlás. Hogy ez lustaság, vagy üzleti érdek, az mellékes. Az viszont bizonyításra nem szoruló tény, hogy az egyszerűbb dolgok megbízhatóbbak.
(#) nedudgi válasza pajti2 hozzászólására (») Ápr 4, 2017 /
 
Sokféleképpen lehet mondani, környzettől függően.
Less pin, lower pin count például.
(#) icserny válasza nedudgi hozzászólására (») Ápr 5, 2017 /
 
Idézet:
„Less pin”

Inkább "fewer pins", lévén megszámlálható. Bár az FPGA-ra ez már nem biztos, hogy igaz...
(#) nedudgi válasza icserny hozzászólására (») Ápr 5, 2017 /
 
Ezért írtam, hogy környezetfüggő.
(#) Elektro.on válasza kriszrap hozzászólására (») Ápr 5, 2017 /
 
Szia!
Ha jól emlékszem te Mikro
C -ben programozol.
Ott van direkt erre fuggvény.
A hozzászólás módosítva: Ápr 5, 2017
(#) Udvari Zsombor válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Találtam még ezt a kapcsolást, amit 40×2 Hitachi kompatibilissé kellene tenni, valamint itt letölthető a komplett kód, de szintén Hitachi kompatibilissé kellene tenni, valamint kezelje a [home] gombot, mint reset; az [enter] gombot, mint sorváltó és a [backspace] gombot, mint szövegvisszatörlő. Itt van a Hitachi karaktertáblája, ami sokat segíthet.
(#) pajti2 válasza sonajkniz hozzászólására (») Ápr 5, 2017 /
 
Egy kicsit szélesebb látókörrel talán rájönnél, hogy a naprendszerünk csillagának a szemével nézve az egész emberi élet a Földön semmi több, mint értelmetlen energiapocsékolás. Szóval már azzal elrontottad, hogy megszülettél. És most benne vagy a slamasztikában Ahhoz képest is tényleg olyan nagyon fáj neked pár byte-nyi flash memória, ami egyébként is csak az enyészeté lenne?
(#) pajti2 válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Olvasom a felírásaidat, és azon a kérdésen vakarom a buksit, hogy vajon hol akadtál el?

Szóval kell neked egy célirányos kapcs rajz, vagy az már megvan? Tudunk tippet adni analóg és digitális elektronikai ismeretek ebook-okra, amikből tanulhatsz. Ha a kapcsrajz már okés, meg kell építeni az áramkört. Vannak elektronikai DIY fejtágítók és a legkülönfélébb termékek fejlesztői eszközökre, és alkotáshoz való munkaeszközökre. Nem olyan nehéz azt összerakni sajátkezűleg. Aztán ott van a pic adatlapja, ja igen, angol. De angolul is csak meg lehet tanulni. Le van írva a programozási menet, és a pic lehetőségei, ahogy a kijelzőnek is van adatlapja, hogyan jeleníthetsz meg rajta karaktereket, és a ps/2-nek is van leírása, hogyan fognak érkezni az adatok. Vannak nagyon jó könyvek programozási logika elsajátítására. Azután fel kell programozni a pic-et, valami programozót célszerűbb venni, mert vélhetően át fogod alakítani párszor azt a programot, kelleni fog. Vannak nagyon jó eszközök készülék dobozolásra is.

Szóval hol akadtál el? Mi a kérdés?
(#) pajti2 válasza nedudgi hozzászólására (») Ápr 5, 2017 /
 
A "pin count" tippet köszi, jól jött. Éppen buzz word-öt faragok, mert most olyanom van Szerinted hogy hangzik a "reduced pin count"?
(#) nedudgi válasza pajti2 hozzászólására (») Ápr 5, 2017 /
 
Jó. Esetleg a nem annyira frappáns "minimalised pin count"? Jobban tesszük, ha a politikamentes topikba folytatjuk, mert megbúbolnak.
(#) don_peter válasza kriszrap hozzászólására (») Ápr 5, 2017 /
 
  1. void nyfgy()
  2. {
  3.   if(PORTB.F1== 1 && gombjobb==0) { while(PORTB.F1); gombjobb=1; }
  4.   if(PORTB.F2== 1 && gombkozep==0) { while(PORTB.F2); gombkozep=1; }
  5.   if(PORTB.F3== 1 && gombbal==0) { while(PORTB.F3); gombbal=1; }
  6.  
  7.   if(PORTB.F1==0 && PORTB.F2== 0 && PORTB.F3==0)
  8.   {
  9. ...stb

Gyakorlatilag ez a legegyszerűbb, ám de nem a legszebb megoldás.
A while() ciklus addig pörög ameddig gomb logikai egyben tartod, vagy is le van nyomva a gomb, ha felengeded (logikai nulla esetén) azonnal tovább tud haladni.
(#) sonajkniz válasza pajti2 hozzászólására (») Ápr 5, 2017 /
 
Idézet:
„Egy kicsit szélesebb látókörrel talán rájönnél,”


Vagy szűkebb látókörrel nem zavarna!
(#) Hp41C válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Ez már jobb kapcsolás a feladatodhoz. A HD44780 adatlapján megtalálhatod a parancskészletét. Gooooogle barátod megkeresi Neked a PC keyboard codes ábrákat.
A betükre már működik a program, a home egy paranccsal (Return home) megoldható.
A visszatörlés már komplikáltabb. Tudnod kell hanyadik sorban hanyadik karakternél jársz.
- az első sor 1. pozíciójában nem kell csinálni semmit sem,
- a második sor 1. pozíciójában az első sor utolsó pozíciójára kell állni, kiírni egy betüközt és megint az első sor utolsó pozíciójára kell állni,
- máshol az előző pozícióra kiírni egy betüközt és megint az előző pozícióra állni.
A sorváltó csak a másik sor 1. pozíciójára áll.
A hozzászólás módosítva: Ápr 5, 2017
(#) nedudgi válasza Hp41C hozzászólására (») Ápr 5, 2017 /
 
Én inkább a memóriában tartanám az egész képernyőt, és billentyűleütésenként egy levegővel kiiratnám az egészet.
(#) Udvari Zsombor válasza Hp41C hozzászólására (») Ápr 5, 2017 /
 
Itt már találtam egy teljes billentyűzet kódtáblát, így az már megvan, de ehhez az alap elterjedt 16×2 kijelzőhöz kell-e valamit még módosítani a programon? Az is jó lenne, ha nagybetűk + kisbetűk + számok + írásjelek működnének, meg hogyan kell kivitelezni a visszatörlést? Persze nekem az is jó lenne, ha csak az adott sorban lehetne törölni... Valamint itt van az LCD doksija és a 11. oldalon van a karaktertáblája. Szóval nincsenek ékezetek, de legalább amerikai kiosztással működjön!
A hozzászólás módosítva: Ápr 5, 2017
(#) Elektro.on válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Hol akadtál el?
Mi az amit önállóan meg tudsz oldani?
(#) Udvari Zsombor válasza Elektro.on hozzászólására (») Ápr 5, 2017 /
 
Abban kellene segítség, hogy ennek a lábait a PIC hányas lábaihoz kössem, valamint a PIC mely lábaira kössem a PS/2 adatlábait! Egy kapcsolásért vagy csak a leírásáért hálás lennék! Ja, és a PIC hányas lábai az 5V minusz és plusz?
A hozzászólás módosítva: Ápr 5, 2017
(#) Elektro.on válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Az , hogy ezeket hová kötöd az attól függ , hogy írod meg a programot.
(#) Udvari Zsombor válasza Elektro.on hozzászólására (») Ápr 5, 2017 /
 
De össze szeretném előbb állítani a kapcsolási rajzot, hogy véglegesíthessem az anyaglistámat, amit megrendelek! Úgyhogy kérném szépen, hogy melyik lábakra tegyem a kijelzőt és a PS/2 csatlakozót, valamint mely lábak az 5V minusz és plusz?
(#) Hp41C válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Végülis pont kijön a 8 bites LCD kezeléssel is:
LCD/D7..D0 - PIC/RB7..RB0, LCD/CD - PIC/RA0, LCD/E - PIC/RA1, LCD/RW - Vss
PIC/RA7..RA8 - Quartz, PIC/MCLR - ellenállással Vdd -re.
PS/2 CLK -PIC/RA2, PS/2 DAT - PIC/RA3 --- Úgyis kell felhúzó ellenállás.

Mehet az LCD 4 bitesen is, ekkor a RB3..RB0 felszabadítható.
(#) Udvari Zsombor válasza Hp41C hozzászólására (») Ápr 5, 2017 /
 
Az itt letölthető kódból kiindulva hány bites legyen? És milyen értékűek legyenek az ellenállások?
Idézet:
„PIC/RA7..RA8 - Quartz”
Ezt hogy érted? tegyek oda egy külső quartzot? Ha igen, mekkorát?
A hozzászólás módosítva: Ápr 5, 2017
(#) Udvari Zsombor válasza Hp41C hozzászólására (») Ápr 5, 2017 /
 
Most nézem, hogy az LCD lábainak jelölései:
VSS, VDD, V0, RS, RW, E, D0...D7, A, K
Úgyhogy nincs CD jelölésű láb! Kérlek, hogy nézd meg ezt a fotót és pontosítsd, amit írtál!
(#) Hp41C válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Idézet:
„Az itt letölthető kódból kiindulva hány bites legyen?”

Ránézel a kapcsolási rajzra a belinkel oldalon. Nini, az LCD D3..D0 kivezetése nincs bekötve... Hm .... Akkor nem mehet 8 bitesen....
Idézet:
„Ezt hogy érted? tegyek oda egy külső quartzot? Ha igen, mekkorát?”

Végülis a 16F88 -nak van belső órajel generátora is, így elhegyható a quartz.
Idézet:
„És milyen értékűek legyenek az ellenállások?”

PS/2 keyboard interface
A MCLR -hez jó a 4k7 .. 10k.

RS (Register Select) megfelel a CD (Command/Data) -nek.
A hozzászólás módosítva: Ápr 5, 2017
(#) Udvari Zsombor válasza Hp41C hozzászólására (») Ápr 5, 2017 /
 
Tehát ha jól értem, akkor D0...D3 lábak nincsenek bekötve? Pedig a PICen simán lenne hozzá láb! És akkor nem kell külső quartz? Az jó! Viszont közben írtam, nézd kérlek át a dolog tisztázása végett!
(#) Udvari Zsombor válasza Hp41C hozzászólására (») Ápr 5, 2017 /
 
Ugye a VDD az a 5V negatív?
(#) attika válasza Udvari Zsombor hozzászólására (») Ápr 5, 2017 /
 
Nem az a 5V, a VSS a negatív.
Itt sokmindenre fény derül ha olvasgatod kicsit.
A hozzászólás módosítva: Ápr 5, 2017
Következő: »»   917 / 1203
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem