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   1040 / 1203
(#) cross51 válasza cross51 hozzászólására (») Aug 19, 2018 /
 
Valamint még egy dolog amit elfelejtettem írni.
Érdemes erősen körbe nézni Arduino tájékon is software example és "periféria board"-ok körében.

Az sw example-ök érhetőek de, ha megismered a non blocking kódolást akkor rájössz, hogy mi a probléma velük.

A perifériákhoz ebay-en egy rahedli panelt találsz fillérekért (Hőmérő, RTC, LED-Matrix, 7seg stb...).
(#) szucsistvan123 hozzászólása Aug 19, 2018 /
 
Köszi a válaszokat!

Tudom hogy létezik dugdosós próbapanel, csak egyszerűbb lett volna ha minden alkatrész ott van egy helyen, nem nekem kell külön beszerezni!
De maradok szerintem a próbapanelnél!
(#) icserny válasza szucsistvan123 hozzászólására (») Aug 19, 2018 /
 
Tanuláshoz nem ajánlom a dugdosós próbapanelt, mert előbb-utóbb belezavarodsz a kontaktushibákba. Érdemes venni vagy készíteni legalább egy alappanelt.
(#) bugyi680 válasza abacs hozzászólására (») Aug 19, 2018 /
 
Milyen programot használsz?
(#) Hp41C válasza icserny hozzászólására (») Aug 20, 2018 / 3
 
A kontaktus hibák zöme elkerülhető, ha betartjuk az alábbiakat:
- 0.6 .. 0.8 mm átmérőnén vastagabb kivezetésekkel rendelkező alkatrészeket nem erőltetünk a panelbe. A kivezetéseire forrasszunk más alkatrészről levágott darabokat,
- már forrasztott kivezetésű alkatrész nem használunk a panelban,
- réz vezetékek helyett alkalmazzunk tömör felületkezelt réz vezetékeket,
- az áramköröket nem hagyjuk megépítve hónapokig, évekig.
(#) icserny válasza szucsistvan123 hozzászólására (») Aug 20, 2018 /
 
Ezeket esetleg érdemes megnézni: Easy PIC-40 kártyák
(#) usane hozzászólása Aug 20, 2018 /
 
Üdv!

I2C PIC to PIC kommunikáció. Mivel egyedi ezért szeretném leegyszerűsíteni.
Annyiból áll, hogy a slave lehúz egy lábat jelezve, hogy új adat van. A masternek erre kell reagálni.
Kérdés: van-e valami kényszer amit hardver miatt be kell tartanom?
Értem ezalatt, hogy mivel nem akarok írni csak olvasni a slave-t és csak egy slave van címküldés és parancsküldés mindenre ACK meg hasonlók helyett a master csak küld egy címet vagy csak egy ACK-ot, hogy készen áll a vételre a slave meg amint vette az ACK-ot elkezd küldeni. Elvileg nincs akadálya, de hátha valamit nem tudok.

Persze egyszerűbb lenne SPI vagy UART, de a master mindkét SPI-je foglalt, az IIC meg gyorsabb mint az UART .
A hozzászólás módosítva: Aug 20, 2018
(#) icserny válasza usane hozzászólására (») Aug 20, 2018 /
 
A slave nem tud önállóan küldeni, mert a master adja az ütemjelet (órajel).
(#) usane válasza icserny hozzászólására (») Aug 20, 2018 /
 
Ezzel tisztában vagyok, de ez miben korlátoz engem azon felül, hogy a masterban be kell állítanom a baud-ot?
1. Slave lehúzza a lábat,
2. Master kezdeményezi a start kondíciót és felkészül a vételre, ezzel együtt küldi az órajelet is nem?
3. Slave érzékel a Startot és küldi az adatot. (1byte) Elengedi a lábat.
4. Megjött az adat, master végrehajtja a Stop kondíciót.
Ez az elképzelés.

szerk: Nem tudom a plusz lábat nem lehetne-e kihagyni. A slave is tud Start kondíciót indítani nem?
A hozzászólás módosítva: Aug 20, 2018
(#) Tasznka válasza usane hozzászólására (») Aug 20, 2018 /
 
A slave-vel lehúzod bármelyik lábat,a masterrel nézed,hogy lehúzta -e,ha igen,akkor mehet a sima master-slave kommunikáció,nem kell túlgondolni
(#) usane válasza Tasznka hozzászólására (») Aug 20, 2018 /
 
Nem akarom én túlgondolni. Inkább alágondolni
Ha a "sima master-slave" alatt a standard szerintire gondolsz, azt szeretném most elkerülni.
Eddig nem volt szükségem slave rutinra így még nem írtam. Viszont emiatt most nem is szeretnék egy standard szerinti rutint írni ha nem muszáj, majd megírom máskor. Ha lehet, most egyszerűsítenék.
(#) sonajkniz válasza usane hozzászólására (») Aug 20, 2018 /
 
Szia!
Én két PIC közti kommunikációra mindíg 1-Wire-t használok.
Ha a slave foglalt, az adatvonalat lehúzva tartja. Ha elengedi, a master akkor és olyan ütemben kérdezi le, ahogy akarja. Az átvitelt mindíg 16 MHz-n végeztetem, így elég gyors, de a slave protokolja úgy van megírva, hogy ha a masternek egyéb elfoglaltsága akad átvitel közben, (pl. megszakítás kérelem) akkor akár 1 byte átvitele közben is tarthat szünetet. Csak a bit átvitele közben nem.
(#) Tasznka válasza usane hozzászólására (») Aug 20, 2018 /
 
Így meg nem sok értelme van az I2C használatának.
Bár így jobb lenne(nem próbáltam)
1: slave lehúzza az adatvonalat
2: slave elengedi az adatvonalat
3: master start
4: slave ack
5 fogadásra átállás
6 ha megjött az adat master stop.

De ez akkor is furi.Inkább a masternek kellene lekérdeznie,hogy van -e új adat .

Sonajkniz javaslatát követve,vagy bármely más 1-2 wire-s kommunikáció jobb lenne használni,így elkerülendő hibás átvitel,vagy bármilyen más gubanc.
(#) cross51 hozzászólása Aug 21, 2018 /
 
Sziasztok!

Nem tudom valaki látta-e már nekem most tűnt fel és úgy láttam ide se került be mint téma.
MPLAB Snap

Szerintetek?
(#) ktamas66 válasza usane hozzászólására (») Aug 21, 2018 /
 
I2C-nél a slave csak a saját címére küldött parancsra reagál, így a masternek mindig kell címet küldeni. Ha nincs más a rendszerben, használhatsz pl. SPI-t. Ha csak fogadni szeretnél nem is kell kiküldeni semmit, azt a lábat nem kell használni. Ha kevés lábat szeretnél használni használhatod ugyan azt a lábat (pl. CLK) bemenetként, amire az IT jön, majd átkonfigurálod SPI-re, és beolvasod az adatot.
(#) icserny válasza cross51 hozzászólására (») Aug 21, 2018 /
 
Nem láttam még, köszönöm az értesítést! Nem tűnik rossznak, bár egyelőre kevés ATmegát támogat. Úgy tűnik, hogy humánus áron lesz kapható.
(#) norbiv8 válasza icserny hozzászólására (») Aug 21, 2018 /
 
A PicKit4 tudja programozni az Atmel cuccokat is jól látom?
(#) usane válasza ktamas66 hozzászólására (») Aug 21, 2018 /
 
Már miért csak a sajátjára reagálna? A szoftver határozza meg, hogy mire reagál. Bár ahogy ezt Tanszka is említette, nem I2C standard. Fogalmazhatunk úgy, hogy I2C vonalon végrehajtott egyedi kommunikáció. SPI-vel az a bajom, hogy a masteron mind2 foglalt, szoftvereset meg nem akarok, részben így is foglalkozik a master 3-4 dologgal és még nem tudom mit bővítek rajta. Mindenképpen hardverest akartam az meg csak az UART meg az IIC volt szabad.Ugyanezen ok miatt nem akartam 1-wire-t sem, bár sonajkniz kolléga megoldása elgondolkodtató. Még ezt át kell gondolnom, mert a slave meg folyamatosan RF jelet vesz és dekódol.
(#) silent15 válasza norbiv8 hozzászólására (») Aug 21, 2018 /
 
Igen tudja.
(#) ktamas66 válasza usane hozzászólására (») Aug 21, 2018 /
 
A cím egyezés vizsgálatát a hardver végzi. Ha nem talál cím egyezést, akkor semmilyen értesítést nem küld.
(#) Hp41C válasza silent15 hozzászólására (») Aug 22, 2018 /
 
Pontosítsunk: A PICkit4 (a tervek szerint) tudni fogja az AVR -eket is programozni. Jelenleg (MpLabX 5.05) az AVR és a 8 bites PIC -ek zöme is csak sárga a Device Support állományban.
Idézet:
„"Y" Yellow indicates preliminary, beta support, not production tested.”
(#) cross51 válasza Hp41C hozzászólására (») Aug 22, 2018 /
 
Bár mondjuk én az M részéről először megcsináltam volna, hogy az MX-et is lehessen debuggolni és az egyéb problémákat javítottam volna minthogy új debugger és Atmel support.
De ez lehet csak azért van mert a PIC32Cx "matricázás" lesz.

De a tervek szerint a PK4/ICD4/Snap használható lesz UART/SPI/I2C "terminál"-ként is, a "tervek" szerint...
(#) Hp41C válasza cross51 hozzászólására (») Aug 22, 2018 /
 
A PICkit4 Device Support állományban jónéhány (de nem minden) PIC32 már zöld, azaz tesztelt.
(#) izenahogyishivnak hozzászólása Aug 22, 2018 /
 
A PIC24-ek esetén mi annak az oka, hogy a legegyszerűbb ASM kódot is 0x282 kódtól kezdi a programmemóriában? Elvileg 0x200 címen kellene indulnia. ASM-ben az ember nincs ahhoz hozzászokva, hogy nem azt látja a program memóriában, amit begépelt.

Pl. egy ilyen abszolút minimalista kód esetén is 0x200-0x281 közé betesz valami zagyvaságot, amit egyébként soha nem fog végrehajtani, mert a nulla címen van egy ugrás 0x282-re.

  1. .include "xc.inc"
  2. .global __reset
  3. .text
  4. __reset:
  5.     CLR WREG
  6. .end
A hozzászólás módosítva: Aug 22, 2018
(#) Hp41C válasza izenahogyishivnak hozzászólására (») Aug 22, 2018 / 1
 
A megszakítási vektortábla.
(#) icserny válasza izenahogyishivnak hozzászólására (») Aug 22, 2018 /
 
Nekem itt még 0x0200 címen kezdődött.
(#) Hp41C válasza Hp41C hozzászólására (») Aug 23, 2018 / 2
 
Pontosítanom kell magamat: A 0x200 .. 0x282 közé az MpLab X az XC16 startup kódjának darabját linkeli be.
Bővebben: Link
(#) izenahogyishivnak válasza Hp41C hozzászólására (») Aug 23, 2018 /
 
Köszi!
(#) izenahogyishivnak válasza icserny hozzászólására (») Aug 23, 2018 /
 
Nagyon hasznos PIC24/dsPIC ismertetőt írtál! Még angol nyelven is nehéz igazán jó anyagokat találni.
(#) usane válasza ktamas66 hozzászólására (») Aug 23, 2018 /
 
Miért ne küldene? A start a címküldés előtt van. A startot észleli a hardver. Mi több a mastertől a slave felé már teszteltem is. A 32MX a master csak egy startot hajt végre a pic12 pedig simán reagál rá. Fordítva ez még nem sikerült, de még nem tudom, hogy a 12-esen nem sikerült jól beállítanom a startküldést, vagy a 32mx-en az észlelést. Épp ennek kiderítésén dolgozom.
Következő: »»   1040 / 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