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   1097 / 1210
(#) szucsistvan123 hozzászólása Aug 31, 2019 /
 
Üdv!

Megint elakadtam egy kicsit!
Próbálom működésre bírni az UART1 modult, de sem adatot küldeni, sem fogadni nem akar.

PPS:
  1. void PPS_Setup(){
  2.    
  3.     RPINR18bits.U1RXR = 0x04;     // UART1 RX RP4 (pin 11)
  4.     RPOR2bits.RP5R = 0x03;        // UART1 TX RP5 (pin 14)
  5.    
  6. }


Az U1TXREG regiszternek 0 értéket adtam, alvileg minden elküldött bájt után generál egy megszakítást, de terminálprogiba ha nézem, akkor semmi! :/
UART1 beállítás + megszakításrutin:
  1. void UART1_Setup(){
  2.    
  3.     U1BRG = 0x0040;  //Baud rate 9600
  4.    
  5.     IPC3bits.U1TXIP = 0x05;
  6.     IPC2bits.U1RXIP = 0x00;
  7.    
  8.     U1STA = 0x0000;
  9.    
  10.     U1MODE = 0x8000;  //UART Enable, 8 bit, no parity, 1 STOP bit
  11.     U1STA = 0x1400;
  12.    
  13.     IEC0bits.U1RXIE = 1;
  14.     IEC0bits.U1TXIE = 1;
  15.    
  16.     IFS0bits.U1RXIF = 0;
  17.     IFS0bits.U1TXIF = 0;
  18.    
  19.    
  20.     void __attribute__((interrupt)) _U1RXInterrupt(){
  21.    
  22.    
  23.    
  24.         IFS0bits.U1RXIF = 0;
  25.     };
  26.  
  27.     void __attribute__((interrupt)) _U1TXInterrupt(){
  28.    
  29.         U1TXREG = 0x00;
  30.    
  31.         IFS0bits.U1TXIF = 0;
  32.     };
  33. }


És a main:
  1. #define FCY 10000000
  2. #include<xc.h>
  3. #include<libpic30.h>
  4.  
  5.  
  6. int main(){
  7.     Port_Initialize();
  8.     PPS_Setup();
  9.     UART1_Setup();
  10.    
  11.     while(1){
  12.     }
  13.     return 0;
  14. }
A hozzászólás módosítva: Aug 31, 2019
(#) Tasznka válasza szucsistvan123 hozzászólására (») Szept 1, 2019 / 1
 
Valamit nem jól értelmezel az uart működében,és vagy a megszakításban .
A TX-megszakításba ne tegyél semmit(mert így nem is fog lefutni,mert nincs miért belépnie a megszakításba),a U1TXREG-be függvényből,főprogiból adjál értéket.
Az RX megszakításba meg be kellene tenned 1 változót,puffert,amiben kiolvasod a bejövő adatot.
Pl:
  1. void Uart1_KI( char KARI )      
  2. {
  3.         while(!U1STAbits.TRMT);
  4.         U1TXREG = KARI;
  5. }


  1. void __attribute__ ((interrupt, no_auto_psv)) _U1RXInterrupt(void)
  2. {
  3. S1_bejovo = U1RXREG;
  4. Jott_adat = 1;
  5. _U1RXIF = 0;
  6. }
(#) szucsistvan123 válasza Tasznka hozzászólására (») Szept 1, 2019 /
 
Köszi a választ!
(#) icserny hozzászólása Szept 4, 2019 / 4
 
Többen jelezték már, hogy nem érhetők el a régi PIC mikrovezérlős tananyagaim (volt munkáltatóm felszámolta a tárhelyemet), ezért új helyet kerestem, itt találjátok:

PIC-kwik projekt (PIC24HJ128GP502)
PICCOLO projekt (PIC18F14K50, illetve PIC18F4550)
PICula projekt (PIC18F4520)
(#) hian hozzászólása Szept 4, 2019 /
 
Sziasztok!
Eddig csak 8 bites PIC-ekkel foglalkoztam. Most 16 biteset szeretnék programozni (PIC24FV32KA304).
Segítséget kérek abban, hogy reset után miket kell beállítani ahhoz, hogy a PORTB mind a 16 bitjét digitális outputkén használhassam. A bit2-4, és a bit12-15 nem működik.
Ha lehet assemblerben.
(#) Pali79 válasza icserny hozzászólására (») Szept 4, 2019 /
 
Köszönjük szépen! Eddig is nagy hasznát vettem!
(#) pipi válasza hian hozzászólására (») Szept 4, 2019 /
 
Hali!
Nézd meg a dokuban milyen perifériák vannak azokon a lábakon, és kapcsold ki
(#) hian válasza pipi hozzászólására (») Szept 5, 2019 /
 
Köszi a választ. Ezt próbálgatom, de eddig még nem sikerült kikapcsolni.

portb2.xlsx
    
(#) PDM hozzászólása Szept 9, 2019 /
 
MPLABX v4.15 WIN7 alatt.

1. Állandóan kiírja, hogy nincs internet kapcsolat.
Hogy kell kikapcsolni, hogy ne ellenőrizze a hálózatot?

2. Commanderrel töröltem egy projectet, kiírja, hogy nem találja.
Hol van a "Garbage collector"?

Előre megköszönöm a válaszokat.
(#) bbalazs_ válasza PDM hozzászólására (») Szept 9, 2019 /
 
MELYIK commander? Van egy tucat. A FAR-ban pl. beállítható, hogy hova töröljön. Ha default, akkor a wastebinbe, vagyis a lomtárba teszi. Ha nem így volt beállítva, akkor baj van, simán nem állítható vissza. Ha nagyon fontos volt, ne is írj a lemezre egyáltalán, talán valami visszaállító programmal előhívható még.
(#) PDM válasza bbalazs_ hozzászólására (») Szept 9, 2019 /
 
Total Commander.
Nem kellett visszaállítani. A "Start Page"-n a "Recent Project" alá a kitette a törölt project
nevét. A régi MPLAB kiírta, hogy nem találja a projectet és a törölte az előzményeket és
újra indításkor már nem látszott.
A "Help"hivatkozik a "Garbage collecting"-re, ezt nem találom.
Végül is létre hoztam egy kamu projectet a hiányzó project nevével és ezt tiszteségesen
töröltem a projectek közül.

Ezt hogy lehene lelőni?
"Internet connection is not stable enough to download latest toolchain. "

Kösz.
(#) b10up válasza Hp41C hozzászólására (») Szept 11, 2019 /
 
Kicsit megkésve, de sikerült ismét az áramkör közelébe férkőznöm.
Végül ami a problémákat okozta, az egyrészt a szűrőkondi hiánya a stabkocka 5V-os lábánál, másrészt a FET-nek kevés az 5V, hogy kinyisson, de még így is bezavarta a pic-et.

Kapott 1000µF-os kondit a stabkocka után a rendszer és mivel ezek voltak itthon, optocsatolót hajt a PWM láb, azon keresztül már 10V-ot adok a FET-nek. Így már a programkód szerint történnek a dolgok, hűtőbordát igénylő fűtés nélkül.
Köszönöm a tippeket
(#) Jani_80 hozzászólása Szept 21, 2019 /
 
Sziasztok, CCS C fordító és PIC16F876 esetén ez a 2-es mit jelt a lenti sorban?
ext_int_edge(2, H_TO_L);

Nem találok semmilyen helpben egyértelmű magyarázatot. Köszi!
(#) Tasznka válasza Jani_80 hozzászólására (») Szept 21, 2019 /
 
Szia!
Szerintem az első paraméter,hogy melyik INT-bemenetet akarod beállítani,a második,hogy mire okozzon megszakítást .
(#) Hp41C válasza Jani_80 hozzászólására (») Szept 21, 2019 /
 
Miért nem nézel utána a fordító kézikönyvében? ccs compiler manual (271. oldal)
Idézet:
„ext_int_edge( )
Syntax:
ext_int_edge (source,edge)
Parameters:
source is a constant 0,1 or 2 for the PIC18XXX and 0 otherwise.
[PCD]
source is a constant from 0 to 4.
Source is optional and defaults to 0.
edge is a constant H_TO_L or L_TO_H representing "high to low" and "low to high"
Returns:
Undefined
Function:
Determines when the external interrupt is acted upon. The edge may be L_TO_H or
H_TO_L to specify the rising or falling edge.
Availability:
Only devices with interrupts
Requires:
Constants are in the devices .h file
Examples:
ext_int_edge( 2, L_TO_H); // Set up PIC18 EXT2
ext_int_edge( 2, L_TO_H); // Set up external interrupt 2 to interrupt on rising edge
ext_int_edge( H_TO_L ); // Sets up EXT
ext_int_edge( H_TO_L ); // Sets up external interrupt 0 to interrupt on falling edge”
(#) pipi hozzászólása Szept 23, 2019 /
 
Hali!
Mi a legnagyobb PIC ami lábkompatibilis a 16f628/648-al?
Köszi
(#) Hp41C válasza pipi hozzászólására (») Szept 23, 2019 / 1
 
Mennyire kell láb kompatibilisnek lennie? Vcc, Vss, MCLR természetesen. Más funkciók pl. UART, stb? 16F819, 16F88, 16F1847, 18F1322
(#) pipi válasza Hp41C hozzászólására (») Szept 23, 2019 /
 
Köszi, csak lábkiosztás, ezek jók amiket írtál. Illetve 1322-t nem találtam csak 18f1320-at.
(#) Hp41C válasza pipi hozzászólására (») Szept 23, 2019 / 1
 
18f1320-at akartam írni.
(#) pipi válasza Hp41C hozzászólására (») Szept 23, 2019 /
 
Köszi, úgy látom a 1847-nek van a legnagyobb memóriája.
(#) menyus hozzászólása Szept 26, 2019 /
 
Sziasztok. Tudna valaki segíteni? Ezer éve nem foglalkoztam PIC programozással. Most beesett egy projectem és mondom letöltöm az MPLAB ot. Nos, valami MPLAB IDE meg IPE jött le ami leginkább megjelenésében a Netbeansre vagy az Eclipsre hasonlít. A régi projectjeimet meg nem kezeli, az Import project el sem.A régi projectek még MPLAB 7.x - 8.x alatt készültek. A PICkit2 t pedig nem tudom felrakni mert egy régi verziós(2.xxx) NET framework ot kér a mostani 4.xxx es helyett. Mi lehet a megoldás? Nem akarnék visszafelé frameworkot váltani, eleve céges a gép és már win10 van rajta. Lehet összekuszálok valamit és behallnak a gépen lévő céges tesztprogramok oszt megyek a levesbe. Köszi előre is.
(#) kissi válasza menyus hozzászólására (») Szept 26, 2019 /
 
Szia!

Innen szedd le a 8.92-es verziót !
(#) menyus válasza kissi hozzászólására (») Szept 26, 2019 /
 
Köszi, próbáltam már de nem települ fel a gépre. Az installáció elején megáll a telepítés hibaüzenet nélkül és csak áll áll... Valamiért nem települ fel.
(#) nedudgi válasza menyus hozzászólására (») Szept 26, 2019 /
 
Ha nem nyúlsz az általa felajánlott beállításokhoz, akkor is megáll? Rendszergazdai jogokkal telepíted? UAC be van kapcsolva?
A hozzászólás módosítva: Szept 26, 2019
(#) menyus válasza kissi hozzászólására (») Szept 26, 2019 /
 
No... Végül a probléma egyik fele megoldódott, a 7.62 es MPLAB verzió nagy nehezen felment. De mit tudok csinálni a Pickit2 szoftverével ami a keretrendszer miatt nem megy fel? Ha az is
felmenne lenn öröm és bódogság...
(#) menyus válasza nedudgi hozzászólására (») Szept 26, 2019 /
 
Igen úgy próbáltam. De jó a 7.62 is, ahhoz amihez kell arra bőven elég. A pickit 2 re van valami ötletetek?
(#) kissi válasza menyus hozzászólására (») Szept 26, 2019 /
 
A PK2-t a saját szoftverével akarod használni vagy az MPLAB alól ?!
(#) menyus válasza kissi hozzászólására (») Szept 26, 2019 /
 
Saját szoftverével
(#) kissi válasza menyus hozzászólására (») Szept 26, 2019 /
 
Miért nem használod az MPLAB alól ( nincs a támogatott eszközök között a PK2 az adott procinál ?) ?!
(#) szucsistvan123 hozzászólása Szept 26, 2019 /
 
Üdv!

Ha a PIC-et SPI Master ként akarom használni, akkor a CS láb (ami megy a Slave-re) bármelyik I/O lehet ugye? (Vagy mindenképpen Rp-pinnek kell lennie?)
Következő: »»   1097 / 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