Fórum témák
» Több friss téma |
Uraim, aki már készített K típusú szenzorhoz korrekciós programot az segítene nekem kicsit?
Elmélet is elég lenne, hogy miként és hogyan lehetne megvalósítani egy precíz korrekciót a szenzorhoz. Most elég nagy szórással mér a cucc és ezt szeretném pontosítani. Előre is köszi a segítséget.
Erre gondolsz?
K-type sensor data Mert ez milivoltba adja meg és azt hiszem én digitálisan kapom a jeleket nem analógba. Vagy nem jól mondom? (MAX6675-el fogadom a jeleket ami 12bites adatot ad át nekem) A hozzászólás módosítva: Máj 15, 2014
Akkor a K típusú szenzor nem is a legjobb megoldás a pontos hőmérséklet mérésre?
Forrasztópákákba nem ilyen vagy illyes fajta hőelem van? (K, J...stb) Arra gondoltam amit el is kezdtem, hogy 3 különböző műszerrel bemérem a hőelem egyes (lépésenként 50fokkal emelve) mért hőmérsékleteket és azokat átlagolom és abból készítek egy korrekciós táblázatot amely szabályozza majd a kijelzett hőmértékeket. 100-500fok közt fogok mérni szóval nem a legpontosabb tartományába.. (Amúgy Omega K típusú szenzort használok ami azért nem olcsó.. ) A hozzászólás módosítva: Máj 15, 2014
Jó napot kívánok! Kapcsolókkal lenne bajom.
Van egy PIC18F4550-es IC-m. A kapcsolás a következő: - 5 láb digitális kimenet, ezekre mindre egyesével sorosan rá van rakva 1K ellenállás + 1 dióda (védelmi szempontból ajánlották) + egy nyomó kapcsoló egyik kivezetése. - az 5 kapcsoló másik kivezetése össze van kötve és a PIC INT0 megszakítás lábára van kötve, illetve egy 10K ellenállással földre van kötve, szóval alaphelyzetben föld, és ha nyomok akkor átbillen tápra a csomópont. Program: - 5 lábra kirak 5V tápfeszt. - ha bármeik gombot (egyszerre többet is) megnyomom, akkor a csomópont ugye tápra megy, megszakítás keletkezik, megszaktás rutin végig megy egysével a kimeneteken ( 1 tápfeszen, többi addig földön ) és megnézi meik gombok vannak lenyomva (ha nyomva van akkor a megszakítás láb magas szintű). Probléma: - 5V a táp. Alaphelyzetben bármelyik 1K ellenállás után a földhöz képes 4.97V van, ez rendben is van. Viszont a dióda után 9V körüli értéket mérek, ami számomra lehetetlen, a kapcsoló nincs zárva. Illetve ha sokáig megy az áramkör akkor a kapcsolók közös ponta is felmegy tápra, azaz valamelyik kapcsoló meghal és elkezd vezetni?! Az egyik kapcsolómra a digitális multiméterem rövidzárat jelez (30-40 ohm). Kicseréltem a kapcsolót és ment az áramkör, de nemsokára egy másik kapcsoló halt be. Amire én gondoltam: Logika megcserélése. Közös pontot tápra húzom fel 10K-val, és alacsony szinteket rakok az 5 PIC kimenetre, és az Interrupt élfigyelést lefutóra álltom. Bármi ötlet, hogy ezt miért csinálja?
A műszer hibátlan. Más panel feszültségeit, ellenállás értékekeit hibátlanul megméri.
Holnap megnézem majd fordított logikával mit produkál :s SPI buszra felfűzött Shift Regiszteres lábnövelésből maradt vissza ez a logika, hogy minden kimenet magas szintű alapból... csak aztán a Shift Regiszter kikerült a kapcsolásból. Bővebben: Youtube - How to Control a Ton of Inputs using Shift Registers! A hozzászólás módosítva: Máj 15, 2014
Nem hinném, hogy a logikával lenne a baj. Az, hogy a dióda után 9V-ot mérsz, az lehetséges. A műszer nagy belső ellenállása miatt, nem folyik áram a diódán, ezét bizonytalan potenciálon van. Én a gombokra gyanakodnék. Mitől is mehet tönkre egy gomb:
- nagy feszültség (itt 5V van, tehát nem valószínű) - nagy áram (akkor már a pic lábai is halottak lennének) - mechanikai elhasználódás (újak a gombok? vagy esetleg bontottak?)
A gombok újak.
KaiserA: HD44780 LCD könyvtárat keress. például: LCD c library HD44780.h fájlból egy kis részlet: Itt adod meg a PIC - LCD lábkiosztását.
3 vezérlőjel megvan. Viszont a képen csak 7 adatlábat látok bekötve. 2 féle üzemmódod lehet. 4 adat lábas és 8 adat lábas. 7-esről még nem hallottam. Linkelt LCD adatlapjából: DB0 - DB7 Data bus line A képen nincs D0 seholse :O Most nézem hogy amit én találtam az speciel 4 adat lábas, szóval ha Te 8 lábról szeretnél adatot küldeni akkor keress mást :/ A hozzászólás módosítva: Máj 16, 2014
Idézet: „A képen nincs D0 sehol sem.” Van pedig, csak keresd tovább!
Közben tovább gondolva a dolgot eszembe jutott még valami.
Véleményed szerint lehet abból baj, ha előbb kikapcsolom az USB-t és ezt követően megírom a PIC .h állományába a kihagyott részeket? Kimenetnek használnám és billegtetnem kéne. (relé meghajtás miatt, persze nem közvetlen) USB kikapcsolása: (init()-ben)
Gyári: (.h állományban)
Átírnám: (.h állományban)
Idézet: „Kimenetnek használnám és billegtetnem kéne.” Tegnap már megírtam: Ezek a lábak GPIO kimenetek nem lehetnek. Ha annyira kell még az a két láb, akkor miért nem használsz például PIC18F4520-at?
Köszönöm szépen!
A D0 láb a PIC F0 lábára van kötve, a többi pedig a D porton van. az nem baj ,hogyha nem az összes lába D porton van? a R/W pedig a földre kötöttem ,mert mindig írni akarok csak a kijelzőre. Milyen parancsal lehet valamit kiírni a kijelzőre C32 ben? hol tudok ehezz segítséget találni? Köszönöm szépen
Nem értettem meg teljesen, azt hittem csak bemenetként nem lehet használni.
Köszi.
Kipróbáltam a programot és szépen működik csak a kijelző fényereje kicsi.
Megakartam fejelni a pic lábait 1-1 tranyóval de rájöttem hogy nem jó mert a szegmensek negatív jelet kapnak,átlehet e írni a programot ugy hogy minden láb pluszt adjon ki? Esetleg tanulásként a program meik részét kellene átírni és hogyan?
Szia!
Az LCD működik 3.3 .. 3.6V -os vezérlő jelekről? Nem túl jó ötlet az adatvonalak keverése. Az LCD 4 bites módban a D7..4 kivezetési bekötésével is működtethető. Így most minden adatot át kell kódolni... Az adatlapban megtalálható az inicializálás és a kezelés leírása is.
8 gombos érintőkapcsolón világításhoz amin ws2812B villanása vagy más színnel való világítása jelzi majd a megnyomást/bekapcsolt állapotot. Csak kicsi a hely és viszonylag vastag fedlap lesz az érintőkön, így nehéz bekalibrálni , hogy ne zavarják egymást és az érzékenység is megfelelő legyen.
A hozzászólás módosítva: Máj 16, 2014
Léptetőmotort szeretnék PIC-el vezérelni, a vezérlő STEP, DIR jeleket igényel. A kérdésem az volna, hogy a STEP jel generálására a PIC hardveres PWM-jét fel lehet használni, vagy szoftverből kell ezt generálni. A probléma az, hogy vannak gyorsítások, lassítások, stb, amikor nem elég egy fix frekvencián adni a jelet, hanem pl. nulláról 10kHz-re 0,2s alatt kell felgyorsítani a jelet lineárisan.
Sziasztok!
Meg tudja valaki mondani, hogy hol találok C32-es fordíthoz, parancsokat, pl gomblenyomás, kiírás kijelzőre. lcd_putc(" ")? vagy hogyan kell. Milyen parancsal tudok PIC lábat földre húzni? Köszönöm szépen A hozzászólás módosítva: Máj 16, 2014
A C nyelvben nincsenek ilyen parancsok. A periféria kezelést ezért vagy az adott mikrovezérlőhöz tartozó fejléc állományban definiált portok matatásával, vagy a Microchip által biztosított progamkönyvtárak perifériakezelő függvényeivel, vagy pedig saját függvényekkel/makrókkal kell megoldani.
A C32 fordító telepítési könyvtárában van némi dokumentáció és van egy examples mappa. Ez utóbbiban a led_message az első esetet valósítja meg. A plib_examples almappában található mintapéldák a 2. eset képviselik. Ha ezeket átlátod, akkor a honlapomon található információk alapján az igényeidnek megfelelő LCD kezelést magad is meg tudod írni (ez lesz a 3. eset: saját függvények) A hozzászólás módosítva: Máj 16, 2014
Sziasztok!
Azt szeretném megkérdezni, hogy ezt H fájlt hogy kell úgy átírni, hogy a lennt lévő kapcsolási rajz alapján múködjön, bekötöttem mint a 8 adatlábat, de ha a PICen 0-ába húzom a D0-D3 ig akkor 4 bites ként is múködik. Valaki tudna segíteni? PIC LCD
a programom eddig itt tart:
Köszönöm szépen A hozzászólás módosítva: Máj 16, 2014
Hát az adatbusszal van egy kis gikszer. Az 8 bites adatvonalként van definiálva, nálad meg a D0 az nem az D porton van. Egyszerűbb lenne ha azt átkötnéd az 58 helyett a 46-os lábra.
Szia!
Az a bajom hogy már legyárottam a panelemet, programozásilag nem lehet , egyszerűen megoldani? A hozzászólás módosítva: Máj 16, 2014
Használd 4 bitesen és definiálj egy 16 elemű byte tömböt, amiben a kiírandó nibble (0..15) bitfordított értékének kétszerese van eltárolva. A kiírás során a nibble -k helyett azok átkódolt értéküket írd ki a PORT4 .. PORTD1 -re.
A hozzászólás módosítva: Máj 16, 2014
Hali.
Kis segítséget szeretnék kérni. Ezt a PIC-es kapcsolást szeretném megépíteni ami ezen az oldalon található: LINK ennek is a 877A-as változatát. Az a problémám, hogy összeszereltem próbapanelen, de nem értem mitől futnak így rajta a karakterek. Ez a video ezt szemléltetné Megcsináltam ezt a kapcsolást Proteus szimulátorral, és ott tökéletesen működik. A led panelem egy 8x8-as közös anódos. Igaz hogy az oldalon 7x7-es panel szerepel de működnie kell 8x8-ason is szerintem. Hol kellene keresnem a hibát? A programban vagy a bekötéseknél?
Végül is nem tudjuk, hogy mit hova kötöttél. A LED mátrix lábkivezetései eléggé össze-vissza vannak elrendezve, könnyen el lehet téveszteni a sorrendet. Legalább egy kötéslistát adj meg (melyik portláb a LED mátrix melyik lábára van kötve, s melyik az anód, ill. melyik a katód).
Egyébként a program is tökéletlen, mert ha nincs áramkorlátozás, akkor egyszerre csak egy LED-et szabad kigyújtani (csak egy pillanatra!), máskülönben az egyszerre bekapcsolt LED-eken egyenlőtlenül oszlik meg az áram.
Ha a proteusban jó, akkor 99%, hogy elkötésed van.
Szia!
Kaphatok egy kis segítséget, hogy program nyelven, ezt hogy hogy kell megvalósítani? Köszönöm szépen
Köszönöm a hozzászólásokat. A mellékelt ledpanelem van. Úgy kötöttem be, vagy legalábbis én úgy értelmezem, hogy sorba kell venni az oszlopokat, mondjuk balról jobbra és akkor így jönnek a lábszámok: 13,3,4,10,6,11,15,16 majd a sorok száma: 9,14,8,12,1,7,2,5
Ezért vélem én is úgy hogy valami elkötés lehet, ha a szimulátorban tökéletesen működik. |
Bejelentkezés
Hirdetés |