TINI SDK, JavaKit og TINIConvertor

Disse sidene er en del av dokumentasjonen som Ola Lie utarbeidet da han foreleste faget IP- og webteknologi ved Høgskolen i Østfold i 2005.Websidene ble revidert i 2007.

I denne leksjonen skal vi installere TINI SDK (Software Development Kit) og kjøre våre første programmer på TINI. For å få dette til er det nødvendig at vi har installert Java SDK og Comm API, som beskrevet på websiden JDK, Hello World, Comm API og PortLister.

I TINI SDK finner vi blant annet tiniclasses.jar, som inneholder alle klassefilene til TINIs API. I denne omgang skal vi imidlertid konsentrere oss om TINIs firmware, som skal overføres til TINIs flash ROM. tini.tbin inneholder TINIs Runtime Environment, som er en kombinasjon av operativsystemet og API, og slush.tbin, som inneholder kommandoskallet Slush. Til selve overføringen benytter vi programmet JavaKit som ligger i tini.jar. JavaKit kjøres på PCen og bruker Comm API for å kommunisere med TINIs boot loader via COM porten.

Fra TINIs hjemmeside hos Dallas Semiconductor (som ble kjøpt opp av Maxim Integrated Products i 2001) kan du laste ned Getting Started kapitelet i TINI Specification and Developer's Guide og TINI® Software Development Kit.

Installasjon av TINI SDK

  1. Last ned siste versjon (tini1_17.tgz) TINI SDK fra http://files.dalsemi.com/tini/index.html
  2. Pakk ut filene til c:\ (filene havner automatisk i mappen c:\tini1.17)
  3. Lag en miljøvariabel TINI_HOME = C:\tini1.17
    (via MinDatamaskin – Egenskaper – Avansert – Miljøvariabler)
  4. Kopier tini.jar
    fra C:\tini1.17\bin
    til C:\Programfiler\Java\jdk1.6.0\jre\lib\ext
  5. Kobble PCen til TINI med en seriell kabel
  6. Kjør cmd (Ledetekst)
  7. Start JavaKit: java -cp c:\tini1.17\bin\tini.jar JavaKit -flash 40 -400
  8. Velg Device TINIm400 fra menylinja i JavaKit
  9. Velg riktig COM port på PCen og klikk Open Port
  10. Klikk Reset, og du skal se

    Welcome to the TINI DS80C400 Auto Boot Loader 1.0.1

    >

    Dersom dette ikke virker, se mulige feilkilder
  11. Overfør filene Slush_400.tbin og tini_400.tbin med File → Load File fra menylinja. Filene finner du katalogen C:\tini1.17\bin

    tini
  12. Tast B 0 (velg adresseblokken hvor heap’en begynner)
    Tast F 0 (intier heap – fyller 64kb med 0’er)
    Tast E (RETURN) for å boote tini
  13. Login med brukernavnet root og passordet tini
  14. Den neste kommandoen forutsetter at din PC er på subnettet 192.168.1.0/24 og at 192.168.1.10 er en ledig IP adresse. Sett opp IP konfigurasjonen med kommandoen
    ipconfig –a 192.168.1.10 –m 255.255.255.0
  15. Avslutt JavaKit med File → Exit

Mulige feilkilder til at du ikke for startet Boot Loader

  • Du må ha valgt Device TINIm400 fra menylinja i JavaKit for at RESET skal virke.
  • Sjekk at COM porten er satt opp med maskinvare flytkontroll under enhetsbehandling. Du kan bruke 115 200 bps overføringshastighet
  • Sjekk at DTR er satt (SET) i JavaKit
  • Jumper 5 (DTR) på TINI skal være kortsluttet
  • Sjekk at kabelen ikke bare overfører data, men også maskinvare flytkontroll.
  • Sjekk at ikke andre enheter er bruker porten (f.eks at en skriver installert på COM1. Da må du flytte denne skriveren til en annen port i egenskaper for skriver.

Kjøre Java programmer på TINI

Før vi kan kjøre de kompilerte Java programmene på TINI, må de konverteres. Java bytecode er jo maskinuavhengig, men litt for prosessorkrevende for TINI. I stedet for at JVM skal bruke navn (tekststrenger) for å finne elementene, konverteres navnene på klasser, metoder, osv. til indekser i en tabell. TINIConvertor er et verktøy program som ligger i tini.jar, og konverterer Java klassefiler til binære filer som kan kjøres på TINI. Det er vanlig at vi må gjennom fem steg for å utvikle å teste et program:

  1. Skrive .java filen
  2. Kompilere .java filen til en .class fil
  3. Konvertere .class filen til en .tini fil
  4. Overføre .tini filen fra PCen til TINI
  5. Kjøre .tini filen på TINI

Konvertering

  1. Kjør cmd (Ledetekst) og gå til c:\tip (cd \tip)
  2. Konverter programmet HeiOla.class:
    java TINIConvertor -f HeiOla.class -o HeiOla.tini -d %tini_home%\bin\tini.db
  3. Koble deg til TINI via TCP/IP
    Sett IP konfigurasjon på PCen eksempelvis til 192.168.1.1/255.255.255.0
    Koble sammen PC og TINI med krysset TP kabel eller via en hub/svitsj.

Overføring

Vi bruker ftp til å overføre den kjørbare filen til TINI (se hvordan):

  1. ftp 192.168.1.10
  2. logg inn med brukernavn root og passord tini
  3. ftp>bin
  4. ftp>put HeiOla.tini
  5. ftp>bye

Kjøring

Vi bruker telnet til å starte programmet på TINI (se hvordan):

  1. telnet 192.168.1.10
  2. logg inn med brukernavn root og passord tini
  3. TINI />java HeiOla.tini
  4. Dersom teksten Hei, Ola! vises i vinduet, har konverteringen, overføringen og kjøringen vært vellykket.

    telnet
  5. For å forenkle punkt koverteringen kan du lage følgene build.bat fil:
    java TINIConvertor -f %1.class -o %1.tini -d %TINI_HOME%\bin\tini.db
  6. Bruk ovennevnte build.bat til å konvertere PortLister.java med build PortLister
  7. Overfør og kjør PortLister.tini på TINI:

    telenet