Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Szia!
Köszönöm a választ és a segítséget a szülinapi kerékpár felíratban! Sajnos március 12-ike óta nem tudtam foglakozni a témával, mert munkába menet elütöttek a zebránál. Szerencsére csak a lábam tört el de már az is szépen gyógyúlgat. Ha felépülök (kb. egy hónap) majd folytatom ott ahol abbahagytam. Addig is pihenek. Pisti
Ezt sajnálattal hallom, remélem teljesen meggyógyulsz!
Akkor várom a fejleményeket!
Őszintén szólva én ebből nem értettem meg, hogy mi a feladat.
Idézet: Honnan kapott, miféle bitsorozatról van szó? Hány bit van/lesz összesen?„a kapott bitsorozat négyes csoportjait” Idézet: Ez most hogy kapcsolódik az előzőekhez? Úgy értendő, hogy balról becsorog a következő 4 bit?„...azok szemmel követhető sebességgel, jobbra lesznek léptetve.” Idézet: És akkor mi lépked balra? A korábban jobbra kiléptetett bitek jönnek vissza?„a léptetés iránya megváltoztatható legyen.” Idézet: Mit csináljon a program "indítás előtt"? (Tudniiilik előtte is fut, legfeljebb mást csinál...)„a program futása indítható legyen” Idézet: Mit jelent a "leállítás"? (a program mindig fut, amíg nem áramtalanítod a mikrovezérlőt, a kérdés az, hogy mit csináljon?)„egyszeri megnyomására viszont leállítható legyen a program” Idézet: Milyen nyomógombról van szó? A Starter Kit demókártyáján tudtommal csak RESET gomb van. „Egy nyomógombot nyomva tartva”
Üdv mindenkinek!
Lenne egy óriási problémám, miszerint tervezem egy bináris órának a legyártását. Nos, PIC-ekkel akartam már régebben is foglalkozni, csak sajnos most van érettségi, és ez nagyon nem az az időszak, amikor én el tudnék kezdeni ezzel foglalkozni, viszont még ezen a héten el szeretném készíteni az órát, mivel ajándékba lesz. Keresnék olyan Budapesti embert, akivel személyesen tudnék találkozni, odaadnám neki a PIC16F627A-t, a programot, és a sör/csokihálát, és beleégetné. Nagyon nagy segítség lenne ![]() ![]() ![]()
Sziasztok. Szeretném, ha megtekintenétek elméleti kapcsolásomat és véleményt mondanátok róla. Mint már megszokhattátok tőlem ez is egy cdi gyújtás lenne, ami magának állítaná elő a 400V kondenzátortöltő feszültséget. A jel, amit a PIC kimenetén kapunk egy 27KHz 49% kitöltésű 65mS hosszúságú impulzus sorozat. A 65mS hosszúság persze a fordulat növekedésével arányosan csökken ez a legalacsonyabb fordulatnál ennyi(458ford.). így oldanám meg hogy mindig elegendő idő legyen a kondenzátor töltésére akármilyen fordulatnál. Szerintetek helyes e az elképzelés, vagy muszáj lesz e bekapcsolni a PIC-be az analóg vagy komparátor bemenetet és avval figyelni a kondenzátor töltöttségét egy ellenállás osztón keresztül?Még kérdezném azt is, hogy szerintetek elég védelmet kap e a PIC a nagyfeszültségű impulzusokkal szemben vagy még elbírna 5,1 zénert RB3 lábára? Gondolkoztam FET meghajtó driver-en is, de nem tudom milyen előnyöket nyújtana , ezért ha lehet arról is írjatok már egy pár sort mellet vagy ellene. Válaszaitokat előre is köszönöm . Üdv nyemi.
Elég kicsire sikerült az előbb rajz.Itt egy jobb.Berajzoltam még pár dolgot is.Üdv nyemi.
Üdv.
Ha a max232 5V-os oldalán visszahurkolva a PC nem fogadja a saját maga által küldött jeleket, akkor lehet, hogy a már említett szembe kötés okozza a problémát. Csak egy tipp, de ellenőrizd újra a kábelt a max és a PC között, mert ha ott van a TX és RX felcserélve valamelyik csatlakozón, akkor ez szerintem okozhat ilyet.
Sziasztok!
Segítséget kérnék illetve jelentkezőket keresek. Anno segítségetekkel építgetni próbáltam egy pic-es uln2003 as keresztűlvíve. az lett volna a lényeg hogy 11 vagy 15 egység ledet tudjak program alapján villogtatni és lett volna 1 vagy 3-4 programváltó gomb. Az a projekt végül nem valósult meg, viszont most vállalkozó kedvű embert (embereket keresek) aki építene nekem ilyen áramkört. A lényeg tehát 10-11 vagy több vezérelt kimenet illetve egyik esetben 1 a másik esetben pedig 3 programváltó gomb (reset gomb nem szükséges) Tehát erre a két áramkörre lenne szükségem A feltöltött áramkörhöz hasonló (csak ez hibás!!!) Természetesen nem ingyen kérem (normál áron). A jelentkezéseteket előre is köszönöm
Mit takarnak a programok? Valamilyen séma szerint kellene a ledeket ki-be kapcsolgatni?
Hat igen, a nyomogomb es az RA4 felhuzasat nem a 12V agra kellene tenni!
Amugy ha penzes megbizasrol van szo akkor azt a hirdetes rovatba kellene tenni nem ide...
Bocsánat nem tudtam hogy van olyan is akkor rakom át oda helyesebben oda is
Amúgy igen a programok azt takarják hogy az egyes programba villog a 1,5,9,8,7,/2,3,8,7,9/7,6,4,9,2,1, a kettes programba meg másképpen. . .
Van az oldalamon egy 150db LED-ből(is) álló áramkör(fényfüggöny). A LED-eket bármilyen sorrendben lehet szervezni és akár egyenként is villoghatnak(elvileg egy LED helyén két LED is állhat sorbakötve, ha duplasor kell. Lehet, hogy ilyenkor a 270 ohmokat csökkenteni kell(5V-ról működik az egész) 150 ohm körülire ha nem lenne elég a fényerő.). A forrásprogram is ott van, csak módosítani kell a táblázatokat a kívánt szervezés és a fényjáték szerint.
A 15oszlop x 10(vagy 20) LED-es kiépítés nem okoz nehézséget a táblázatok átszerkesztésében. A huzalozás sem, ha az oszlopok egymás mellett lesznek. Ha nem, akkor kicsit macerás, de megéri, mert a kapott effektek kárpótolnak(bármilyen kombináció elképzelhető). De elvileg az áramkörből kiindulva(mondjuk az izzósból), ki lehet építeni a te általad elképzelt verziót is, csak akkor a program nem felel meg. (Építést és bérprogramozást nem vállalok.)
Jó lenne, ha nem hagynád itt a feltett kérdésedet...
![]() Még egy kérdés: milyen piros betűs részt emlegetsz?! Steve
Szeretnék egy olyat csinálni, hogy a PIC 12 bites A/D-jával veszek 80db mintát, ezeket eltárolom, majd a nyolc legkisebb és a nyolc legnagyobb érték kivételével összeadom a maradék 64db mintát aztán nyolcszor jobbra forgatom az eredményt, tehát átlagolom.
De hogyan lehetne 80db kétbájtos számból kiválasztani a nyolc legnagyobbat és a legkisebbet? ![]() (18F-es PIC-kel dolgozom és assembly-ben.)
Van egy olyan programozási algoritmus, hogy "buborékelv", ha jól emlékszem a nevére. Párosával össze kell hasonlítani az adatokat és szükség esetén csere! Ha jól emlékszem 80 elemnél max. 80-szor kell végigcsinálni és akkor biztosan sorba rakódnak ( de ha már nem volt csere, akkor lehet rövidíteni ) !
Pl. 1,5,3,2,4 az adatok kezdeti sorrendje. Első cserélgetés után: 5,3,2,4,1 Második után: 5,3,4,2,1 Harmadik után: 5,4,3,2,1 és ezután már nem változik. Azért buborék, mert a "legnagyobb felszáll" ! Remélem érthető volt a leírás ![]() Steve
Miért kell eldobni a 8 legkisebbet és legnagyobbat ? Ezek annyira elütnek a többitől, hogy elvinnék az átlagot ?
Azért, mert mindegy hogy 64 értékből vagy 80-ból átlagolom-e ki. De ha esetleg valami zaj miatt ráül egy-egy tüske a mérendő jelre és pont akkor vett a PIC mintákat, akkor ezeket a mintákat egyszerűen eldobom és pontosabb lesz a mérés.
![]()
Van ilyen topik: A/D mérési eredmény átlagolás probléma, ebben többféle algoritmust is említenek.
Köszönöm! Bár sajnos assembly példát nem írnak benne de nem baj, már kitaláltam egy saját módszert.
![]() ![]()
Micsoda ötlet ! Eddig én RC filterrel védekeztem eddig, de ez is segíthet.
Én most egy több csatornás akkutöltővel szívok. Cellánként tölt, 1A -el. A probléma, hogy ha egy cella töltése közben indul be egy másik töltőkör, akkor esik pár mV fesz, amit tévesen töltés végének detektál most. Talán jobb nyákterv is segíthetne, de most azt találtam ki hogy a cellák feszültség mérése alatt szüneteltetem a töltő és kisütő áramokat az összes csatornán. Erre esetleg valami más ötlet ?
A nyák áttervezése a legkorrektebb megoldás. A vezetékek feszültség-esését esetleg ki is lehetne kompenzálni ha tudjuk a pontos értékét, de a legjobb szoftveres megoldás szerintem hogy a mérés idejére lekapcsolod a töltőáramokat, ahogyan most is teszed.
18F-ek táblakezeléséről van a neten valami magyar nyelvű leírás? A Kónya-könyvben csak egy mintaprogram van, ez elég kevés.
![]()
Fix 1 A-rel tölti a cellákat az áramköröd? Mert ha változtatható lenne, akkor be lehetne tervezni amolyan felfutó jellegű töltés megkezdést... valamint ilyen esetekben segíthet még nagyobb kapacitású, profibb elektrolit kondenzátor beépítése a tápellátó egységbe.
Megnéztem a fényfüggönyödet szuper de nem ilyet keresek (most per pillanat) viszont kérdezném egyutal hogy hol tudnám közzétenni a "munkalehetőséget" (panelépítés) mert se itt se az apróhirdetés topicba nincs jó helyen. . . Illetve megint kérném hogy aki építene az jelentkezzen
Köszönöm
A töltés "lassan" indul el, kb 1mp alatt fut fel, sajnos a vezetősávon eső feszültség lesz nálam a gond. Vastag pedig + réz vezeték és ón is van rajta, csak hát nem csillagpontos lett az egyszerűség folytán. Egy vonalban fut a föld az akkucellák negatívjához. És ha egy előrébb levő cella felé is folyik áram, akkor nyilván esik némi feszültség. NiMh cellánál pedig 5mV esést kell detektálni a töltés végén. Ami bizony nem sok. Még fejlesztés alatt van ez a töltő, ez az első verzió, ilyenkor mindig beüt valami, lemarad ez-az.
![]()
Hogyan lehet létrehozni egy 80 bájtot tartalmazó táblát? És ha én két bájtos számokat szeretnék tárolni, akkor ezt hogyan szokás kezelni? Létre kell hozni két külön táblát és teljesen külön kezelni, majd a táblamutató-regisztereket mindig átírni? Vagy egymás után lefoglalni 160 bájtot és kétszer egymás után inkrementálni meg dekrementálni?
Mondjuk azt szeretném, hogy az A/D vegyen 80db mintát és egymás után pakolja be őket egy táblába. Egymás után tegye őket egy összesen 160 bájtos táblába így: 1. minta felső bájtja 1. minta alsó bájtja 2. minta felső bájtja 2. minta alsó bájtja 3. minta felső bájtja 3. minta alsó bájtja ... Vagy 2db 80 bájtos tábla legyen és egyikbe a felső bájtokat,a másikba az alsókat pakolja? Melyik könnyebben kezelhető? Én az 1db 160 bájtosra szavaznék "ha most vasárnap lennének a választások" ![]()
Sziasztok!
Tudtok abban segíteni, hogy hol találom meg a regiszter beállításokat? Még mindig 18F46J50-nel küzdök... Most hogy ujra kellett telepítenem a rendszeremet előjött egy olyan probléma, hogy az eddigi összes projektem szétesett és az I2C-seket most raknám rendbe, de amikor 2 MSSP port van egy PIC-ben és a 2-at használom, mint az említett chip-nél, már nem megy :S Mivel a 45K20-as demo board-on, ahol 1 MSSP van ott megy, így már a regiszter beállításokra gyanakszok...
Másik kérdésem pedig az, hogy tapasztalta valaki rajtam kívül, hogy az I2C -nél ha NotACK-t adok ki akkor elakad a futó program... :S MCC18 fordítót használok. A segítséget előre is köszönöm!
Azért ajánlottam az átlagolással foglalkozó topikot, hogy abból nézz ki valami rekurzív algoritmust, hogy ne kelljen ekkora tömbökkel dolgozni. A kiválogatott (eldobandó) adatok nyilvántartásához is elegendő csupán az m darab legkisebb és legnagyobb értéket tárolni. (Esetedben m=8)
Abban a topikban C-ül írnak, én pedig assembly-ben programozok.
|
Bejelentkezés
Hirdetés |