Mikrokontrolleripiirit

Mikrokontrolleripiirit

Jump to TINA Main Page & General Information 

TINA tukee paljon (PIC, AVR, Arduino, 8051, HCS, STM, ARM, TI-Tiva, TI-Sitara, Infineon-XMC) mikrokontrollerit; uusia MCU: ita lisätään jatkuvasti. Voit tarkastella, muokata ja korjata prosessoria suorittavan ohjelman ja tietenkin voit luoda oman koodin.

TINA: n mikrokontrollereita varten on kaksi tapaa tarjota ohjelma. Voit käyttää tavallisen kääntäjän tekemää binaarikoodia ja virheenkorjaustiedostoa (esim. MPLAB PIC: ille) tai voit ladata koodauskoodin suorittamaan ja korjaamaan TINA: n sisäänrakennetun kokoonpano-debuggerin.

Yksinkertaisen laskuripiirin luominen PIC-mikrokontrollerilla, jossa on asennuskielen ohjelmointi

Yksinkertaisen laskuripiirin luominen käyttäen PIC-mikrokontrolleria C-kielen ohjelmoinnilla

Perus mikrokontrollerin virheenkorjaus TINA: n avulla

TINA: ssa mikrokontrollereita voidaan simuloida paitsi yksin, myös yhdessä analogisten, digitaalisten, HDL- tai muiden mallien kanssa.

MCU-koodin suorittaminen ja muokkaaminen

Lataa PIC Flasher.TSC -piiri esimerkkejäMicrocontrollersPic-kansiosta.

Seuraava kaavio 16F73 PIC-mikrokontrollerin avulla tulee näkyviin 16F73 PIC-mikrokontrollerilla:

Mikrokontrolleripiirit, kuva 1

Tämä piiri yksinkertaisesti laskee eteenpäin yksi kerrallaan. paina -näppäintä nähdäksesi, miten se toimii.

Näytön pitäisi edetä yksi kerrallaan.

Kaksoisnapsauta MCU: ta nähdäksesi ASM-koodin. (katso lisätietoja Pika-aloitusoppaasta).

TINA: lla on hieno ominaisuus, jonka avulla voit muokata ja muuttaa lähdekoodia suoraan TINA: ssa.

Voit tehdä koodissa seuraavan muutoksen:

Muuta komentoa (valittu yllä) rivillä 25 (näet rivinumeron koodieditorin ikkunan oikeassa alakulmassa):

käyttäjältä addlw 01H

lisätä 02H

Tallenna muutettu koodi TINA: han painamalla ja sulje avoimet MCU-ikkunat.

Jos painat -painike nyt, lisäys on 2!

Huomaa, että muutettu koodi tallennetaan automaattisesti TINA .TSC-tiedostoon.

Debuggerin käyttäminen

Katsotaanpa toista sovellusta, jolla on enemmän interaktiivisuutta.

Lataa PIC16F84interrupt_rb0.TSC esimerkki TINA: sta EsimerkitMicrocontrollersPic-kansiosta.

paina painiketta. Aluksi näyttää siltä, ​​että mitään ei tapahdu.

Jos kuitenkin napsautat SW-HL1-kytkintä, näyttö siirtyy 1in eteen aina, kun kytkin vaihtuu matalasta korkeuteen.

PIC: n keskeytyskäsittelykyky antaa meille mahdollisuuden havaita kytkimen muutokset.

Tarkastellaan nyt toimintaa tarkemmin TINA: n interaktiivisella ASM-debuggerillä.

Aktivoi virheenkorjain valitsemalla Analyysi-valikosta vaihtoehto. Aseta sitten "Ota käyttöön MCU-koodin virheenkorjaus -valintaruutu", kuten alla on esitetty Analyysiasetukset-valintaikkunassa.

Paina OK-painiketta ja MCU-virheenkorjain tulee näkyviin:

Noudata ohjelman suorittamista vaihe vaiheelta painamalla Trace Into -painike.

Noin 14-napsautusten jälkeen pääset PT1-merkkiin, jossa ohjelma näyttää olevan ääretön silmukka.

PT1: INCF TEMP, F GOTO PT1

Napsauta nyt SW-HL1-kytkintä ja vaihda se kohtaan High. (Napsauta, kun kohdistin muuttuu ylöspäin osoittavaksi nuoleksi arrow). Palaa Debuggeriin ja napsauta Trace Into -painiketta kahdesti. Ohjelma tunnistaa keskeytyksen ja hyppää sisään


NT_SERV: label.
INT_SERV: INCF COUNTER, F MOVF COUNTER, 0 MOVWF PORT

lisää COUNTER ja kopioi PORT A: een, ja lähtö on 1. Tämän jälkeen ohjelma palaa "äärettömään silmukkaan" PT1issa.

Koodin muokkaaminen virheenkorjaimessa

Nyt tehdään pieni muutos ohjelmaan, jossa osoitetaan debuggerin käyttö. Kopioi INCF COUNTER, F -käskyn kopiointi ja liitä näin:

        INT_SERV:
        INCF COUNTER, F 
        INCF COUNTER, F 
        MOVF COUNTER, 0
        MOVWF PORTA    

Nyt kun painat ohjelma kysyy:

Paina Kyllä ja paina painiketta uudelleen. Nyt lisäys on 2 kullakin kytkimessä olevalla Low-High -vaihdolla.

Voit myös tarkistaa piirin debuggerin jatkuvassa ajotilassa painamalla painiketta.

Vaikka debugger toimii nopeasti, voit silti nähdä "ääretön sykli" ja sitten hypätä keskeytyspalvelimen osaan (INT_SERV:), kun vaihdat kytkintä.

Rikkopisteen tekeminen

Askel-askeleelta -tilassa on usein mahdotonta päästä tiettyyn pisteeseen ohjelmassa. Vaikka olet tarpeeksi kärsivällinen tuhannen askeleen saavuttamiseksi, ohjelman virta ei ehkä anna sinun siirtyä mihin haluat.

Jos haluat pysäyttää tietyn rivin, voit merkitä kohdeselvityksen asettamalla ”katkaisukohdan”.

Suorita ohjelma jatkuva virheenkorjaustila käyttäen Suorita komento ja nyt ohjelma pysähtyy haluamaasi riviin ennen merkityn komennon suorittamista.

Voit osoittaa tämän napsauttamalla keskeytyspalvelimen lisäysilmoitusta INT_SERV: etiketin jälkeen ja painamalla Vaihda taukopainike.

Paina nyt Suorita-painike. Ohjelma alkaa ajaa "ääretön sykli".

Vaikka olet asettanut katkaisupisteen, koodin suorittaminen ei pysähdy, koska se ei koskaan pääse katkaisupisteeseen. Kun muutat vaihtokytkintä alhaalta korkeuteen, ohjelma pysähtyy merkitylle lausunnolle:

   INT_SERV:
             INCF COUNTER, F

Nyt voit jatkaa joko askel askeleelta tai Suorita-tilassa