Johdanto Nämä ohjeet opastavat sinut tekemään kurssiin TKT-1110 Mikroprosessorit liittyvät harjoitustyöt. Ohjeet sisältävät kolme osiota. Ensimmäisenä esitellään projektin luonti, mikä tehdään ainoastaan kerran. Debug-osiota tulet käyttämään oppilaslabooratoriossa todellisessa laitteistoympäristössä, kun ohjelmaa ajetaan suorittimella. Simulaattoria käytät oppilaslaboratorion ulkopuolella, kun simuloit ohjelmien toimintaa ilman laitteistoa. Kursiivilla kirjoitettu teksti viittaa aina johonkin HEW-ohjelmassa esiintyvään tekstiin, merkkeihin, valikoihin tai toimintoihin. Jos ohjelma jossain yhteydessä valittaa kirjoitusoikeuksien puuttumisesta, älä noteeraa. Projektin luonti Käynnistä HEW (High-Performance Embedded Workshop). Luo uusi projekti aukeavasta ikkunasta. Uusi projekti kannattaa sijoittaa suoraan muistitikullesi. Näin ohjelma ei tulevaisuudessa herjaa tiedostojen muuttuneista paikoista. Valitse asetukset kuten kuvassa New Project Workshop on esitetty Suraavaksi vourossa ovat projektin asetukset. Aseta seuraavat kahdeksan ikkunaa kuten alla olevissa kuvissa on esitetty. Next-painikkeella pääset eteenpäin. Huomaa, että kohdassa 6/8 rastitat yhteensä kaksi riviä!! - 1 -
- 2 -
Lopuksi hyväksy yhteenveto ja saat valmiin projektin näkyville. Kansiossa Assembly source file olevan TKT1110.src-tiedoston sisällön voit poistaa. Kommentit voit halutessasi jättää. Älä kuitenkaan poista koko tiedostoa, sillä tähän tiedostoon sijoittuu tekemäsi koodi. Sijoita kurssin kotisivuilta löytyvä equt.inc-tiedosto hakemistoon F:\TKT1110\TKT1110. Nyt projekti on luotu (kuva alla) ja voit alkaa tekemään ohjelmaasi. Tulevaisuudessa, kun käynnistät ohjelman valitse aina aluksi Open Workspace... Pelkkä Open... ei avaa kokonaista projektia. Katso Filevalikko. - 3 -
Simulaattori Simulaattorin saat käyttöösi asettamalla työkalurivin alasvetopalkit kuvan mukaisiksi (SimDebug...). Ruudulle saattaa ilmestyä yksi tai useampi ponnahdusikkuna. Ne voit ohittaa >Cancel. Avaa TKT1110.src-tiedosto kuvaruudulle ja kirjoita ohjelmasi. Kääntämisen jälkeen listaustiedosto tulostetaan hakemistoon F:\TKT1110\TKT1110, kun asetat kohdasta Build>H8S, H8/H300 Standard Toolchain... (lomake Assembly) rastin kohtaan Generate list file <OK>. - 4 -
Talleta valmis ohjelmasi. Muista asettaa käynnistyvektori:.section kayn_vekt,data,locate=0.data.l h'ffa200 ;hipsu enterin vas. ;puolella Simulaattorin käyttömuistia tulee hieman muokata. Valitse valikosta Setup > Simulator >Memory Resource lomake Memory. Aseta simulaattorin muisti alla olevien kuvien mukaiseksi (siniset rivet muuttuvat). <OK> Lisäksi stacksct.src-tiedostoa pitää muokata. Kommentoi (; rivin alkuun) molemmat.export-rivit ja molemmat _-merkillä alkavat rivit. Talleta Seuraavaksi on vuorossa ohjelman kääntäminen ja linkittäminen. Näistä toiminnoista HEW käyttää yhteistä nimeä Build (valikko Build> Build tai F7). Suorita Build-toiminto! Ruudulle ilmestyy Confirmation request > Yes Jos viereistä kuvaa ei ruudulle ilmesty, lataa.abs-tiedosto manuaalisesti kuvan osoittamalla tavalla. Klikkaa hiiren oikeaa näppäintä.abs-tiedoston päällä ja valitse Download. Jos Download modules - kansiota ei esiinny ohjelmasi hakemistorakenteessa, ota yhteys assistenttiin. Varoituksesta Cannot find "P" specified in option "start" ei tarvitse välittää. Ohjelmasi on valmis ajettavaksi. Ohjelmaa ajetaan Debug-valikon toiminnoilla. Tästä seuraavassa - 5 -
Ohjelman testaus Alla on lueteltu oleellisimmat toiminnot liittyen ohjelman testaukseen. Ne löytyvät Debug-valikosta tai kuvan mukaiselta työkaluriviltä. Opettele käyttämään toimintojen pikanäppäimiä; ne nopeuttavat testaamista kummasti. Alla on lueteltu työkalupalkin toiminnot vasemmalta oikealle. Keltainen palkki esiintyy sen käskyn päällä, joka suoritetaan seuraavaksi. Reset CPU Käynnistysvektori haetaan ohjelmalaskuriin. Viimeistään nyt keltainen palkki ilmestyy ohjelmasi ensimmäisen käskyn päälle. Go Ohjelman reaaliaikanen suoritus alkaa Go to Cursor Ohjelmaa ajetaan reaaliaikaisesti, kunnes suoritus tulee riville, jossa kursori on. Reset Go Haetaan käynnistysvektori ja reaaliaikanen suoritus alkaa Step in Ajaa ohjelmaa yhden käskyn eteenpäin Step over Ajaa ohjelmaa yhden käskyn eteenpäin. Suorittaa aliohjelmat reaaliaikaisesti. Step out Ajaa aliohjelman reaaliaikaisesti loppuun ja pysäyttää suorituksen Stop Pysäyttää ohjelman suorituksen Set PC to Cursor Asettaa ohjelmalaskurin sisällöksi sen käskyn alkuosoitteen, minkä päällä kursori on Lisäksi voit asettaa ohjelmaasi katkoskohtia (Breakpoints). Kuvassa ohjelmaan on asetettu kaksi katkoskohtaa tuplaklikkaamalla S/W Breakpoints-sarakkeessa. Idea on, että nyt ohjelmaa ajetaan reaaliaikaisesti ja se pysähtyy siihen - 6 -
katkoskohtaan, joka ensin tulee vastaan. Saattaa tietenkin olla, että ohjelman suoritus ei kulje katkoskohtien kautta... Poista katkoskohdat samalla tavalla kuin ne asetit. Modulaarinen ohjelmointi Projekti voi koostua useista lähdekooditiedostosta (.src). Valitse valikosta File > New, jolloin saat ruudulle tyhjän dokumentin. Talleta tämä hakemistoon F:\TKT1110\TKT1110.src päätteisenä. Seuraavaksi lähdekoodi tulee ottaa mukaan projektiin. Valitse Pjoject > Add Files... Tiedosto ilmestyy vasemmalla näkyvään hakemistorakenteeseen kansioon Assembly source files. Kun projektisi koostuu useammista lähdekooditiedostoista, tulee määrätä, mitkä näistä otetaan käännökseen mukaan. Tiedosto voidaan sulkea pois klikkaamalla sen päällä hiiren oikeaa näppäintä ja valitsemalla Exclude Build Tiedoston_nimi.src. Tiedoston päälle ilmestyy punainen rasti merkiksi, että tätä tiedostoa ei käännetä eikä linkitetä. Vastaavalla tavalla voit ottaa tiedostoja käännökseen mukaan (Include Build Tiedoston_nimi.src). Ohjelman ajaminen kontrollerilla Oppilaslaboratoriossa... Kytke kortille virta (kytke muuntaja pistorasiaan). Kytke muistitikku työasemaan Avaa projektisi (Open Workspace). Aseta alasvetopalkit kuten kuvassa Talleta projektiisi kohdistuvat muutokset Ruudulle ilmestyy ponnahdusikkunoita (jos ei, valitse Debug > Connect); valitse kaikissa <OK> - 7 -
Seuraavaksi on vuorossa Build. Mekanismi on tästä eteenpäin sama kuin simulaattorissa (katso ylempää...). Oppilaslaboratoriossa muistia ei muuteta kuten simulaattorissa. Kun muutat ohjelmaasi, poista kaikki katkoskohdat ennen kuin teet Buildtoiminnon Kun poistut: irroita muistitikku älä korttia!!! irroita kortin pistotulppa pistorasiasta. sammuta näyttö - 8 -