Parallax ColorPAL
- feherbalint
- DrótVégénSzéndarab
- Hozzászólások: 42
- Csatlakozott: 2008. augusztus 29. péntek, 6:00
Sziasztok!
Kaptam egy ColorPAL nevű színszenzort, amit a Parallax gyárt. Egy Atmega16-tal szeretném használni, de nem jön össze. A szenzornak soros porton el kell küldeni egy parancsot, hogy milyen módban szeretném használni. A küldést a serout paranccsal csinálom, ez működik szépen, mert a szenzor azt csinálja, amit küldök neki. A szenzor ezután elküldi az értéket ugyan azon a lábon, amire küldtem az adatot. Ennek a beolvasását a serin paranccsal próbáltam megcsinálni. A szenzort két üzemmódban is próbáltam, egyiknél sem kaptam vissza használható információkat. Az egyik módban az adatlap szerint a szenzor 3db 3 jegyű hex számot küld vissza. Így:nnnnnnnnn
Ezt hogy lehetne fogadni úgy, hogy ebből meg tudjam állapítani az RGB kódot?
Próbáltam a másik módot is, itt színenként küldi el az értékeket, itt is 3 jegyű hex-ben. Itt is érdekes számok jöttek.
Adatlap: http://www.parallax.com/Portals/0/Downl ... lorPAL.pdf
Példaprogram Basic Stamp-hez: http://www.parallax.com/Portals/0/Downl ... ograms.zip
Kaptam egy ColorPAL nevű színszenzort, amit a Parallax gyárt. Egy Atmega16-tal szeretném használni, de nem jön össze. A szenzornak soros porton el kell küldeni egy parancsot, hogy milyen módban szeretném használni. A küldést a serout paranccsal csinálom, ez működik szépen, mert a szenzor azt csinálja, amit küldök neki. A szenzor ezután elküldi az értéket ugyan azon a lábon, amire küldtem az adatot. Ennek a beolvasását a serin paranccsal próbáltam megcsinálni. A szenzort két üzemmódban is próbáltam, egyiknél sem kaptam vissza használható információkat. Az egyik módban az adatlap szerint a szenzor 3db 3 jegyű hex számot küld vissza. Így:nnnnnnnnn
Ezt hogy lehetne fogadni úgy, hogy ebből meg tudjam állapítani az RGB kódot?
Próbáltam a másik módot is, itt színenként küldi el az értékeket, itt is 3 jegyű hex-ben. Itt is érdekes számok jöttek.
Adatlap: http://www.parallax.com/Portals/0/Downl ... lorPAL.pdf
Példaprogram Basic Stamp-hez: http://www.parallax.com/Portals/0/Downl ... ograms.zip
Most nem tudom ezt HW-oldalon, hogyan oldottad meg?
Mert a Sorosvonal az 2 vezetékes, 1-iken folyik az adás, másikon a vétel.
Ami 1 vezetékes soros kommunikációként szóba jöhet az 1-wire busz.
http://avr.tavir.hu/modules.php?name=Co ... age&pid=28

Mert a Sorosvonal az 2 vezetékes, 1-iken folyik az adás, másikon a vétel.
Ami 1 vezetékes soros kommunikációként szóba jöhet az 1-wire busz.
http://avr.tavir.hu/modules.php?name=Co ... age&pid=28
- feherbalint
- DrótVégénSzéndarab
- Hozzászólások: 42
- Csatlakozott: 2008. augusztus 29. péntek, 6:00
A serin/serout utasítással ugyan azt a lábat lehet használni küldésre és olvasásra is. Az avr egyik lába közvetlenül össze van kötve a szenzor sig lábával. Hw-ről mást nem tudok mondani. Szerintem ez nem 1 wire lesz, mert azokkal a parancsokkal egyáltalán nem ment a szenzor. Egyébként szerintem elég rosszul van dokumentálva ez a szenzor.:S
- feherbalint
- DrótVégénSzéndarab
- Hozzászólások: 42
- Csatlakozott: 2008. augusztus 29. péntek, 6:00
- feherbalint
- DrótVégénSzéndarab
- Hozzászólások: 42
- Csatlakozott: 2008. augusztus 29. péntek, 6:00
A beállítások szerintem jók, az avr már régóta erről a kristályról megy, és a PC és az avr között jó a soros kommunikáció. Próbáltam több Baud-dal is a szenzor és az avr között, mert az adatlapban csak annyi volt, hogy 2400 és 7200 között bármivel működik. Eddig a 4800-zal kaptam csak számokat, a többi esetén mindenféle hülyeség jött.
- feherbalint
- DrótVégénSzéndarab
- Hozzászólások: 42
- Csatlakozott: 2008. augusztus 29. péntek, 6:00
SW sorosport vagy HW sorosport lehet....
SWsorosport nyitása:
Bár a Serin/Serout is hasonló lehet (azt még nem használtam).
SWsorosport nyitása:
Kód: Egész kijelölése
Open "COMD.1:9600,8,N,1" For Output As #1
- feherbalint
- DrótVégénSzéndarab
- Hozzászólások: 42
- Csatlakozott: 2008. augusztus 29. péntek, 6:00
agent-g!
A serin/serout-ot próbáltam használni, a súgót is elolvastam, de nem sikerül.
Robert!
A szoftveres soros port segítségével még annyit sem tudok elérni, hogy a szenzor valamit is csináljon.
Egy ismerősöm még Parallax procival se tudja összehozni. Elég érdekes dolog. Ha esetleg valakinek még lenne valami ötlete, kérem ossza meg velem!
A serin/serout-ot próbáltam használni, a súgót is elolvastam, de nem sikerül.
Robert!
A szoftveres soros port segítségével még annyit sem tudok elérni, hogy a szenzor valamit is csináljon.
Egy ismerősöm még Parallax procival se tudja összehozni. Elég érdekes dolog. Ha esetleg valakinek még lenne valami ötlete, kérem ossza meg velem!
- feherbalint
- DrótVégénSzéndarab
- Hozzászólások: 42
- Csatlakozott: 2008. augusztus 29. péntek, 6:00
Az az igazság, hogy már én is csak találgatok a kóddal kapcsolatosan.
Ez a Robert által javasolt módszer kódja:
Nekem még az furcsa, hogy 3 jegyű hex szám jön minden színhez, ami már több mint 255. Az ugye maximum 4096 lehet. Ilyen nagy felbontása lenne? Az adatlap ilyet nem említ...
Ez a Robert által javasolt módszer kódja:
Kód: Egész kijelölése
$regfile = "m16def.dat"
$crystal = 16000000
$baud = 4800
Dim Parancs As String * 12
Parancs = "= G !"
Do
Gosub Palreset
Open "comb.1:4800,8,N,1" For Output As #1
Print #1 , Parancs
Close #1
Waitms 500
Loop
Palreset:
Config Portb.1 = Output
Reset Portb.1
Waitms 60
Set Portb.1
Config Portb.1 = Input
ReturnNekem még az furcsa, hogy 3 jegyű hex szám jön minden színhez, ami már több mint 255. Az ugye maximum 4096 lehet. Ilyen nagy felbontása lenne? Az adatlap ilyet nem említ...