Fórum témák

» Több friss téma
Fórum » Propeller Clock
 
Témaindító: vicsys, idő: Jún 3, 2005
Lapozás: OK   86 / 489
(#) Hp41C válasza janocsi hozzászólására (») Márc 31, 2009 /
 
Szia!

Talán megvan a hiba, nálam már válaszolt az RTC a sw I2C rutinokkal. Javítást (14) küldtem.

A bemérést egy pickit2 klónnal végeztem. Nem volt egyszerű, a relative nagy sebesség és a nyitott kollektoros vonal miatt. A pickit2 bemenete közvetlenül nem vette a jelet, az első két csatornán 4k7 lehúzóellenállás van, ami nagyon megterhelte az I2C vonalak 2k7 felhúzóellenállását. Egy meghajtó fokozat (74HC126) kellett elé.

SWI2D2.png
    
(#) edison14 válasza janocsi hozzászólására (») Ápr 1, 2009 /
 
nagyon tuti

megfordítottam a fototranyót és már el is indult

CSAK egy gond van: a pic 10-es lábáról induló led nem világít pedig ha gnd-re teszem akkor világít mi lehet a baja esetleg tud valaki küldeni egy jól működő programot?
(#) janocsi válasza edison14 hozzászólására (») Ápr 1, 2009 /
 
Szia Edison14!
Nagyon jó hír, örülök, hogy végre elindult az órád! Azt a 10. lábról jövő LED vezérlését át kellene nézned úgy, hogy a PIC-ket kiveszed, és a 14. lábat 1K Ohm -on keresztül a 10. lábra kötöd, (az ellenállást a foglalatban felül szorosan behelyezed), így kapcsolod be a propellert. Ha világit a LED, akkor sajna a PIC kimenetével lehet a gond. Hasonlóképpen, így minden LED-et le tudsz ellenőrizni. Szia.
(#) Hp41C válasza Hp41C hozzászólására (») Ápr 1, 2009 /
 
Szia Janocsi!

Ment a 14 még egyszer és a 15 is....
(#) edison14 hozzászólása Ápr 1, 2009 /
 
Nos beindult az óra. egy kis hiba volt a tranzisztornál de kicseréltem és szuperul megy. Köszönöm mindenkinek a sok segítséget most már teljes az örömöm. még egyszer mindenkinek köszz

szevasztok
(#) janocsi válasza Hp41C hozzászólására (») Ápr 1, 2009 /
 
Szia Hp41C!
Megy az RTC! Emlékszik a beállításokra áramtalanitás után. Minden rendben a programmal, feltöltök róla képket és egy avit. Szia.
(#) janocsi válasza edison14 hozzászólására (») Ápr 1, 2009 /
 
Szia Edison14!
Ha minden rendben, akkor pár képet feltölthetnél a működő órádról. Ezt nagyon szeretnénk. Szia.
(#) Hp41C válasza janocsi hozzászólására (») Ápr 1, 2009 /
 
Sziasztok!

Sok köszönet illeti Janocsi társunkat a tesztelésért és Janibaa-nak a bíztatásért...

Sok vesződség után sikerült a következőkkel bővíteni az eredeti Propeller Clock programját (16F628 2K program memóriával):

- A programban felfedezett hibák javítása
- A hét napjának kijelzése / beállítása,
- Fordulaszám mérése, kijelzése (9999 ford/perc-ig),
- Íves vagy pontszerű másodperc mutató,
- Álló szöveg megjelenítése,
- 16F648A-n két szöveg felváltva jeleníthető meg.

És ami a lagnagyobb fejtörést okozta, az idő tárolása I2C buszos RTC -ben (PCF8583-5). Így az óra nem felejti el az időt áramszünet esetén ill. az órának nem kell folyton a standby táp.

Ez mind csak úgy fért be, hogy az eredeti megoldásokat - ahol csak lehetett - rövidebb kóddal kellett megvalósítani.

Az eredeti rutinok, a hibák javítások ellenére ~256 programlépéssel lettek rövidebbek.

A tapasztalatokról:
- A forrás jól dokumentáltsága lehetővé tette a program megértését.
- Nem árt többször átnézni a letöltött programokat, esetleges hibákat ki lehet javítani.
- A kódot megfontoltan, egyes részeket fokozatosan át lehet írni, le lehet tesztelni.

- Többször volt sikertelen az átírás, az új rutinok nálam a C bitet nem úgy állították be, ahogyan a régi. Figyelmes átnézéssel szimulációval elég hamar kiderült a hiba oka.

I2C
- Ez okozta a legnagyobb fejtörést. A 16F876-os verzió a belső MSSI-vel probléma mentesen kezelte az RTC-t.
A 16F628 nem rendelkezik MSSI-vel, így programból kellett megoldani. A letöltött rutinok a szimulátorban jól múködtek, de a valóságban nem tudtak kommunikálni az RTC-vel.

A megoldást úgy találtam meg, hogy az órámat szétszedtem, a 16F876-ba beégetten a programozott I2C kezelést és PicKit2 logikai analizátorral felvettem az MMSI-vel és a sw-rel kialakított jelalakokat. Ez sem volt olyan egyszerű.

A legvégén az derült ki, hogy minden részlet jó volt, de a port írások "read-modify-write" volta miatt az I2C két vonalához tartozó porta bitek megváltoztak.

A program véglegesítésén még dolgozom egy kicsit....

Sziasztok
(#) vicsys válasza Hp41C hozzászólására (») Ápr 1, 2009 /
 
Nagyon köszi az eddigi (igen figyelemre méltó) munkádat. Várom a folytatást!
(#) edison14 hozzászólása Ápr 1, 2009 /
 
boccs de nem tudok feltenni képet mivel csak webcamom van és elmosódik a kép sajna ez van
(#) calibra hozzászólása Ápr 1, 2009 /
 
Sziasztok!

Gratulálok Hp41C-nek,és Janocsinak a kitartó munkájukért!
(#) janocsi válasza edison14 hozzászólására (») Ápr 1, 2009 /
 
Szia Edison14!
Nem baj, tulajdonképpen igy is "látjuk" a működő órát. Szia.
(#) janocsi válasza calibra hozzászólására (») Ápr 1, 2009 /
 
Szia Calibra!
Köszönjük a gratulációd elsősorban Hp41C nevében. Szia.
(#) Hp41C válasza calibra hozzászólására (») Ápr 1, 2009 /
 
Calibra és Vicsys!

Köszönjük a dicséretet...
A kiindulási alap is nagyon jó volt, érthető, kommentezett.
Nagyon sok munka és fejtörés után itt a közös siker.

Még néhány apró módosítás hátra van - egy kis helycsinálás , talán még egy-két bővítés.
(#) pet válasza Hp41C hozzászólására (») Ápr 1, 2009 /
 
Én is gratulálok a fejlesztésekhez. Alig bírom olvasni a fórumot a sok fejlesztés miatt

Nagyon jó lett!
(#) edison14 hozzászólása Ápr 2, 2009 /
 
Szevasztok!!

Most az lenne a kérdésem hogy hogyan lehet ékezetes betűket kiiratni az órával mert átírtam a szöveget és amikor elindult az óra a szövegrésznél az á betű helyett d betű volt hogyan lehet megcsinálni??
(#) Hp41C válasza edison14 hozzászólására (») Ápr 2, 2009 /
 
Szia!

A topikban erről már volt szó, ha keresel találsz olyan CharGen.asm-et vagy propeller hex-et, amiben már benne van...

Ha nem találnál....
A Chargen.asm -ben a "2 of 2 Smilly" után levő sorokban azonos karakterképet találsz, ezeket át lehet írni az ékezetes karakterekre. A "2 of 2 Smilly" karakter kódja a 3. sor szerint 0x84. a továbbiak ettől kezdődően egyesével növekedő kódot kapnak. A szövegben olyan kódot kell elhelyezni, amilyen ékezetes betűt szeretnél látni.
pl. a 0x85 helyére az "Á" betű képét írod be, akkor a szövegbe az "Á" helyére írj 0x85 -ot. ld. smilly az eredeti szöveg végén...

A változtatás után a programot le kell fordítani és újra be kell égetni.
(#) c27 hozzászólása Ápr 2, 2009 /
 
Sziasztok! Van egy tápventi motorom aminek meghalt a vezérlője. Szeretnék egy egyszerű vezérlőt csinálni hozzá lehetőleg tranzisztorok segítségével és szenzorral. Sajnos nem értek annyira hozzá szóval kéne egy kapcsolási rajz.
Nem találtam sehol sem ebben a témában hasonlót és nem ic-vel akarom megoldani, hanem csak tranzisztorokkal ill. mágnesérzékelő szenzorral az eredeti is ilyen volt, de sajnos kidobtam.
(#) ABU hozzászólása Ápr 2, 2009 /
 
Üdv!

Nekem meg az egyedi távi gombok kiosztása a probléma.
Mindent úgy csináltam, ahogy Kaninjo fórumán le van írva, de így az összes gombra nem reagál

Hogy tisztább képet fessek a problémáról, mondok példát

Az eredeti propeller program keys.asm-ben a külső kör bekapcsolása az F1 gomb. A hozzá tartozó hexa kód 6B.
Nekem arra a gombra kell, ami 37x4A-t küld. A 6B-t átírom 4A-ra, mert azt mondták, hogy az utolsó két értéket kell változtatni. Meg még a többit is megcsinálom, ami lényeges... Feltételezzük, hogy nincs két egyforma kód a keys.asm-ben.
Lefordítom, beégetem, és meg sem nyikkan se a bázis se a propeller.
Nem nagyon értek a programozáshoz, de ezeket megtudtam csinálni. Próbaképpen beírtam a 0x6B helyett 37x4A-t, és úgy sem jó.
Távi működik az általam módosított progival, kamerán keresztül látom, de nem "visz" semmit. :idiota:
A címzés figyelést kivettem.

Minden eredetivel meg tökéletesen üzemel. Nem tudom hol hibázok
(#) janocsi válasza edison14 hozzászólására (») Ápr 2, 2009 /
 
Szia Edison14!
Az ékezetes karakterek kiírásához sok hozzászólás van a topikban, erre utalt Hp41C is. Én is teszek ide egy Linket a topikból, ott mindenre találsz megoldást. Fenteb,b a CharGen.asm ékezetes változatát is megtalálod hozzá. Szia.
Ékezetes
(#) janocsi válasza ABU hozzászólására (») Ápr 2, 2009 /
 
Szia ABU!
A Keys.asm-el nem olyan nehéz megoldani a kódok hozzárendelését. Ehez valóban csak a két útolsó karaktereket kell lecserélni a parancsokhoz, de nincs is ott több karakterhely. A legtöbb esetben azt nem tudjuk, hogy a távir. milyen kódokat küld ki az egyes nyomógombokkal. Ide teszem egy "girderrel" le ellenőrzött RC5 távirányító 16 kódját tartalmazó matrixot, a 4*4-es gomkiosztáshoz. (Topikos!)
3740, 3741, 3742, 3743,
3744, 3745, 3746, 3747,
3748, 3749, 374A, 374B,
374C, 374D, 374E, 374F,
Annyi az észrevétel még ehez, hogy gyakran a "0C" ugyanazt eredményezi mint a "4C", és igy tovább, a program igy értelmezi...
Ha ezeket használod fel a Keys.asm-ben, álltalában működnie kell. Szia.
(#) Hp41C válasza janocsi hozzászólására (») Ápr 3, 2009 /
 
Szia!

A propeller után kéne fejleszteni egy kicsit a többi részén is.

Bázis:
- sokszor került elő, hogy az eredeti programmal táp bekapcsolása után csak a távirányítóval lehet bekapcsolni az órát. Nekem már van egy nyomógomb rajta erre a célra (ill. ha nem találjuk a távirányítót).
- A motor melegedése miatt van olyan óra (főleg az RTC-s), aminek nem kell folyton játnia, automatikusan kikapcsolhatna egy idő elteltével. Ez is működik nálam.
- Élesztésnél jól jönne, ha a vett kódot leküldené soros vonalon. (A bemérésnél már használtam.)
- A soros vonalon parancsokat is fogadhatna.
- A beállított kitöltési tényezőt, kikapcsolási időket tárolhatná az eepromjában.

A pic-nek van még 7-8 szabad lába, a programtára is kihasználatlan.

Távirányító:
a jelenlegi kapcsolás
- Az ajánlott kapcsolásnak túl kevés a gombja ill. a küldhető parancsok száma.
- A gombokhoz rendelt parancskódot a 16C84 eeprom memóriájában lehetne tárolni.
- Többféle készülékhez lehetne használni (propeller clock, fali wand clock, stb. ) Nem kéne mindegyikhez sajátot építeni.
- Itt is lehetne olcsóbb, nagyobb 16F627(A), 628(A), 648(A) típust használni.
- Tanuló funkció is beleférne a nagyobb pic-be.
- Soros vonalon pc-ről lehetne a beállításokat letölteni.

továbbfejleszett kapcsolás 18F2550-nel
- Tanítható távirányító USB kapcsolattal, többféle üzemmóddal nem csak az órákhoz, hanem játékokhoz, (pl lego Mindstorm, Fischertechnik, stb , ....)

Szia
(#) janocsi válasza Hp41C hozzászólására (») Ápr 3, 2009 /
 
Szia Hp41C!
Csak támogatni tudom az elképzeléseid megvalósítását, hiszen ebből már működnek is a fontosabb funkciók. A 628 soros port kezelését még nem egészen értem. (Én PC-re gondoltam). Ez egy más tipusú vonal? Szia.
(#) Hp41C válasza janocsi hozzászólására (») Ápr 3, 2009 /
 
Szia!

Szerencsére a 16F628-ban benne van az uart (az mssi nem volt rajta), így csak néhány utasítás kell a beállításához és az adat küldéséhez, fogadásához. A nehézségét inkább a 16F876 I2C illesztéséhez hasonlítanám. A lényeg, hogy már megy 16F628-on. A közvetlen pc-hez való illesztéshez valóban kell szintillesztő (max232 vagy esetleg egy tranzisztoros- diódás), de a fejlesztéshez használt eszközzel (PicKit2) is megoldható.

Az lenne a kérdésem, hogy milyen funkciókat képzeltetek el az enyémeken kívül.
(#) Hp41C válasza janocsi hozzászólására (») Ápr 3, 2009 /
 
Szia!

Az előbbiből kimaradt...
A soros vonal (szintillesztés után) a pc com1, com2 stb csatlakozójára köthető. A pc-n futó programmal lehetne adatot cserélni a pic-kel. (A vett távirányító címet és a parancskódot elküldő részlet már készen is van. Ld a csatolt kép.)

uart.jpg
    
(#) zolee1209 válasza Hp41C hozzászólására (») Ápr 3, 2009 /
 
Nekem is lenne egy elképzelésem, amennyiben megoldható. Volt már többször olyan is, hogy nagy lett a légrés a két tekercs között és a programban lehetett változtatni macerás úton. Esetleg nem lehetne valami nyomógombbal fel- le léptetni a kitöltést? Mivel RTC is lenne benne, így nincs szükség a "nyugalmi" kitöltésre, csak az üzemi kitöltés dolgozna. Ezt pedig egyszerűen be lehetne állítani, ha véletlenül nem megfelelőek a tekercsünk paraméterei...
(#) calibra válasza Hp41C hozzászólására (») Ápr 4, 2009 /
 
Szia!

Bár ez nem csak szoftveres téma,de mi lenne ha a propellernek több "szárnya" is lenne?Mondjuk a pic és környezete a propeller közepén helyezkedne el,de két sor led lenne felépítve 180 fokkal eltolva,esetleg 2 pic is lehetne a propelleren.Így a fordulatszámot a felére lehetne csökkenteni.Esetleg lehetne három 120 fokkal eltolt szárny három sor leddel.Például lehetne egy R egy G és egy B szárny,így egy szép színes kijelző lenne a végeredmény.

Üdv!
(#) Krisz03 válasza zolee1209 hozzászólására (») Ápr 4, 2009 /
 
Idézet:
„Esetleg nem lehetne valami nyomógombbal fel- le léptetni a kitöltést?”


Erről már volt szó itt: Bővebben: Link
(#) Hp41C válasza calibra hozzászólására (») Ápr 4, 2009 /
 
Szia!

Ehhez mindenképen nagyobb pic kell, több memóriával. Az R , G , B vezérléséhez 3*120 byte kell csak a display bufferhez. A 16F876 -tal felépített verzióba betehető a 18F2620 is, aminek már > 3600 byte ram-ja van.
A 18F szériához a propeller programot át kell dolgozni....

Szia.
(#) Hp41C válasza zolee1209 hozzászólására (») Ápr 4, 2009 /
 
Szia!

A 16F876/886-os verizióban a puffer kondenzátor feszültség mérése is tervbe van véve.

Ha már elindul a kijelzés, a kitöltési tényező állítása a feszültség mérésével ellenőrizhető lesz.

Szia.
Következő: »»   86 / 489
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.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