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   1190 / 1203
(#) sonajkniz válasza djadji hozzászólására (») Feb 11, 2023 /
 
Idézet:
„Fából meg tudom csinálni, de azt se jó, ilyen kis fa fogaskerék nem megbízható.
Most pl szeretnék egy fóliasátor ablakot kinyitni a lehető legegyszerűbben”

Azt írod, a programozás nem gond. Veszel egy ilyen modell szervót,egy- két bicikli küllőt,
két vékony lécdarabot, pár csavart és csinálsz egy csuklókaros nyitót. Ehhez fűrészen, kézifúrón, kombinált fogón, csavarhúzón kívül más szerszám nem kell. Egy mikrokontrollerrel meg megvezérled a szervót.
(#) pipi válasza djadji hozzászólására (») Feb 11, 2023 /
 
Ha a motort össze tudod hozni egy menetes szárral, akár direkt hajtással, fogaskerék sem kell, az már nyerő A menetes szárra mehet egy anya, vagy menetesszár toldóanya, az hosszabb, ehhez erősíted az ablak szélét. Persze ha semmid nincs, és venni sem akarsz...
A hozzászólás módosítva: Feb 11, 2023
(#) Elektro.on válasza djadji hozzászólására (») Feb 13, 2023 /
 
Csinálhatsz egy zsinórós mechanikát ami feltekerve a zsinórt nyitja az ablakot.
(#) sonajkniz válasza Elektro.on hozzászólására (») Feb 13, 2023 /
 
Kár az energiáért.
Feltett egy kérdést és két napja a fórum felé sem néz.
Nem az első, és vélhetőleg nem is az utolsó, aki csak azért ír be valamit, mert leült a topic.
(#) saraha hozzászólása Feb 19, 2023 /
 
Sziasztok.Székesfehérvár környékén(+10km) tud valaki PIC-et égetni?Köszönöm.
A hozzászólás módosítva: Feb 19, 2023
(#) kaqkk válasza saraha hozzászólására (») Feb 19, 2023 /
 
Posta nem játszik ?
(#) saraha válasza kaqkk hozzászólására (») Feb 19, 2023 /
 
De,amúgy igen.Csak bonyolítom....
A hozzászólás módosítva: Feb 19, 2023
(#) saraha hozzászólása Feb 19, 2023 /
 
Csak régebben,mikor aktívabb voltam itt,volt egy ismerősöm,tanár.Ö szokott nekem AVR-t,PIC-et írni.Át mentem volna hozzá beszélgetni,de már rég óta nincs jelen az oldalon.
(#) oregharcos válasza Bakman hozzászólására (») Feb 19, 2023 /
 
Üdv. Bakman! A héten sikerült az általad javasolt programmal megcsinálni. Minden gombnyomásra mást csinál. Átírtam a ide oda futó fényt, helyette a 0-ás pinen egy led, a 3-as pinen négy villog. Annyi gondom van, hogyha feszültség alá helyezem, mind a négy LED világít. Napok óta ezt a hibát kutattam, de nem jövök rá a hibára.
  1. char cseng =0;
  2. bit gomb;
  3.  
  4. void egy()
  5. {
  6.  PORTD = 0b00000001;
  7.  Delay_ms (100);
  8.  PORTD = 0b00000000;
  9.  Delay_ms (100);
  10.  PORTD = 0b00000001;
  11.  Delay_ms (100);
  12.  PORTD = 0b00000000;
  13.  Delay_ms (500);
  14. }
  15.  
  16. void ketto()
  17. {
  18.  
  19.  PORTD = 0b00000011;
  20.  Delay_ms (100);
  21.  PORTD = 0b00000000;
  22.  Delay_ms (100);
  23.  PORTD = 0b00000011;
  24.  Delay_ms (100);
  25.  PORTD = 0b00000000;
  26.  Delay_ms (500);
  27.  
  28. }
  29.  
  30. void harom()
  31. {
  32.  PORTD = 0b00000111;
  33.  Delay_ms (100);
  34.  PORTD = 0b00000000;
  35.  Delay_ms (100);
  36.  PORTD = 0b00000111;
  37.  Delay_ms (100);
  38.  PORTD = 0b00000000;
  39.  Delay_ms (500);
  40. }
  41.  
  42. void negy()
  43. {
  44.  PORTD = 0b00001111;
  45.  Delay_ms (100);
  46.  PORTD = 0b00000000;
  47.  Delay_ms (100);
  48.  PORTD = 0b00001111;
  49.  Delay_ms (100);
  50.  PORTD = 0b00000000;
  51.  Delay_ms (500);
  52. }
  53.  
  54.    void nygfigy(void) {
  55.  
  56.          if (PORTB.F0 == 0) {
  57.                 cseng = 10;
  58.     }
  59.             if (PORTB.F1 == 0) {
  60.                 cseng = 11;
  61.             }
  62.             if (PORTB.F2 == 0) {
  63.                 cseng = 12;
  64.             }
  65.             if (PORTB.F3 == 0) {
  66.                 cseng = 13;
  67.             }
  68.  
  69.         }
  70.  
  71.          void main(void)    {
  72.          
  73.             TRISD = 0b00000000;
  74.             TRISB = 0b11111111;
  75.  
  76.             while (1) {
  77.  
  78.                 nygfigy();
  79.  
  80.                 switch (cseng) {
  81.  
  82.                     case 10:
  83.                         egy();
  84.                         cseng= 0;
  85.                         break;
  86.  
  87.                     case 11:
  88.                         ketto();
  89.                         cseng = 0;
  90.                         break;
  91.  
  92.                     case 12:
  93.                         harom();
  94.                         cseng= 0;
  95.                         break;
  96.  
  97.                     case 13:
  98.                         negy();
  99.                         cseng = 0;
  100.                         break;
  101.  
  102.                 }
  103.  
  104.  
  105.             }
Mit rontottam el? Előre is köszönöm a segítséget!
(#) oregharcos válasza oregharcos hozzászólására (») Feb 19, 2023 /
 
Ez lemaradt: Csak Proteus-al próbáltam. gondolom, hogy élesben is ez történne.
(#) kissi válasza oregharcos hozzászólására (») Feb 19, 2023 / 1
 
Szia!

Egy kezdeti alapbeállítást tegyél bele, különben nem biztos, hogy kikapccsal indul!

  1. 72.sor PORTD = 0b00000000;
(#) oregharcos válasza kissi hozzászólására (») Feb 20, 2023 / 1
 
Üdv. Kissi! Nagyon köszönöm a segítséget, most már jól működik! Valóban igazad van, mert az assemblynél is olvastam és csináltam, hogy a leendő munkaregisztert érdemes törölni mielőtt használjuk, hogy ne maradjon benne semmi hazárd kód. Bakman és a Te segítségeddel sikerült a régi álmom! Párszor átrágom rajta magamat, hogy értsem a teljes működést. Következő lépés a TIMER használata lesz itt a C-ben. Még egyszer nagyon köszönöm mindenkinek aki segített!
(#) Balagemann2031 hozzászólása Feb 22, 2023 /
 
Sziasztok!
Adódott egy olyan feladat, hogy meg kéne mérjek mikrokontroller A/D-vel, egy nagyon zajos jelet. Milyen megoldást javasoltok? Van erre valami hardveres megoldás? RC szűrés? Nem feltétlen csinálnék szoftveres RMS számolgatást, túl sok időt venne el a többi folyamattól. Hogy illene ezt megoldani?
Segítséget előre is köszönöm!
Üdv: Balázs
( 0 és 5V között lenne a jel, csak ilyen csúnya)
A hozzászólás módosítva: Feb 22, 2023
(#) Bakman válasza Balagemann2031 hozzászólására (») Feb 22, 2023 / 1
 
Az újabb PIC-ekben van ADC2 (ADCC) modul, tud aluláteresztő szűrőként is számolni, vagy te teszel a jel és az ADC közé egy RC szűrőt.
(#) Hp41C válasza Balagemann2031 hozzászólására (») Feb 22, 2023 / 1
 
Mekkora a zavar frekvenciája? Mekkora a kiválasztott PIC A/D konverterének átalakítási ideje?
Jól látom 10us/div az idő beállítás. Egy 48 MHz órajelű PIC18 10 bites A/D egységnek minimum 11 * 2 / Fosc idő (kb 46us), egy 12 bitesnek 13 * 2 / Fosc idő (kb 54.2us) kell a konverzióhoz.
(#) Balagemann2031 válasza Hp41C hozzászólására (») Feb 23, 2023 /
 
Köszönöm mindkettőtöknek a választ! A zavarjel frekije ahogy számoltam 100KHz nagyjából. Az igazság az, hogy PIC-kel már pár éve nem foglalkozom, anno assemblyről áttértem Arduino C-re. Bíztam benne, hogy kapok valami hardveres tippet. Ezért írtam csak egy mikrokontrollert, mert feltételeztem hogy az A/D-jük nagyban hasonlít. Ennek az A/D konverzió sebességét nem ismerem, eddig nem volt ilyen időkritikus projektem. Délután ha tudok vele foglalkozni, megpróbálom szoftveresen megoldani az RMS-t. Remélem nem tűztök mágjára.. Üdv: Balázs
(#) asch válasza Balagemann2031 hozzászólására (») Feb 23, 2023 /
 
Ilyen nagy frekvenciához szerintem egy ellenállással töltögetett kondenzátor is elég lehet szűrni. Úgy kell kiválasztani, hogy az alapjeled még átvigye, de a zajt már ne. 1kOhm ellenállás 100nF kondenzátorral például a 100kHz zaj mintha nem is lenne. Lásd filter kalkulátor: https://www.trance-cat.com/electrical-circuit-calculators/en/rc-low...or.php

Az egyszerűbb vezérlők a 100kHz-nál kisebb mintavételi frekvenciát tudnak, tehát digitálisan szűrni nem nagyon lehet.

Ha pontosan periodikus a zaj, akkor lehetne szinkronizálni hozzá a mintavételt. Ha pedig lassú a mérendő alapjel, akkor komparátorral és DAC-vel is lehet közelítve mérni, vagy szinkronizálni a zajhoz. De ez mind bonyolultnak tűnik.
(#) tufatofu hozzászólása Feb 28, 2023 /
 
Üdv Mindenkinek! Valami leírás létezik magyarul arról, hogy hogyan lehet C-ből ill. ASM-ből HEX-et varázsolni?
(#) Lamprologus válasza tufatofu hozzászólására (») Feb 28, 2023 /
 
Igen!





Ilyen kérdésre csak ilyen választ várhatsz!

Egyáltalán milyen C? CCS-S, CX, CX8 stb ...
Milyen programod van amiben PIC programot lehet írni, PIC-et lehet programozni?
(#) tufatofu válasza Lamprologus hozzászólására (») Feb 28, 2023 /
 
Semmim nincs, csupán kérdeztem, hogy van-e erről valami irodalom, de most már tudom, hogy igen. Égetni be tudom, de asm-et vagy c forráskódot nehéz. Azért köszönöm! További szép napot
(#) kaqkk válasza tufatofu hozzászólására (») Feb 28, 2023 / 1
 
MPlab - keress rá
(#) tufatofu válasza kaqkk hozzászólására (») Feb 28, 2023 /
 
Köszönöm!
(#) icserny válasza tufatofu hozzászólására (») Feb 28, 2023 / 1
 
(#) tufatofu válasza icserny hozzászólására (») Feb 28, 2023 /
 
Köszi! A Juhász Róbert írását megtaláltam, a többit is átnyálazom.
(#) sonajkniz válasza icserny hozzászólására (») Feb 28, 2023 / 1
 
Tetszik a kezdő mondat:

Idézet:
„"Amit nem lehet Pascal-ban megírni, azt C/C++-ban meg lehet.
Amit nem lehet C/C++-ban megírni, azt Assembly-ben meg lehet.
Amit nem lehet Assembly-ben megírni, azt nem lehet megírni!”
(#) icserny válasza sonajkniz hozzászólására (») Márc 1, 2023 / 2
 
Bár nem én vagyok az Igazi Programozó (aki így írja: copy CON: program.exe), de volt már, hogy a .hex fájl közvetlen átszerkesztését találtam a leghatékonyabb módszernek.
(#) sonajkniz hozzászólása Márc 28, 2023 /
 
Sziasztok!

Most először használom a mellékelt képen látható kontrollert.
Az lenne a kérdésem, hogy ha az USB-t nem akarom használni, be kell-e kötni valahová a Vusb lábat?
(#) icserny válasza sonajkniz hozzászólására (») Márc 28, 2023 / 1
 
Úgy tudom, hogy igen, mert ez a beépített feszültségstabilizátor kimenete, ahonnan a CPU is kapja a tápellátást. Bővebben: Link
(#) Elektro.on válasza sonajkniz hozzászólására (») Márc 28, 2023 / 1
 
Én mindig adatlap alapján oda biggyesztettem egy kondenzátort.
(#) Hp41C válasza sonajkniz hozzászólására (») Márc 28, 2023 / 1
 
Programozáskor figyelni a Vdd feszültségre.
- Ha a RA0, RA1 vonalak közvetlenül kapcsolódnak a programozóhoz, a Vdd -t maximum 3.3V -ra állítani.
- Ha kell az 5V -os Vdd feszültség, akkor feszültség határolót kell a RA0, RA1 és a programozó közé iktatni.
Következő: »»   1190 / 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