Fórum témák
» Több friss téma |
Fórum
Használj 16F628A-t. Ha mindenképpen 8 lábúban gondolkodsz az Oshon basic-ban van "szoftveres" Uart. Ha nincs meg akkor a demo is alkalmas erre a feladatra, egy -két sor csak...régebben használtam 8-10 byte átviteléhez 12F675-nél.
Igen most már rémlik a probléma 12f508 van az adó oldalába és azzal nem letet megoldani és ezért indultam el ebbe az irányba
Az adó PIC felől csak az 5V negatív és a PIC Tx vonal kell (kettő vezeték) A vevő felől az 5V negatív és az RX vonal kell. 0V összekütve 0V-al, Tx összekötve RX-el. ez uart esetén ... Az adott és vett byte-ok száma egyezzen meg. A gyári példa kis módosítással megfelel a feladatra.
A hozzászólás módosítva: Feb 23, 2014
A vevőben az RB2 bemenetre érkező jelek 3 feladatot indítanak és mindhárom idő alapú. Ezek műkődése nincs elég "szigorú" kényszerben egymással. Sokat szívtam a DS18B20 szenzor kiolvasásával. Egy ASM részletel kellett írnom és a rutint megszakítástiltások közé kellett zárnom. Megnyítottam az Mplabot és miután lefordítottam belejavítottam. Más esetben az INC részletbe tettem bele az említett parancsot...stb. Valami szinkronnak kellene lennie a rendszerben. Miért nem adod ki uarton a jelsorozatot? Ez nem téved. A quartz oda is elkelne.
Kulcsok mindig egyforma kimenetet adnak még egyszer sem fordult elő. hogy tévedt volna. Ezért gondolom, hogy a vevő oldalon kellene a problémát orvosolni. 10 próbálkozásból 7 jó de ez nem jó arány .
Az RB2 key-nél lévő 5db modul kombinációja nem biztos, hogy stabil möködést produkál, vagy éppen azt csinálja, amit gondolsz hogy csinálni fog. Quart nélkül nagyobb a hiba lehetőség. Régebben csináltam ehhez hasonló dolgot egy kicsit hosszabb időkkel, aztán nem igen akart "szót fogadni". Quartz és egy idő pulza leosztva minden feladathoz...-megoldódott.
Melyik Parsic-al írtad? Parcic v3.4 A valóságban hogyan próbáltad ki? Kimenetét meg néztem szkopal is és Saleae Logic 1.1.14, kimenet minden olvasásnál meg egyezik. Mi a tényleges cél?
Cél azonosítás lenne jack dugóba építve . Három féle kulcs van, be kel azonosítani melyik az a kulcs, ami használva van.
Kicsit belepillantotam. Néhány kérdés: melyik Parsic-al írtad? A valóságban hogyan próbáltad ki? Esetleg a kimeneti jelsorozatot megnézted "valamivel"? Mi a tényleges cél? Illetve a tervezett feladat vázlata? Továbbá az időzítések és késleltetések lehetőleg egy modul forrásból származzanak. Az alkalmazás elbírna egy qurtzot is... Példa idő alapu modulok alkalmazására és helyettesítésére (ezek jel pillanatban is működnek több példányban) az ÜTEM1 egy másik oldalon az alap pulza. 10 vagy 100ms stb...
Sziasztok!
Készítettem egy kulcsot illetve hármat. Az adó egy pic ami egy jel sorozatot ad ki. A beolvasását így oldottam meg de nem üzem biztos van mikor nem jó olvas. Kifogytam az ötletek böl van valakinek valami ötlette, hogy lehetne stabillá tenni?
Szívesen ! Ha odafigyelsz és átgondolod mit hogyan szeretnél menni fog .
Köszönöm mindkettőtök segítségét. Ismét tanultam valamit.
Üdv. Peti
Alig tettél bele hibát ! A számítások mind hibádztak , a számok alatt volt egy felesleges szöveg , a szám text ként volt kezelve , ez remélem jó lesz..
A hozzászólás módosítva: Feb 17, 2014
Szia!
Az "LCD OUT" modulban pipáld ki a "constant length"-et. Így tudatod a programmal hogy hány karaktert tartson fent a kijelzendő számnak.
Sziasztok!
Egy kis segítséget kérnék,bár biztos én bénázok valamit. Akarok majd csinálni LM 35-el hőmérőt és az lcd kijelzővel nem bírok. Pontosabban az mitől van,hogy a kijelzett érték az előtte lévő két karaktert is használja,úgy hogy az ott lévő karakterek,ha van írva bele valami,akkor vibrálnak. Pontosabban hiába teszem a megfelelő helyre a karaktert,mégis kettővel el van csúszva. Ez mitől lehet? Mellékelem a progit. U.i.: Tudom,hogy az lm35-nek csak 0,5 fokos a felbontása,így felesleges a tized fokos kijelzés. Jelen esetben csak a tizedes kezelésre vagyok kíváncsi lcd kijelzőn. Segítségeteket előre is köszönöm.
Köszönöm mindkettőtöknek.
Hello!
- RS tároló van a modulok között. De amit Te írsz, az nem RS tároló, mert annak két bemenete van, Set-Reset. Azért "RS".. - Viszont ott van a ZR (Simple Counter) számláló modul, aminek bináris kimenetihez hozzáférsz. Ott a Q0 kimenet pont azt teszi, amit szeretnél. üdv!
Üdv. A kérdésem az lenne, hogy lehetséges-e a parsicban olyan RS tároló megvalósítása (vagy olyan egység létrehozása ami ugyanezt csinálja) aminek van trigger bemenete? Tehát egy impulzusra H szintű lenne a kimenet, a következő impulzusra L szintű... Köszönöm előre is.
Köszi szépen! Már nekem is volt olyan projektem ahol az LCD kijelzésnél nem volt mindegy hogy milyen sorrendbe rakom le a modulokat. Többször át kellett sorszámoztatnom az egész programot. Egyszerűen nem volt hajlandó elfogadni az LCD modult. Még törpölök a progin hátha jön valami ötlet. csao
A helyzet az, hogy néhány ms alatt el kell végeznie jónéhány műveletet, ami nekünk csak egy két modul behúzása. Nemrég egy programban egy ventilátor fordulatát PWM-el szabályoztam. Az analóg bemenetről vettem hozzá a jelet (hőmérséklet). Nagyon precízre akartam, raktam oda jónéhány matematikai műveletet. Az eredmény hasonló volt mint nálad. A ventilátor fordulat szépen sétát, sőt ugrált is néha. Az analóg bemenetre rátettem egy 4 digites műszert, úgy állt fixen mint a szeg... Azért ne feledkezzünk meg róla, a rajz mindent elbír, sőt a proci végre is hajtja, viszont idő is kell hozzá néha... Az igazi kijelzési ciklus az olyan, hogy adddig a proci nem csinál semmit ez párszáz mikroszekundum, vagy esetleg 1-2ms. Parsicban több mindennel együtt kell működnie ehhez. Ne bánjunk felelőtlenül az eszköztár összes elemével még ha a rajz mindent el is bír. Azért (halkan megjegyzem) egy adott modul mögött álló állomány, más "környezetben egy egész project" vagy legalábbis jelentős része mikrokontrollerre. Éppen ezért ott egy kicsit több idő is szükségeltetik hozzá. Itt meg leteszek 3-4 modult, és kész a progi, ja és a háttérben "valaki megírta már" 3-400 sort. Nekem is időnek kellett eltelnie hozzá míg rájöttem, ez egy nagyon jó lehetőség is, hogy tanuljam vele az "asm-ben" való programozást. Ezért jeleztem, hogy megszakítás kezelés kell az igazi Multiplex kijelzéshez. Most írok egy nagyobb programot egy kicsit nagyobb PIC-be és ott kellett szembesülnöm keményebb dolgokkal 30Kb környékén, asm sor 35.000-nél jár. A projektet nyílván nem, de az ott szerzett tapasztalatokat nyílván megosztom, még minden hibamentes és csak 4Mhz-n járatom a PIC-et. Esetleg gondolkozz el azon, hogy egy feladatot több módon is meg lehet oldani, vagy fogalmazd újra, lehetséges egy másik megoldás eredményesebb lesz. Próbáld meg a fentebb említett BCF INTCON,GIE és "párját" használni. esetleg a 2ms-ot vebb hagyobbra...
A hozzászólás módosítva: Feb 5, 2014
Köszi a segítséget majd megpróbálom. Amúgy a kijelző rész tökéletesen működik csak az analóg bemeneten csinálja a fent leírt hibát. Ha analóg bemenetre egy potit teszek 0-5V közé akkor a számváltásnál így jelzi ki az értéket. A tápfesz /0-5V/ ugrálása miatt lehet? Bár tettem az analóg bemenetre kondit is szűrésnek. Akkor is ilyen volt.
Én ezt a programot lm35 érzékelővel használtam tökéletes 1c pontossággal
A hozzászólás módosítva: Feb 4, 2014
Értem már. A hőfokszabályozást egyszerű módon egyetlem modullal meg lehet oldani. A fontosabb rész az a hőelem hiteles felerősítése. Én K hőelemet használtam hasonló célra, ahhoz van kompenzált előerősítő SPI busz kimenettel (max 6675). nem akarlak megtéveszteni. csak jelzem a lehetőségeket. A j hőelem táblázat is nyílván megtalálható a neten. Minden hőfok értékhez tartozik egy mV (uV) érték. Egy sima műveleti erősítővel felerősítve az analóg bemenetre juttatva, a már fentebb említett modulokkal korrigálni lehet a görbét. Erősítsd fel, mérd meg multiméterrel. A 300C körüli érték legyen egyenlő 5V-al. Ez csak egy példa...Vagy éppen 512C legyen 5V ez könnyen kezelhető..stb
A ds18b20-t már néztem én is csak az a baj hogy mindössze 125 fokig jó. sütőbe lenne a hőfokszabályzó, a J hőelem az megvan már. Az erősítés részén gondolkodom még, meg persze a pic programon. Sajnos még nem vagyok annyira profi a parsicban, kijelzőkezelés és ennél bonyolultabbakat még nem csináltam. Pár programot már csináltam vele, működött is beégetve. Mintáknak illetve magyarázatoknak is nagyon örülnék.
Ha igazán pontos hőmérőt akarsz, akkor használj ds18B20-t. Létezik 1-2-3-5m-es vezetékes "vízhatlan kivitel" ez Pl 0,0625 felbontású. (ha van időd kivárni a szállítást, free shipping 3$...stb) Kb 2 hét:Érzékelő_beszerzés Ha van rá igény majd publikussá teszem az INC fájlokat egy példa keretében.
Tessék 0-100c
A hozzászólás módosítva: Feb 4, 2014
Köszi a választ! Egy jó előerősítőre találtam mintát. Pic- be volna egy kis gondom hogy hogyan is kezeljem le. Esetleg egy egyszerű mintát ha fel tudnátok tenni akkor már az alapján meg tudom csinálni. A pontosság az jó lenne ha olyan 1 fok volna.
Helyesbítek: Timer és bármilyen idő alapú modul, késleltetés, impulzus hossz, stb. A Parsicnak nem a legjobb a hétszegmens kijelző kezelője. néhány társunk javított már rajta. keress rá. vagy használj lcd-t van 2x8 soros is...Vagy a már említett megszakítás kezelést...
A hozzászólás módosítva: Feb 2, 2014
|
Bejelentkezés
Hirdetés |




