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   758 / 1210
(#) icserny válasza sonajkniz hozzászólására (») Márc 5, 2016 /
 
Idézet:
„ha a későbbiekben módosítani akarok egy programot, újfent szótárazhatom a kommenteket!”
Én a kínai/japán programokból bemásolt kódrészletekben le szoktam fordítani angolra a kommenteket. Te nem?
(#) sonajkniz válasza icserny hozzászólására (») Márc 5, 2016 /
 
Miért nem magyarra?

Amúgy magamnak írok kommenteket, hogy később, ha kell könnyen visszataláljak a gondolatmenetemhez. Ha megtetszik valahol egy programrészlet, azt sem bemásolom, hanem átírom, a magam elnevezései szerint. Pl: A te Weboldaladról vettem az osztórutint.
Szétbontottam külön 8, 16, 24, és 32 bitesre, a magam elnevezéseivel.
Tehát nem. Nem fordítok le kommenteket. Főleg nem idegen nyelvről-idegen nyelvre.
A hozzászólás módosítva: Márc 5, 2016
(#) icserny válasza sonajkniz hozzászólására (») Márc 5, 2016 / 1
 
Idézet:
„Miért nem magyarra?”
Sok oka van ennek...
- Idegen nyelvekről angolra fordít legértelmesebben a Google, ha azt megértem, akkor minek kínlódjak még egy kézi fordítással is?
- Nem akarok fölöslegesen ékezetes kóddal bajlódni
- Többször kellet már a magyar megjegyzéseimet sebtében angolra fordítani, ha nemzetközi fórumokon akartam segíteni valakinek - ezt megspórolom, ha nem fordítom az idegen nyelvű megjegyzéseket magyarra
(#) Hp41C válasza sonajkniz hozzászólására (») Márc 5, 2016 /
 
Ha az adatlap (szerencsére még) angol, a mnemonikok, direktívák angol rövidítések, miért kellene magyarul írni a kommenteket??
Fórumtársak kérésére módosítottam sok programot, de néha török, orosz stb nyelvű kommenteket egyszeűen nem tudtam használni. Ugyanígy lehet vele a török vagy az orosz sorstárs a magyar kommentekkel... (A fordító jó ötled, de nehézkes...)

Holnapután már az adatlapok is kínaiak lesznek.... Pl. MCV20USB - nincs angol adatlapja.
(#) sonajkniz válasza Hp41C hozzászólására (») Márc 5, 2016 /
 
Idézet:
„a mnemonikok, direktívák angol rövidítések, miért kellene magyarul írni a kommenteket??”


Minimum tiszteletből.
Ha jól emlékszem te írtad egyszer: "A számítástechnika nyelve az angol!"
Ez ránk, magyarokra nézve elég szomorú. Hiszen mint oly sok minden, ez is magyar találmány.
Idézet a wikipediából:
Idézet:
„Az elektronikus számítógépek logikai tervezésében kiemelkedő érdemeket szerzett a magyar származású Neumann János. Alapvető gondolatait – a kettes számrendszer alkalmazása, memória, programtárolás, utasításrendszer – Neumann-elvekként emlegetjük. Neumann János irányította az EDVAC megépítését is 1944-ben, amelyet 1952-ben helyeztek üzembe. Ez volt az első olyan számítógép, amely a memóriában tárolja a programot is. Ennek a számítógépnek a terve és a továbbfejlesztett Neumann-elvek alapján készülnek a mai számítógépek is.”
(#) Hp41C válasza sonajkniz hozzászólására (») Márc 5, 2016 /
 
Igen, mindez igaz, de Amerikában, amerikai pénzből, angolul... Egyébként a világon mindenütt a szakmabeliek eddig megértették az angol adatlapokat. Most tanulhatunk kínaiul...

A magyar egy exotikus nyelv, a fordítók nehezen küzdenek meg vele...
A hozzászólás módosítva: Márc 5, 2016
(#) kistee válasza sonajkniz hozzászólására (») Márc 5, 2016 /
 
De ha jól emlékszem, a PIC-ek Harvard architektúrájúak...
(#) shirke hozzászólása Márc 5, 2016 /
 
Szervusztok!
Tudtok ajánlani valami szimulátort PIC33-asokhoz? Nézegettem neten, de nemigen voltak, vagy ami volt az ezeket nem tudta szimulálni.
(#) Pali79 válasza shirke hozzászólására (») Márc 5, 2016 /
 
Az Mplab nem tudja? Csodálkoznék...de nem lehetetlen. Pontosan melyik típus?
A hozzászólás módosítva: Márc 5, 2016
(#) shirke válasza Pali79 hozzászólására (») Márc 5, 2016 /
 
Pontosan a pic33ep256mu806. Alap szimulációkat tud csinálni, de azt nem sikerült megtalálnom benne hogy SPI-t, külső interruptot illetve PLL-t hogyan lehet szimulálni vele.
(#) Pali79 válasza shirke hozzászólására (») Márc 5, 2016 /
 
A külső megszakítást biztos, hogy meg lehet csinálni, mint bármelyik másik PIC-nél is. A többihez nem tudok hozzászólni.
(#) nagym6 hozzászólása Márc 5, 2016 /
 
Sziasztok. Kérdésem lenne, hogy PIC18F26K22 -nél a port bemeneti latch tárolókat lehetne úgy használni, hogy rövid (0.2ms) impulzusokat betárolna, amíg a program odaér, hogy kiolvassa. Rövidebb az impulzus, mint amilyen gyorsan programból lehet figyeltetni, és mindet el kell kapni 16 porton. Interrupt nem lehet, a programban egyébb időzítések miatt. Külső áramkörrel sok megoldás van tudom, azt akarnám kikerülni.
Köszönöm.
(#) foxi63 válasza nagym6 hozzászólására (») Márc 6, 2016 / 1
 
Szia!
Sajnos a kiolvasás valós idejű, az épp aktuális adat kerül beolvasásra.
(#) bbalazs_ válasza nagym6 hozzászólására (») Márc 6, 2016 / 1
 
0.2ms az 200us, ha 4MHz-et veszek alapul, az 200 utasitas.
Ez alatt sokmindent lehet csinalni. Egy beolvasas ilyen idonkent es eldonteni, hogy van-e benne valami vagy sem, ha igen, csak akkor foglalkozni vele.
Van valami mas, amihez us pontossagu idozites kell es az egyeb periferiakkal nem lehet lekezelni?
(#) nagym6 válasza foxi63 hozzászólására (») Márc 6, 2016 /
 
Köszi. Akkor marad a külső monostabilok.
(#) nagym6 válasza bbalazs_ hozzászólására (») Márc 6, 2016 /
 
Összesen 16 külső jel jön be, egy része véletlenszerűen. Közben folyamatos lcd (karakteres) írások vannak, sok -külön- számítás milliós számokkal, mind a 16-nál külön, amiket el kell végezni a következő bejövő jel előtt. Ezt összeidőzíteni, nekem nem megy, vagy tán nem is lehet. Perifériákkal szerintem nem lehet ennyit.
És még a bejövő jelek pontos ideje is lényeges, az előzőhöz képest, a periódusidő.
Köszi a választ.

Kimaradt: A program basic, eléggé korlátozott, egy utasítás lefutása alatt nem lehet mást csinálni. Assemblert nem tudom.
A hozzászólás módosítva: Márc 6, 2016
(#) shirke válasza Pali79 hozzászólására (») Márc 6, 2016 /
 
Kár, azért köszi!
(#) bbalazs_ válasza nagym6 hozzászólására (») Márc 6, 2016 / 2
 
Sem a szamitas, sem az LCD kiiras nem idokritikus folyamat.
Ha az osszidobe belefer a szamitas, en nem latom akadalyat a sima pollozasnak sem, mondjuk 50us-enkent, akkor biztosan beleakad a jel.
De szerintem te valami magasszintu nyelven programozol, azert problema ez.

kiegeszitesre:
Na, mondom. Igy nem oldhato meg a feladat, pedig a PIC kepes lenne ra.
Vagy engedelmeskedve a kor szavanak veszel valami erogepet alaja vagy megtanulsz valami normalis nyelven programozni, talan a C is elegge gyors ehhez, de szerintem a PIC nyelve az assembly
A hozzászólás módosítva: Márc 6, 2016
(#) sonajkniz válasza nagym6 hozzászólására (») Márc 6, 2016 / 1
 
Szia!

Ezt csak megszakításból tudnád kezelni úgy, hogy változókba másolod a bemeneteket. Ha a jelek sorrendje is fontos, akkor mindig másik változóba. Amikor ráér a program, kielemzi.
Ha ez nem megy Basic-ben, akkor válts programnyelvet.
Jelen esetre is igaz ez a megállapítás:
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!””
(#) ha1drp válasza sonajkniz hozzászólására (») Márc 7, 2016 / 1
 
Csak, hogy szítsam az indulatokat a mikroelektronika Basic, Pascal, C fordítója adott feladatra teljesen azonos assembly kódot generál. Ergó a magas szintű programnyelvek közt nem kell, hogy feltétlen különbség legyen. Az inkább a fordítóprogramok hiányossága avagy előnye, ha az egyik jobb a másiknál. Ezért a fenti idézettel nem értenék egyet.
Jelen esetben a problémát úgy tűnik az előre megírt függvények okozzák, melyek kisajátítják a processzoridőt, és ez teljesen programnyelv független!
Amennyiben idő, vagy tudás hiányában nincs lehetőség a függvények újradefiniálására a feladatra a megoldás nagy valószínűséggel egy timer interrupt lehet. Ehhez a PIC leírást kell áttanulmányozni. Biztos vagyok benne, hogy erre basic nyelven is van lehetőség.
(#) Sinike hozzászólása Márc 8, 2016 /
 
Üdv Néktek!
Összezavarodtam, segítséget kérnék.
Vennék PIC-et, látom, hogy 962Ft a 16F84-es MCU, és drágább a 16F84-es CPU. 2 napja google, de csak egy helyen olvastam azt, hogy külön lapon említik: a CPU - ezt ugye tudom/tudjuk, központi processzor; és azt írták, hogy az MCU ellenben a processzoron kívül tartalmaz még memóriát és I/O egységet is...
Tudtommal a 16F84 alapból tartalmaz ilyeneket, most akkor nem értem, mi a különbség; és hogy akkor az MCU miért olcsóbb?.
Türelmeteket előre is köszönöm!
(#) nedudgi válasza Sinike hozzászólására (») Márc 8, 2016 /
 
Az hogy CPU, vagy MCU, kizárólag az eladó terminológiája. Ugyanarról a termékről van szó, egy mikrovezérlőről.
(#) icserny válasza Sinike hozzászólására (») Márc 8, 2016 /
 
Ha már PIC-et veszel, nem az elavult PIC16F84-ra kellene alapozni! Gondold végig, hogy milyen perifériára lesz/lehet szükséged (ADC, UART, I2C, PWM stb.), s mennyi memóriára (RAM/FLASH). Ennek ismeretében tanulmányozd át az adatlapokat (vagy a Microchip parametrikus keresőjét), hogy ne érjen kellemetlen meglepetés. Annak is nézz utána, hogy mivel akarod/lehet rátölteni a programot, s az sem egy utolsó szempont, hogy lehet-e az adott mikrovezérlőt hardveresen debugolni (nyomkövetés). Az elterjedtebb típusokhoz (pl. PIC16F887) feltehetőleg nagyobb valószínűséggel kapsz segítséget az itt fórumozóktól.
(#) sonajkniz hozzászólása Márc 8, 2016 /
 
Sziasztok!

Van valakinek tapasztalata a DS 1821-es hőszenzorról?
Az adatlapjából számomra nem derül ki, hogy hogyan kell programozni, és ha nem termosztátként akarom használni, akkor le kell valahogy kérdezni tőle az aktuális hőmérsékleti értéket, vagy időnként küldi magától?
(#) Hp41C válasza sonajkniz hozzászólására (») Márc 8, 2016 /
 
Le kell kérdezni 1-wire kommunikációval. Bővebben: Link
A hozzászólás módosítva: Márc 8, 2016
(#) Hp41C válasza sonajkniz hozzászólására (») Márc 8, 2016 /
 
Egy 30 oldalas topikot linkeltem be...
A hozzászólás módosítva: Márc 8, 2016
(#) sonajkniz válasza Hp41C hozzászólására (») Márc 8, 2016 /
 
Rájöttem. ezért is töröltem ki a válaszomat.
Bocsánat.
(#) Sinike válasza icserny hozzászólására (») Márc 8, 2016 /
 
Köszönöm válaszod!
Egyenlőre ilyeneken nem gondolkodom, mert nem tudom Most ugrottam fejest a témába, és rengeteg tanulás vár most rám. A Watt-féle mini égető kész és működik; és épül a PicKit2 klón is (szintén Tőle). 16F84-et tudna egy ismerős adni, van neki 10 felesleges (de amúgy sem tudtunk megegyezni az árban..) Gondoltam, gyakorolhatok rajta...
Technikailag nagyjából tisztában vagyok a Használatával (ha nem is a működésével), mert régen már csináltam hasonlót mobilokon /Nokia flash, Panasonic flash, stb./ No meg anno építettünk áramköröket, amik chip kártyákat olvastak, emuláltak.
Apropó, ha már itt tartunk, 24F16 eeprom volt a "lelke", azt tudom úgy használni, mint egy pic-et? (persze lábkiosztás egész más, azt figyelembe véve...) - csak gyakorlásképp..?
(#) icserny válasza Sinike hozzászólására (») Márc 8, 2016 /
 
Idézet:
„24F16 eeprom volt a "lelke", azt tudom úgy használni, mint egy pic-et?”
Nem. Az EEPROM csak memória. A PIC mikrovezérlő (CPU+perifériák+memória egy chip-en).
(#) nagym6 válasza ha1drp hozzászólására (») Márc 8, 2016 /
 
Én ezt nem mertem itt mondani, de ugyanerre a megállapításra jutottam. Nézegetve a C nyelvet, nagyon ugyanolyannak tűnik, mint a basic, kb. ugyanazt lehet, vagy nem lehet C -ben megcsinálni mint basicben.
"timer interrupt"
Úgy tudom, amíg egy basic utasítás fut, teljes interrupt tiltás van. Nem próbáltam, ha lesz időm, lehet, hogy megnézem.
A hozzászólás módosítva: Márc 8, 2016
Következő: »»   758 / 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