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   425 / 1210
(#) tomat5 válasza Szpisti hozzászólására (») Jún 24, 2013 /
 
Szia
Tegyél be 3/8 demultiplexert (74238 azt hiszem) a szegmensek meghajtására. Plusz 5 láb. Vagy a maradék 3 lábbal hajtsd meg a hexa kijelzéshez.
A hozzászólás módosítva: Jún 24, 2013
(#) nedudgi válasza (Felhasználó 15355) hozzászólására (») Jún 24, 2013 /
 
A LED kijelző előnye, hogy messzebbről olvasható!
A hozzászólás módosítva: Jún 24, 2013
(#) Szpisti válasza nedudgi hozzászólására (») Jún 24, 2013 /
 
Nekem tulajdonképpen mindegy lenne, mivel lehet kivitelezni, a kapcsolást és a kód linkjét csak azért linkeltem, mert ott már valaki kidolgozta nagyjából a lényeget - és tán szemléletesebb hogy mit szeretnék.
A kijelzés mindenképpen erős fényű nagyméretű ledes hétszegmenses kell hogy legyen, mivel ez egy midis lábpedál lenne, ami tulajdonképpen a 0-15 számokkal tudatja , épp melyik programhely került kijelölésre.
Köszi hogy ránéztek!
(#) Szpisti válasza nedudgi hozzászólására (») Jún 24, 2013 /
 
Rátapintottál!
(#) nedudgi válasza Szpisti hozzászólására (») Jún 24, 2013 /
 
A MIDI-ről nem tudok szinte semmit. Ha teljeskörűen megírod, mit szeretnél, a NYÁK gyártás kivételével szívesen segítek. Kész kapcsolásom most nincs, de hasonlót csináltam mostanában. Hány kimenet kell, kell-e a decimális vagy hexa kijelzés.
A hozzászólás módosítva: Jún 24, 2013
(#) Szpisti válasza tomat5 hozzászólására (») Jún 24, 2013 /
 
A 74238 az nem 7 szegmens meghajtó, csak demultiplexer A vezérlő bin. kód mindig csak egy kimenetet engedélyez.
(#) Szpisti válasza nedudgi hozzászólására (») Jún 24, 2013 /
 
Ez esetben a midihez szerencsére nem kell érteni, csak a kérdésben felvázolt dolgokhoz.
Priviben elmondom konkrétabban.
(#) tomat5 válasza Szpisti hozzászólására (») Jún 24, 2013 /
 
Bocs, egy régi emlék ugrott be, én a kijelzők multiplexelésére használtam annó.
(#) Hp41C válasza nedudgi hozzászólására (») Jún 24, 2013 /
 
Nem tudom kell-e a dp vezérlése. Egy RA0 -ra kötött inverterrel (egy tranzisztor is lehet) RA1 felszabadítható.
74238: Ha a B porton BCD kódot adna ki (csak 4 bit), egy 74LS47 -tel kellene vezérelni a kijelzőket, de akkor közös anódos típus kellene. Lehetne CD4511 -et vagy CD4543 -at is felhasználni. Így további 3 (vagy 4) láb felszabadulna.
(#) nedudgi válasza Hp41C hozzászólására (») Jún 24, 2013 /
 
A 74LS47 ellen van egy komoly kifogásom - a 6 és 9 karakterek nagyon csúnyák a vízszintes a illetve d szegmens nélkül. Akkor már inkább 2 sorral több a programba...
Az eredeti kontrollerhez képest az újabbak annyival olcsóbbak, hogy a dekóder IC-t csak akkor érdemes használni, ha egyéb feladatot is a PIC-re akarunk sózni (vagy van otthon a fiókban) - szoftveresen lerendezhető a dolog, mert láb van bőven.
(#) norbigal hozzászólása Jún 24, 2013 /
 
Fejlemények:
Ha valaki megint ilyennel tévedne ide leírom, hogy miként oldódott meg a 7.37MHz-es 5uSec-os megszakítás problémája:
Az MPLABX szimulátorában a logikai analizátorral és stopwatch funkcióval is mértem az időtartamokat és a flag mindig jelez, mikor kell, de a megszakítás akkor is dupla annyi időnként érkezik. Érdekesség (nekem legalábbis) hogy a logikai analizátor csak néhány mSec-os tárhellyel bír, legalábbis nálam ennyi idő eltelte után a korábbi jelalak teljesen eltűnt és mindig csak az utólsó pár mSec-ot mutatja ki grafikusan - visszanézni nem lehetett, hiba zoomoltam vagy állítottam az idő tengelyén. (nem, mielőtt valakiben felmerül, nem voltam rázoomolva vagy hasonló amatőr hiba sem lépett fel ) Bár egy MPLABX-től elvárnám hogy bármilyen hosszúságú jelalakot képes legyen tárolni, de mégsem... (Vagy csak a gépemben van a hiba?!?! Majd kipróbálom egyszer egy másik gépen is, hátha az megoldja a problémát.)

Egy másik érdekesség volt viszont, hogy a korábban bemásolt programomban ha a PR2 regisztert módosítottam (például duplájára növeltem, vagy négyszeresére) akkor a megszakítások között eltelt idő egyáltalán nem növekedett duplájára, csupán 1-2 uSec-mal lett hosszabb - mind hardveren, mind szimulátorban.

A megszakítás problémáját végül úgy oldottam meg, hogy maximumra állítottam az órajelet a PLL segítségével, így 40MIPS mellett már gyönyörűen működik az 5uSec-os megszakítás. Tehát ha valaki hasonló problémába futna, nemes egyszerűséggel növelje meg az oszcillátor frekvenciát és megoldódik a probléma.
A hozzászólás módosítva: Jún 24, 2013
(#) Hilo hozzászólása Jún 24, 2013 /
 
Sziasztok, PicKit2-t ha csak bedrótozom próba panelre, akkor simán lehet vele így is írni, jól tudom?
(#) vicsys válasza Hilo hozzászólására (») Jún 24, 2013 /
 
Ha jól "drótozol" és egy-két dolgot szem előtt tartasz, akkor igen, hisz ez az ICSP lényege.
(#) Doky586 válasza nedudgi hozzászólására (») Jún 24, 2013 /
 
A 16F628A ára 410Ft, a 16F1825 ára 340Ft, így 70Ft-ot spórolhat meg max! Megéri?
Mondjuk 1000 Ft órabérrel átírja a kódot (ha csak .hex ben van készen akkor... fél óra egy profinak, amatőrnek egy nap)

Mennyit spórolna ????
Ha 10percnél nem szán rá több időt talán megéri. de egy kávé se futja ki belőle.
viszont beleakadhat olyanba amibe nem szeretne..
A hozzászólás módosítva: Jún 24, 2013
(#) Hp41C válasza nedudgi hozzászólására (») Jún 24, 2013 /
 
7447 -> 74LS247 Máris szép a 6 és a 9. Egyébként néhány külső elemmel a 7447 -nél is lehet széppé varazsolni őket.
Az advanced Midrange alkalmazásához az egész programot át kell írni a bankváltások miatt.
A BCD kimenethez egy csúnya, de egyszerű megoldás a Bináris - hétszegmenses táblázat átírása Bináris - BCD táblázatra.
A hozzászólás módosítva: Jún 24, 2013
(#) nedudgi válasza Doky586 hozzászólására (») Jún 24, 2013 /
 
Ha elolvasod az előzményeket, kiderülhet, hogy a kódot át kell írni. Én fogom átírni.
(#) Doky586 válasza nedudgi hozzászólására (») Jún 24, 2013 /
 
Bocsi, de nincs előzmény. Ez az első válasz Szpisti-nek..
(#) nedudgi válasza Doky586 hozzászólására (») Jún 24, 2013 /
 
Volt még, moderálás előtt.
(#) Szpisti hozzászólása Jún 24, 2013 /
 
Az "advanced midrange"-ot értem, csak nem tudom mit jelent ezesetben de mivel privátban elárultam a kívánságaimat nedudginek, remélhetőleg el fog boldogulni vele . És remélem majd bankot sem kell váltanom ha benyújtja a számlát
(#) nedudgi válasza Szpisti hozzászólására (») Jún 24, 2013 /
 
Nem váltani, rabolni kell!
A hozzászólás módosítva: Jún 24, 2013
(#) jonatani01 hozzászólása Jún 24, 2013 /
 
Tud valaki segíteni?
Miért nem villog a LED-em ezzel a programmal?

  1. #include <p16F690.inc>
  2.      __config (_INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOR_OFF & _IESO_OFF & _FCMEN_OFF)
  3.  
  4.     cblock 0x0C
  5.     delay1
  6.     delay2
  7.     endc
  8.  
  9.     org 0
  10.  
  11. Start:
  12.     bsf     STATUS,RP0
  13.     movlw   b'11111110'
  14.     movwf   TRISC
  15.     bcf     STATUS,RP0
  16.     goto    Ledon
  17.  
  18. Ledon:
  19.     bsf     PORTC,0
  20.     movlw   0xFF
  21.     movwf   delay1
  22.     movlw   0xFF
  23.     movwf   delay2
  24.     goto    Loop1
  25.  
  26. Ledoff:
  27.     bcf     PORTC,0
  28.     movlw   0xFF
  29.     movwf   delay1
  30.     movlw   0xFF
  31.     movwf   delay2
  32.     goto    Loop1
  33.  
  34. Loop1:
  35.     nop
  36.     nop
  37.     nop
  38.     nop
  39.     nop
  40.     decfsz  delay1
  41.     goto    Loop1
  42.     goto    Loop2
  43.  
  44. Loop2:
  45.     movlw   0xFF
  46.     movwf   delay1
  47.     decfsz  delay2
  48.     goto    Loop1
  49.     btfsc   PORTC,0
  50.     goto    Ledoff
  51.     goto    Ledon
  52.  
  53. end


Kérlek használd a kód gombot!
A hozzászólás módosítva: Jún 24, 2013
(#) jonatani01 hozzászólása Jún 24, 2013 /
 
(Az oszlopok a programban a helyükön vannak)
(#) Hp41C válasza jonatani01 hozzászólására (») Jún 24, 2013 / 1
 
Az analóg funkcióval rendelkező lábak analóg módban vannak reset után. Ha róluk olvasol, mindig 0 -t kapsz. ld. ANSEL, ANSELH
A hozzászólás módosítva: Jún 24, 2013
(#) jonatani01 hozzászólása Jún 24, 2013 /
 
Köszi, habár nem értek még az analóg módhoz sajnos, de a probléma okát legalább tudom köszi még egszer
(#) Hp41C válasza jonatani01 hozzászólására (») Jún 24, 2013 /
 
A program elejére:
  1. banksel ANSEL
  2. clrf ANSEL
  3. clrf ANSELH
  4. banksel PORTA
(#) Hilo hozzászólása Jún 24, 2013 /
 
Sziasztok, Keresek valami leírás vagy infót a "hogyan tovább"-ról.
Adott: PicKit2 (eredeti), MPLAB 8.88
12f683-t szeretnék programozni vele. Merre tovább?
MPLAB tud e írni vagy kell más program is mellé? Miket kell beállítani MPLAB-ban első nekifutásra?
Ha bedrótozom a PicKit2-t PIC hez próbapanelba, akkor a tesztelések alatt tud adni tápfeszültséget a PIC nek próbálgatásokhoz, vagy máshonnan kell megoldanom?
Minden segítséget köszönök előre is!
(#) Hp41C válasza Hilo hozzászólására (») Jún 24, 2013 / 1
 
Jó az irány. MpLab tudja programozni. Project / Project Wizzard menüpontot végigcsinálni. Tud tápot adni.
A hozzászólás módosítva: Jún 24, 2013
(#) Hilo válasza Hp41C hozzászólására (») Jún 24, 2013 /
 
Valami leírás vagy olvasni való akad erről?
(#) Hp41C válasza Hilo hozzászólására (») Jún 25, 2013 / 1
 
(#) icserny válasza Hilo hozzászólására (») Jún 25, 2013 / 1
 
Következő: »»   425 / 1210
Bejelentkezés

Belépés

Hirdetés
XDT.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