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   1148 / 1210
(#) slimcolt hozzászólása Jan 23, 2021 /
 
Sziasztok,

Valaki segítene elmagyarázni, hogy PIC32-nél a megszakítás vezérlőnél, pontosan mire való a vector spacing? Sajnos nem bírom felfogni az adatlapból.
Gyakorlatban mi határozza meg a vector space-t, hogy mekkora legyen?
(#) slimcolt hozzászólása Jan 23, 2021 /
 
Másik dolog:

PIC32MM-ben megszakításként szeretném kezelni a UART RX-et, sikerült beállítani, működik.
Jelenleg URXISEL = 0 beállítással működik.
De elméletileg a hardvernek 8 szintű RX FIFO-ja van és én ezt szeretném használni, hogy ne legyen annyi megszakítás az adatok érkezése közben.
Ha az URXISEL-t átállítom 0b01-re, hogy akkor kapjak megszakítást ha a buffer már legalább félig megtelt, akkor nem sikerül értelmesen kiolvasnom az adatokat.

a megszakítási rutinom ebben az esetben:

  1. void __ISR(_UART2_RX_VECTOR, IPL6SOFT) UART_RX_Interrupt(void)
  2. {
  3.     while(U2STAbits.URXDA) // amíg van adat a bufferben
  4.     {
  5.         UART_RX_BUFF[UART_RX_CNT++] = U2RXREG; // kiolvasás
  6.     }
  7.     IFS1bits.U2RXIF = 0;
  8. }


Az adatokat pedig innen szedegetem ki:

  1. uint8_t UART_RX_DATA(void)
  2. {
  3.     while(UART_RX_CNT == 0);
  4.     UART_RX_CNT--;
  5.     return UART_RX_BUFF[UART_RX_CNT];
  6. }


Hogy kell ezt a hardveres FIFO-t használni normálisan?
A hozzászólás módosítva: Jan 23, 2021
(#) bitmixer hozzászólása Jan 24, 2021 /
 
Sziasztok!
PIC16F871 (de 16F684 típussal is előfordult) PicKit2 általi első kiolvasásakor a programmemória 0 címén hamis dolgot mutat, jellemzően 0x2585 értéket. Ha ilyenkor a jó hex-et ráégetem a csipre, majd rögtön kiolvasom, akkor jó. Ha viszont a Tools menüből csinálok Check Communication-t, majd újra olvasok, akkor újra hamisat olvas. Ilyenkor valóban az is van benne, mert a progi nem működik. Több csippel is ugyanez a helyzet, valamint egy másik PicKit2-vel is. Találkoztatok már ilyen hibával? Kösz, üdv.
(#) Bakman válasza bitmixer hozzászólására (») Jan 24, 2021 / 1
 
Rémlik valami, mintha a Tools menü -> Fast Programming kikapcsolása segített volna a dolgon.
(#) bitmixer válasza Bakman hozzászólására (») Jan 25, 2021 /
 
Kösz az ötletet, kipróbáltam. Tegnap úgy tűnt, hogy bevált, de ma újra többször előfordult a hiba, pedig a Fast P végig ki volt kapcsolva... leginkább Tools > Check Comm után jön elő. Rendszert nem tudtam benne felfedezni.
(#) Hp41C válasza bitmixer hozzászólására (») Jan 25, 2021 / 1
 
El kell felejteni a Tools > Check Communication menüpontot.
Végigpróbálja az összes családot, addig amíg nem talál megfelelő kiolvasott azonosítót. Egy szakadt vagy nem jól érintkezővezeték, egy elkötés következménye az lehet, hogy egy alacsony feszültségű típust (PIC24, dsPIC30, dsPIC33, PIC32) megpróbál 12V Vpp -vel kiolvasni. Ez tönkre is teheti a kontrollert.
Javaslom a kézi típuskiválasztást és a kontrollerrel való kapcsolat ellenőrzésére a Read parancsot.
(#) bitmixer válasza Hp41C hozzászólására (») Jan 25, 2021 /
 
Örök hálám, ha ez stabilan működik. Egyelőre úgy néz ki, hogy az eddigi háklis uC típusoknál sem hibázik, ha kézzel választom ki. Mindig tanul az ember
(#) Peet19 hozzászólása Jan 26, 2021 /
 
Sziasztok!

Mplab 8.92-be be lehet valahogy tölteni új PIC könyvtárát ami nincs benne jelenleg?
Ha igen, akkor hogy?
Előre is köszi.
(#) zoltan48 válasza Hp41C hozzászólására (») Jan 29, 2021 /
 
Üdvözöllek ő lenne az amit a pic16f690 szeretnék felprogramozni, és hex fájl formátumba kellene, előre is köszi
(#) Hp41C válasza zoltan48 hozzászólására (») Jan 29, 2021 /
 
Íme..
(#) zoltan48 válasza Hp41C hozzászólására (») Jan 29, 2021 /
 
Kedves barátom ! nagyon szépen köszönöm és kérdezem ha véletlen össze akadnék még ilyen programmal kérdésem lenne leforditanád azt is ?
Még1gyszer köszönöm
(#) korozsi hozzászólása Jan 31, 2021 /
 
Sziasztok

Teljesen laikusan kerdezem töletek, hogy a Pic.-t hany alkalommal lehet programozni?

Üdv: Gabor
(#) benjami válasza korozsi hozzászólására (») Jan 31, 2021 /
 
Függ a típustól, meg a hőmérséklettől is. Az adatlapban meg van adva a garantált minimum és a tipikus érték is. Az "Endurance" szóra keress rá, úgy hamarabb megtalálod.
(#) Pali79 válasza korozsi hozzászólására (») Jan 31, 2021 /
 
Típus és hőmérséklet függő, 100k és 10M között átlagban.
(#) korozsi válasza Pali79 hozzászólására (») Jan 31, 2021 /
 
PIC12F1822 erröl lenne szo
(#) Pali79 válasza korozsi hozzászólására (») Jan 31, 2021 /
 
Azt írja -40és +85 fok között minimum 10.000-szer.
(#) korozsi válasza Pali79 hozzászólására (») Feb 1, 2021 /
 
Köszönöm
(#) sonajkniz hozzászólása Feb 1, 2021 1 /
 
Sziasztok!
Egy kis segítségre lenne szükségem.
A mellékelt kijelzővel van némi problémám.
Azt írja az adatlap, hogy a DDRAM-ja 80 byte. A bajom csupán az vele, hogy ez egy egysoros kijelző, és ha betöltök 60 byte adatot, majd léptetem, mindössze 40 byte adatot léptet körbe. Hogyan lehetne rávenni, hogy a többit is kiadja?
Előre is köszönöm.
(#) Bakman válasza sonajkniz hozzászólására (») Feb 1, 2021 / 1
 
A DDRAM címek nem egymás utáni címek, vannak hézagok. 0x00 - 0x27 (első 40 bájt) és 0x40 - 0x67 (második 40 bájt).

HD44780 Tutorial
(#) sonajkniz válasza Bakman hozzászólására (») Feb 1, 2021 /
 
Köszönöm, de megoldódott.
Véletlenül kétsorosnak állítottam be a kijelzőt.
Most már megy rendesen.
(#) tigris127 hozzászólása Feb 4, 2021 /
 
Sziasztok! Teljesen kezdő vagyok, és segítségre volna szükségem.
Vettem egy pickit3 programozót. A gépemen egy mplab ibe 5.40 van. Amikor elindítom a programot és a gépre rácsatlakoztatom a pickitet, azonnal felismeri. A pickiten a power és az active led világít folyamatosan -csatlakozáskor a status led is felvillan, majd elalszik-. Majd ha a csatlakozás gombra kattintok akkor kis idő elteltével a "Kapcsolat sikertelen" üzenetet kapom, de van hogy a: "A céláramkör több energiát igényelhet, mint amennyit a hibakereső eszköz képes biztosítani. Szükség lehet külső tápegységre." (google fordító), és a PIC nincs is rácsatlakoztatva.
Megmértem az usb 5,1V tehát elméletileg rendben volna.
Szóval, vajon mit hagytam ki, vagy mit csinálhatok rosszul, hogy nem megy?
(#) Bakman válasza tigris127 hozzászólására (») Feb 4, 2021 /
 
A csatlakozás gombot úgy kell érteni, hogy csatlakozás a cél kontrollerhez. A PICkit3 ilyenkor csak mint közvetítő szerepel. Ha a végére nincs mikrokontroller kötve, akkor dobja ezt a hibaüzenetet.
(#) tigris127 válasza Bakman hozzászólására (») Feb 5, 2021 /
 
Hozzácsatlakoztatott PIC-nél is ezt írja ki:
The target circuit may require more power than the debug tool can provide. An external power supply might be necessary.
Connection Failed.
(A céláramkör több energiát igényelhet, mint amennyit a hibakereső eszköz képes biztosítani. Szükség lehet külső tápegységre.
Kapcsolat nem sikerült.)
Ha külső táppal próbálkoznák, azt hogyan és hova kéne kötni, illetve mekkora feszültséggel?
PIC12f629, illetve 16F84 próbáltam
A hozzászólás módosítva: Feb 5, 2021
(#) Bakman válasza tigris127 hozzászólására (») Feb 5, 2021 /
 
Próbapanel vagy valamilyen adapter amivel csak a kontrollert hozzá tudod csatlakoztatni a PICkit-hez, van kéznél?
(#) tigris127 válasza Bakman hozzászólására (») Feb 5, 2021 /
 
van, így egyben

12.JPG
    
(#) Bakman válasza tigris127 hozzászólására (») Feb 5, 2021 /
 
Trükkös adapter, valószínűleg valami nincs jó helyen. A mellékletek alapján ellenőrizd a helyes összeköttetést.
(#) bbatka válasza tigris127 hozzászólására (») Feb 5, 2021 /
 
"Ha külső táppal próbálkoznák, azt hogyan és hova kéne kötni, illetve mekkora feszültséggel?"

Mindkettő 5V-ról táplálható. Nyilván az IC megfelelő táp lábaira kell kötni. (+5V,GND)
Az égető szoftverben valószínűleg be kell állítani, hogy külső tápról kapja a tápfeszt.
Én sohasem használok adapterhez plusz tápot, mert sohasem igényelte a PICKIT3.
Erősen furcsállom, hogy nálad ezt reklamálja.

Azt nem találtam meg, hogy a PICKIT3 támogatja-e a PIC16F84-et. Az eszközt meg lusta voltam előszedni. A PICKIT2 kéznél volt. Az csak a PIC16F84A-t támogatja. Ez azért megérne még egy kis nyomozást.
(#) Bakman válasza bbatka hozzászólására (») Feb 5, 2021 /
 
Támogatja a PIC16F84-et is "NoDeviceID" csoportban. Igaz ami igaz, nem túl szerencsés ilyen őskövülettel kezdeni.
(#) Hp41C válasza Bakman hozzászólására (») Feb 5, 2021 /
 
Csak abban az esetben támogatja a PICkit2 a PIC18F84 -et, ha egy nem gyári pk2devicefile.dat állományt használ. A fórumra általam feltöltött PK2DeviceFile_1.62.14_mod6.dat -ban benne van.
Figyelem: A 16C83, 16C84, 16F83 és a 16F84 nem rendelkezik típusazonosítóval (device id), így nem detektálható. Kézi típusbeállítással lehet csak kezelni.
Továbbá nagyon érzékenyek arra, hogy mikor kapcsol be a Vpp a Vdd -hez képest. A Vpp megjelenése Vdd nélkül tönkre is teheti a kontrollert. Minden képen érdemes duplán leellenőrizni a bekötést. A PICkit2 programmal bekapcsolva a Vdd -t megvizsgálni, hogy eljut-e a kontroller lábára.
(#) Bakman válasza Hp41C hozzászólására (») Feb 5, 2021 /
 
Akkor ezért támogatja. Nem mintha valaha láttam volna élőben ilyen kontrollereket.
Következő: »»   1148 / 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