Disassembler ja simulaattori MSP430-arkkitehtuurille
Nurminen, Juuso (2013)
Nurminen, Juuso
Tampereen ammattikorkeakoulu
2013
Creative Commons Attribution-NonCommercial-ShareAlike 1.0 Suomi
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201305158748
https://urn.fi/URN:NBN:fi:amk-201305158748
Tiivistelmä
Tämän opinnäytetyön tarkoituksena oli ohjelmoida disassembler ja simulaattori MSP430-arkkitehtuurille C++-ohjelmointikielellä. Ohjelmiin toteutettiin parseri, joka lukee TI-TXT-muotoisia tiedostoja. Ohjelmakoodi kirjoitettiin niin, että sen voi kääntää millä tahansa yleisellä C++-kääntäjällä ilman ylimääräisiä tai alustasta riippuvia kirjastoja.
Ohjelmien käyttöliittymät tehtiin tekstipohjaiseksi ja komentoriviltä käytettäväksi. Kummankin ohjelman käyttö tapahtuu antamalla ohjelmalle parametriksi käsiteltävän tiedoston nimi. Ohjelmat osaavat ilmoittaa käyttäjälle, mikäli parametri annettiin väärin tai tiedostoa ei ole olemassa.
Disassembler ohjelmoitiin tunnistamaan myös emuloidut käskyt, jotta sen tuottamia käännöslistauksia olisi helpompi lukea. Disassembler kirjoittaa käännöslistauksensa parametrinä annetun tiedoston nimellä, johon on liitetty dasm_-etuliite.
Simulaattori tukee kaikkia käskyjä paitsi RETI, jota käytetään keskeytyksissä. Simulaat toriin ei tehty tukea mikrokontrollereissa olevien integroitujen lisäominaisuuksien, kuten AD-muuntimien tai tietoliikennerajapintojen, tai keskeytysten simulointiin.
Ohjelmien käyttöliittymät tehtiin tekstipohjaiseksi ja komentoriviltä käytettäväksi. Kummankin ohjelman käyttö tapahtuu antamalla ohjelmalle parametriksi käsiteltävän tiedoston nimi. Ohjelmat osaavat ilmoittaa käyttäjälle, mikäli parametri annettiin väärin tai tiedostoa ei ole olemassa.
Disassembler ohjelmoitiin tunnistamaan myös emuloidut käskyt, jotta sen tuottamia käännöslistauksia olisi helpompi lukea. Disassembler kirjoittaa käännöslistauksensa parametrinä annetun tiedoston nimellä, johon on liitetty dasm_-etuliite.
Simulaattori tukee kaikkia käskyjä paitsi RETI, jota käytetään keskeytyksissä. Simulaat toriin ei tehty tukea mikrokontrollereissa olevien integroitujen lisäominaisuuksien, kuten AD-muuntimien tai tietoliikennerajapintojen, tai keskeytysten simulointiin.