Sida 1 av 5
Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 16:12:25
av 4kTRB
Eftersom jag ganska nyligen läst 15p Java plus
en 7.5p kurs i algoritmer och datastrukturer
också det helt i Java så har mitt intresse
riktats mot Javelin Stamp. Den är dyr men
väldigt intressant. Ska jag ge mig på en
ny processor så kommer det förmodligen bli den
eller en vanlig PIC då jag har en byggsats från AoE
liggandes för programmering.
Nu undrar jag om någon har testat Javelin?
aJ-100 är också en intressant controller.
Kanske inte lika troligt att någon testat den men man vet ju aldrig.
http://www.ajile.com/index.php?option=c ... &Itemid=27
Re: Javelin Stamp, någon som har tetstat?
Postat: 10 oktober 2009, 16:32:40
av sodjan
Java och microcontroller är en lite märklig kombination.
Att man har råkat lära sig lite Java i andra sammanhang bör
nog inte styra valet av verktyg för microcontrollerprogrammering.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 16:39:42
av 4kTRB
Jo jag kommer välja det.
Java är så pass kul att programmera i och enkelt om man väl
lärt sig objektorienteringen på ett bra sätt. Dit är det förvisso
en ganska hög tröskel men väl där så finns många fördelar.
Java är också betydligt snabbare nu än för några år sedan.
Näst intill lika kraftfullt som kompilerad C-kod.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 16:46:52
av sodjan
Varken Java eller objektorientering har speciellt mycket med programmering
av microcontrollers att göra. Pyssla gärna med Java och OOP, det har jag
inga synpunkter på, men gör det på plattformar, i miljöer och för
problem/applikationer som är lämpliga för det. Annars lurar du
sannolikt ingen annan än dig själv...
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 16:52:32
av 4kTRB
För aJ-100 finns att läsa...
"Using commercial IDEs for Java technology, application developers can create standalone real-time Java enabled applications totally in the Java language with the performance and memory efficiency of systems programmed in C and assembly."
De finns ju anledning till att man tagit fram Javelin Stamp och det är ingen
nybörjar-lär-dig-microcontroller-modell som man har byggt den för.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 17:03:57
av AndLi
Det är ett chip för att javautvecklare ska kunna leka embeddedprogrammerare, precis som basicstampen för basicutvecklare...
De är lätta att komma i gång med, men saknar prestanda... (jo jag äger och har använt ett gäng BS2or..)
Javelin gör otroliga 8500 javainstruktioner per sekund för $90 dollar...
Du bör lyssna på sodjan, han har faktistk koll

Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 17:06:27
av 4kTRB
Nu är jag inte helt insatt i alla tekniska data måste jag erkänna men de
som kan sånt kanske kan få info av de här benchmark testerna, jag vet inte...
http://www.practicalembeddedjava.com/be ... k_11d.html
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 17:24:36
av sodjan
> För aJ-100 finns att läsa...
Kommer inte citatet från en sida ägd av den som vill sälja prylen ?
Vad hade du förväntat dig att det skulle stå just *där* ??
Sen, angående t.ex aJ-100...
"176-lead LQFP packages", låter inte direkt som den typiska hobby-kapslingen direkt.
Vad är det igentligen du ska göra ?
Och den där sidan med benchmark tester, det såg ju inte riktigt ut som
processorer för hobby/hemma pysslaren direkt.
Aja, om målet faktiskt är att köra Java till varje pris, så har du ju inget val.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 17:32:09
av 4kTRB
Nej kanske inte. Inte alla som har virtuell maskin inbyggt.
Men programmera i Java och kompilera koden går bra.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 17:40:24
av 4kTRB
Det blir enklare om jag nu kan Java.
Om jag har olika byggprojekt där jag behöver en controller
så kan jag använda en Javelin. Måste spara en hel del tid
att kunna lasta över sitt javaprogram och sedan plugga in
Javelin. Ska jag lära mig C och ett nytt assemblerspråk tar det
ganska mycket tid.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 17:49:13
av eqlazer
Vad kostar en sån aj-100 eller vilken modell som nu är aktuell?
Är din tid gratis?
Det där med att lära sig ett nytt assemblerspråk behöver du inte bry dig om, det är bara i de fall nått går snett eller man verkligen behöver optimera som det är aktuellt. Huvudsaken är att man vet hur en processor fungerar. Just det kan du inte abstrahera bort genom att köra Java på en uC.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 18:01:22
av Swech
Jag är en j...vel på assembler på AVR, det innebär inte att om jag kör PC
att jag kodar assembler på den bara för att jag kan det... Det blir bara
besvärligt och dumt..
Samma sak här - du kan Java... det gör inte livet enklare på en microprocessor
Se det som en utmaning att lära dig något nytt.
Swech
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 18:04:41
av sodjan
> Det blir enklare om jag nu kan Java.
Nej, tvärtom. Men skit samma, det är väl bara att köra
på och bilda dig en egen uppfattning om hur det fungerar.
Lyssna verkar ju inte vara din starka sida hur som helst...

Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 18:11:42
av Icecap
Ett projekt jag var tungt involverat i fick gjort ett interfaceprogram i Java. Efter att jag och Java-programmören hade kommit överens om protokoll osv. körde vi på men fan om det kunde fungera alls. Efter ett antal tester och debugging framkom det att javaprogrammet skickade byten i fel ordning. Nåväl, vi hade en överenskommen standard och jag höll mig till den, alltså var det Java-programmet som skulle fixas till.
Men se... det gick inte! Det var inte möjligt att fixa detta i Javaprogrammet varför vi helt enkelt fick ändra protokollet till det passade Javaprogrammet. Jag är skapligt säker på att programmören var hyggligt kompetent men jag insåg precis där att Java suger totalt till µC-applikationer och att jag aldrig vill ha med detta att göra, är kontrollen så usel vill jag inte jobba med det, jag har varken lust eller tid att debugga eller leta efter sådana skitfel, min tid är för kostbar för det.
Så i mitt tycke är java mycket sämre än C, visst kan man i stort göra ung. det samma och "kontrollen" med syntax är, efter vad jag förstår, mer rigorös i Java vilket kan vara bra för att fånga "skrivfel" och det talar för java men resten är emot.
Jag ser det att man måste skriva en standard efter vad språket kan klara av som att språket är undermåligt och inte ska användas. Sitter man som ensam utvecklare kan man ifs. relativt enkelt klara sådana problem men är man fler utvecklare suger det fett.
Och Stamp-serien som sådan är en usel ursäkta att leka med mikroprocessorer, visst - behöver man bara blinka långsamt med en eller 2 lampor duger de nog men ska man använda interrupt och andra saker som man kan behöva på en mikroprocessor är det ju kört direkt.
Och det finns knappast anledning att ha en stamp heller, det finns gott om kompilers som kan kompilera Java/BASIC/C/Pascal mm till ren maskinkod som, t.ex. medelst en PICKit2, kan blåsas in i en µC och som ger tillgång till alla funktioner i processorn. Alltså är det knappast en anledning att behöva en javelin.
Re: Javelin Stamp eller aJ-100, någon som har testat?
Postat: 10 oktober 2009, 21:14:23
av 4kTRB
Jag hittade ett exempel för Javelin där det går ut på att
hämta temperaturdata från en tempkrets.
Fördelen med Java är att det finns många färdiga klasser
som underlättar mycket och gör programmeringen relativt enkel.
Kod: Markera allt
import stamp.core.*;
import stamp.peripheral.sensor.temperature.DS1620;
/**
* This program transmits temperature readings from the DS1620
* chip when it receives a request over the serial line. The
* request must include a password number at the start. If the
* password is OK, then a temperature value is obtained and
* transmitted.
*
* The "raw" temperature readings are obtained via the
* TempDataGenJavelin class, which in turn uses the DS1620 class
* provided in the stamp.peripheral.sensor.temperature package.
*
* The serial communications code uses the stamp.core.Uart
* virtual peripheral class.
**/
public class SendTempDataFromJavelin {
// Since only one SimData program per card, make
// the password static.
private static int fPassword__ = 0x2201;
// Label pins on evaluation card for serial I/O
final static int SERIAL_TX_PIN = CPU.pin0;
final static int SERIAL_RTS_PIN = CPU.pin1;
final static int SERIAL_CTS_PIN = CPU.pin2;
final static int SERIAL_RX_PIN = CPU.pin3;
// Create the UART vp for transmission via COM serial port
static Uart fTxUart__ = new Uart (
Uart.dirTransmit, SERIAL_TX_PIN,
Uart.dontInvert, SERIAL_RTS_PIN,
Uart.dontInvert, Uart.speed9600,
Uart.stop1 );
// Create the UART vp for reception via the COM serial port
static Uart fRxUart__ = new Uart (
Uart.dirReceive, SERIAL_RX_PIN,
Uart.dontInvert, SERIAL_CTS_PIN,
Uart.dontInvert, Uart.speed9600,
Uart.stop1 );
/** Resetting Javelin will start the program here. **/
public static void main () {
// Local variable
int data=0;
// Create a temperature data sensor.
DataGenerator temp_sensor = new TempDataGenJavelin ();
// Loop continuously, each time waiting for a request
// to arrive with the password (PW). Then get the
// temperature reading and send it.
do {
// Go into receive mode and wait for PW
checkPW ();
// Get the data
data = temp_sensor.getData ();
// and then send it to the requestor.
sendInt (data);
} while (true);
} // main
/**
* Utility method to send int value as
* two bytes. Use "big-endian" mode with most
* significant byte sent first.
**/
static void sendInt (int data){
fTxUart__.sendByte (data >>> 8);
fTxUart__.sendByte (data & 0x00FF);
}
/**
* Utility method to receive 2 bytes and make an
* int value (16 bits in Javelin) from them.
**/
static int receiveInt () {
int byte1 = fRxUart__.receiveByte ();
int byte2 = fRxUart__.receiveByte ();
return byte2 | (byte1 << 8);
}
/**
* Utility method to recieve an int value
* and compare it to the password.
**/
static void checkPW () {
do {
int data = receiveInt ();
if (data == fPassword__) {
fTxUart__.sendString ("PW OK!\n\r");
break;
}
fTxUart__.sendString ("Wrong PW!\n\r");
} while (true);
} // checkPW
} // class SendTempDataJavelin