Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   716 / 1320
(#) 20sz Jófiú válasza watt hozzászólására (») Ápr 3, 2010 /
 
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
(#) watt válasza 20sz Jófiú hozzászólására (») Ápr 3, 2010 /
 
Ezt sajnálattal hallom, remélem teljesen meggyógyulsz!
Akkor várom a fejleményeket!
(#) icserny válasza Oláh Róbert hozzászólására (») Ápr 3, 2010 /
 
Őszintén szólva én ebből nem értettem meg, hogy mi a feladat.
Idézet:
„a kapott bitsorozat négyes csoportjait”
Honnan kapott, miféle bitsorozatról van szó? Hány bit van/lesz összesen?
Idézet:
„...azok szemmel követhető sebességgel, jobbra lesznek léptetve.”
Ez most hogy kapcsolódik az előzőekhez? Úgy értendő, hogy balról becsorog a következő 4 bit?
Idézet:
„a léptetés iránya megváltoztatható legyen.”
És akkor mi lépked balra? A korábban jobbra kiléptetett bitek jönnek vissza?
Idézet:
„a program futása indítható legyen”
Mit csináljon a program "indítás előtt"? (Tudniiilik előtte is fut, legfeljebb mást csinál...)
Idézet:
„egyszeri megnyomására viszont leállítható legyen a program”
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?)
Idézet:
„Egy nyomógombot nyomva tartva”
Milyen nyomógombról van szó? A Starter Kit demókártyáján tudtommal csak RESET gomb van.
(#) loldma hozzászólása Ápr 3, 2010 /
 
Ü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
(#) Hp41C válasza loldma hozzászólására (») Ápr 3, 2010 /
 
Szia!

Nézz bele a levelesládádba...

Szia
(#) nyemi hozzászólása Ápr 4, 2010 /
 
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.
(#) nyemi válasza nyemi hozzászólására (») Ápr 4, 2010 /
 
Elég kicsire sikerült az előbb rajz.Itt egy jobb.Berajzoltam még pár dolgot is.Üdv nyemi.
(#) mateakos válasza alex077 hozzászólására (») Ápr 4, 2010 /
 
Ü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.
(#) SzT3 hozzászólása Ápr 5, 2010 /
 
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

vezerlo.png
    
(#) potyo válasza SzT3 hozzászólására (») Ápr 5, 2010 /
 
Mit takarnak a programok? Valamilyen séma szerint kellene a ledeket ki-be kapcsolgatni?
(#) trudnai válasza SzT3 hozzászólására (») Ápr 5, 2010 /
 
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...
(#) SzT3 hozzászólása Ápr 5, 2010 /
 
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. . .
(#) watt válasza SzT3 hozzászólására (») Ápr 6, 2010 /
 
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.)
(#) kissi válasza Oláh Róbert hozzászólására (») Ápr 6, 2010 /
 
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
(#) Attila86 hozzászólása Ápr 6, 2010 /
 
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.)
(#) kissi válasza Attila86 hozzászólására (») Ápr 6, 2010 /
 
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
(#) lidi válasza Attila86 hozzászólására (») Ápr 6, 2010 /
 
Miért kell eldobni a 8 legkisebbet és legnagyobbat ? Ezek annyira elütnek a többitől, hogy elvinnék az átlagot ?
(#) Attila86 válasza lidi hozzászólására (») Ápr 6, 2010 /
 
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.
(#) icserny válasza Attila86 hozzászólására (») Ápr 6, 2010 /
 
Van ilyen topik: A/D mérési eredmény átlagolás probléma, ebben többféle algoritmust is említenek.
(#) Attila86 válasza icserny hozzászólására (») Ápr 6, 2010 /
 
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. Csak át kell olvasgatnom hozzá a tábla-kezelést...
(#) lidi válasza Attila86 hozzászólására (») Ápr 6, 2010 /
 
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 ?
(#) Attila86 válasza lidi hozzászólására (») Ápr 6, 2010 /
 
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.
(#) Attila86 hozzászólása Ápr 6, 2010 /
 
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.
(#) t-dani válasza lidi hozzászólására (») Ápr 6, 2010 /
 
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.
(#) SzT3 hozzászólása Ápr 6, 2010 /
 
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
(#) lidi válasza t-dani hozzászólására (») Ápr 6, 2010 /
 
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. De végül is lehet hogy szoftverből sikerül korrigálni a hw hiányosságait. Ha ez nem vezet eredményre, akkor más módon kell majd kitalálni mikor érjen véget a töltés. (pl. dT/dt )
(#) Attila86 hozzászólása Ápr 6, 2010 /
 
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" de azért megkérdezlek titeket.
(#) bubu hozzászólása Ápr 6, 2010 /
 
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...

  1. //config bits
  2. #pragma config WDTEN = OFF          //WDT disabled (enabled by SWDTEN bit)
  3. //#pragma config PLLDIV = 3           //Divide by 3 (12 MHz oscillator input)
  4. #pragma config STVREN = ON            //stack overflow/underflow reset enabled
  5. #pragma config XINST = OFF          //Extended instruction set disabled
  6. #pragma config CPUDIV = OSC1        //No CPU system clock divide
  7. #pragma config CP0 = OFF            //Program memory is not code-protected
  8. #pragma config OSC = HS//PLL          //HS oscillator, PLL enabled, HSPLL used by USB
  9. #pragma config T1DIG = ON           //Sec Osc clock source may be selected
  10. #pragma config LPT1OSC = OFF        //high power Timer1 mode
  11. #pragma config FCMEN = OFF          //Fail-Safe Clock Monitor disabled
  12. #pragma config IESO = OFF           //Two-Speed Start-up disabled
  13. //#pragma config WDTEN = OFF
  14. //#pragma config WDTPS = 32768        //1:32768
  15. #pragma config DSWDTOSC = INTOSCREF //DSWDT uses INTOSC/INTRC as clock
  16. #pragma config RTCOSC = T1OSCREF    //RTCC uses T1OSC/T1CKI as clock
  17. #pragma config DSBOREN = OFF        //Zero-Power BOR disabled in Deep Sleep
  18. #pragma config DSWDTEN = OFF        //Disabled
  19. #pragma config DSWDTPS = 8192       //1:8,192 (8.5 seconds)
  20. #pragma config IOL1WAY = OFF        //IOLOCK bit can be set and cleared
  21. #pragma config MSSP7B_EN = MSK7     //7 Bit address masking
  22. #pragma config WPFP = PAGE_1        //Write Protect Program Flash Page 0
  23. #pragma config WPEND = PAGE_0       //Start protection at page 0
  24. #pragma config WPCFG = OFF          //Write/Erase last page protect Disabled
  25. #pragma config WPDIS = OFF          //WPFP[5:0], WPEND, and WPCFG bits ignored


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!
(#) icserny válasza Attila86 hozzászólására (») Ápr 6, 2010 /
 
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)
(#) Attila86 válasza icserny hozzászólására (») Ápr 6, 2010 /
 
Abban a topikban C-ül írnak, én pedig assembly-ben programozok.
Következő: »»   716 / 1320
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