1. Původní zadání
1.1 Problematika
1.1.1 Teplotní senzor
1.1.2 Rozhraní desky SLD PXA250
2. Zadání 2
2.1 Problematika
2.1.2 JVM
2.1.3 RS232
2.1.4 AT příkazy
2.1.5 Aplikace v Jave
3. Dodatek
3.1 Vývojová deska SLD PXA PCboard
3.2 Popis procesoru PXA250
4. Soubory ke stažení
5. Odkazy
Senzor se vzdáleným přístupem.
Vhodné typy které na našem trhu jsou např.
LM75 (GM electronic)
DS16313 (DALAS Semiconductor)
DS1721 (DALAS Semiconductor)
9-12 bit temperature sensor and thermostat.
Komunikace probíhá po dvou vodičích SDA a SCL. Všechny obvody se připojí paralelně ke sběrnici, oba řídící signály se připojí přes zvedací odpory 10k na napájení +5V. U většiny obvodů se dá část adresy nastavit. Adresy jednotlivých obvodů jsou 7 bitové, nejméně významný 8 bit určuje směr přenosu dat 0 = zápis do obvodu, 1 = čtení z obvodu. Pokud se provádí zápis do obvodu tak se nejdříve vysílá adresa obvodu dále adresa paměti v obvodu a nakonec data, při čtení se vyšle adresa a pak se již načítají data. Přenášená data se u jednotlivých obvodů liší podle jejich funkce a vnitřního uspořádání.
Zde byl kámen úrazu, neboť na tomto vývojovém kitu není sběrnice I2C vyvedena. Pro příklad uvádím přehled konektorů vývojového kitu.
Aplikace v Jave pro komunikaci s mobilním telefonem přes port RS232 pomocí AT příkazů.
Zdrojové soubory potřebné pro kompilaci byly staženy na stránce http://java.sun.com
Konkrétní verze byla stažena ze stránky http://www.sun.com/software/communitysource/j2me/cdc/download.xml
Detailní popis by měl mít na stránce Ádám Egressy v projektu Sensor s dotykovým panelem.
Tento port má na desce vyveden přímo konektor Cannon 9, deska však pomocí
tohoto rozhraní komunikuje s terminálem na počítači.
Bylo tedy třeba tento port uvolnit a pro komunikační terminál bylo použito
síťového rozhraní, které je především podstatně rychlejší pro
přenos potřebných dat a souborů.
Komunikační knihovna pro sériový port je na stránce java.sun.com jen pro
platformu Windows. Jedná se o Java Communications API,
která je zde
http://java.sun.com/products/javacomm/index.jsp. Na stránce http://www.geeksville.com/~kevinh/linuxcomm.html
je však
odkaz na knihovnu, která rozšiřuje Comm API pro použití i pod Linuxem. Je
zde i návod jak tyto soubory instalovat. Potřebné soubory
jsou na stránce http://www.rxtx.org/. Jelikož
se využívá původní javax.comm, je ve výsledné aplikaci potřeba změnit
pouze identifikaci
portu (viz. tab.)
Port | Windows port identifier | What you use in Linux |
Serial Port 1 | COM1 | /dev/ttyS0 |
Serial Port 2 | COM2 | /dev/ttyS1 |
Parallel Port 1 | LPT1 | /dev/lp0 |
Při kontrole portu se tedy misto:
if (portId.getName().equals("COM1")) {...
pro Linux použije:
if (portId.getName().equals("/dev/ttyS0")) {...
Zkratka AT je začátek příkazu,
doplníme podle požadovaného povelu, =
Příklad AT příkazů
AT příkaz | Popis | Příklad povelu do MT | Příklad odpovědi z MT | Poznámka |
AT | Umožňuje otestovat komunikaci s MT. | AT <CR> | OK | |
ATA | Vyzvednutí příchozího hovoru. | ATA <CR> | OK | Pokud na MT žádný hovor nepřichází tak MT odešle ERROR. Příchozí hovor MT oznamuje znaky RING. |
ATH | Zrušení probíhajícího hovoru (zavěšení). | ATH <CR> | OK | |
ATD | Vytočení telefonního čísla. | ATD0602123456; <CR> | OK | MT vytočí tel. č. 0602123456. Pokud nemá MT signál, tak místo OK odpoví NO CARRIER |
AT+CCLK | Datum a čas z MT | Příklad : AT+CCLK?<CR> |
+CCLK: "03/01/04,16:30:04" | Stáhne aktuální čas zobrazovaný na displeji MT. |
Zdrojový soubor ke stažení: ATmobile.java
Zkompilovaná aplikace: ATmobile.class
Projekt v JBuilderu: ATcommands.zip
Vývojová deska PXA250 je založena na nové architektuře procesorů Intel Xscale, které dále zvyšují výkonnost při nižší spotřebě energie. Mikroarchitektura XScale je založena na technologii Intel Strong ARM, což zajišťuje slučitelnost s architekturou ARM, a tudíž i kompatibilitu softwarových řešení. Vývojová deska PXA250 obsahuje procesor Intel XScal, paměti SDRAM a Intel StrataFlash, 2 ethernetové řadiče, 3 sériové porty a 1 stereofonní audio výstup. Základní HW vlastnosti jsou následující:
Modul PXA250 je určen k provozování síťových embeded aplikací a optimalizován pro vývoj velmi výkonných internetových zařízení a k tvorbě síťové infrastruktury. Je vybaven dvěmi síťovými rozhraními 10Mb/s, z nichž jedno může sloužit pro připojení k síti LAN a druhé k PC. Na desce je rovněž integrován zvukový adaptér, který umožňuje použití SLD v IP telefonii. SLD PCBoard je dodáván ve třech provedeních, z nichž nejvýkonnější provedení, verze PRO, je určeno pro náročné úkoly vyžadující výkonný CPU a velkou paměť. Toto provedení může být rovněž v ethernetové síti použito jako firewall, router/switch atd. Více k procesoru PXA250 zde: http://noel.feld.cvut.cz/vyu/scs/prezentace2002/pxa250/
Zdrojový soubor ke stažení: ATmobile.java
Zkompilovaná aplikace: ATmobile.class
Projekt v JBuilderu: ATcommands.zip
Prezentace: pxa250.ppt
AT příkazy pro Siemens C35i: AT_C35i.pdf (další
viz odkazy)
Popis procesoru PXA250: http://noel.feld.cvut.cz/vyu/scs/prezentace2002/pxa250/
Popis sběrnice I2C: http://www.caha.wz.cz/clanky/ic.php
Návod na používání AT příkazů: http://bramo.pcsvet.net/ovlmt.htm
Rozsáhlý seznam AT příkazů: http://gatling.ikk.sztaki.hu/~kissg/gsm/at+c.html
Ostatní odkazy jsou v textu.
Jaroslav Nušl |
j.nusl@email.cz |
http://www.cvut.org/36ami/ |