Qarqet e mikrokontrollorit

Qarqet e mikrokontrollorit

Jump to TINA Main Page & General Information 

TINA mbështet shumë (PIC, AVR, Arduino, 8051, HCS, STM, ARM, TI-Tiva, TI-Sitara, Infineon-XMC) mikrokontrolluesit; MCU të reja vazhdimisht janë shtuar. Ju mund të shihni, modifikoni dhe debugoni programin që punon në procesorin dhe, natyrisht, ju mund të krijoni kodin tuaj.

Ka dy mënyra për të siguruar programin për mikrokontrollues në TINA. Ju mund të përdorni kodin binar dhe skedarin e debugut të përpiluar nga një përpilues standard (p.sh. MPLAB për PIC) ose thjesht mund të ngarkoni kodin tuaj të montimit për të kandiduar dhe debuguar në TINA duke përdorur montuesin e tij të ndërtuar në debugger.

Krijimi i një qarku të thjeshtë counter duke përdorur një mikrokontrollues PIC me programimin e gjuhës së montimit

Krijimi i një qarku të thjeshtë counter duke përdorur një mikrokontrollues PIC me programimin e gjuhës C

Debugging bazë microcontroller duke përdorur TINA

Në TINA mikrokontrollorët mund të simulohen jo vetëm, por edhe së bashku me analoge, dixhitale, HDL ose modele të tjera.

Drejtimin dhe redaktimin e kodit MCU

Ngarko qarkun PIC Flasher.TSC nga dosja ShembujMicrocontrollersPic.

Skema e mëposhtme duke përdorur mikrokontrollorin 16F73 PIC do të shfaqet me mikrokontrollorin 16F73 PIC:

Qarqet e mikrokontrollorit, imazhi 1

Ky qark thjesht llogaritet përpara një nga një. Shtypni button për të parë se si funksionon.

Ekrani duhet të ecë përpara një nga një.

Double-click MCU për të parë kodin ASM në të. (shih më shumë detaje në manualin e Fillimit të Shpejtë).

TINA ka një tipar të madh ku ju mund të redaktoni dhe ndryshoni kodin burimor direkt në TINA.

Lejon të bëjë ndryshimin e mëposhtëm në kodin:

Ndryshoni udhëzimet (të zgjedhura më sipër) në linjën 25 (mund të shihni numrin e linjës në këndin e poshtëm të djathtë të dritares së redaktorit të kodit):

nga shtesa 01H

për të shtuar 02H

Ruaj kodin e ndryshuar te TINA duke shtypur ikonën dhe mbyllni dritaret e hapura MCU.

Nëse ju shtypni button tani, rritja do të jetë 2!

Vini re se kodi i ndryshuar do të ruhet automatikisht në skedarin TINA .TSC.

Duke përdorur debugger

Le të shohim një aplikacion me më shumë ndërveprim.

Ngarko PIC16F84interrupt_rb0.TSC shembull i TINA nga ShembujMicrocontrollersPic dosje.

Shtyp button. Duket në fillim se asgjë nuk po ndodh.

Megjithatë, nëse klikoni në switch SW-HL1, ekrani do të ecë përpara nga 1 çdo herë që kaloni ndryshon nga Low në High.

Aftësia e trajtimit të ndërprerjes së PIC do të na lejojë të zbulojmë ndryshimet e kalimeve.

Tani le të shohim operacionin në më shumë detaje duke përdorur ndërhyrjen interaktive të TINA-s ASM.

Për të aktivizuar debugger, zgjidhni Option në menunë Analysis. Pastaj vendosni kutinë e zgjedhjes "Enable MCU Code debugger", siç tregohet më poshtë në kutinë e dialogut Options Options.

Shtypni butonin OK dhe debugger MCU do të shfaqet:

Le të ndjekim ekzekutimin e programit hap pas hapi duke shtypur Gjurmë në butonin.

Pas rreth 14 klikimeve ne të merrni në etiketë PT1: ku programi duket të jetë në një lak i pafund.

PT1: INCF TEMP, F GOTO PT1

Tani klikoni në switch SW-HL1 dhe ndryshoni atë në Lartë. (Ju duhet të klikoni kur kursori të ndryshojë në një shigjetë lart që tregon Î). Kthehuni tek Debugger dhe klikoni në Gjurmë në buton dy herë. Programi do të njohë ndërprerjen dhe kërcejnë në


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

rriteni COUNTER dhe kopjoni në PORT A, dhe rezultati do të jetë 1. Pas kësaj programi do të kthehet në "lak pafund" në PT1.

Redaktimi i kodit në debugger

Tani le të bëjmë një ndryshim të vogël në program për të demonstruar përdorimin e debugger. Duplikoni INCF COUNTER, deklaratën F duke përdorur Copy and Paste si kjo:

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

Tani kur shtypni programi do të kërkojë:

Shtypni Po dhe shtypni button përsëri. Tani rritja do të jetë 2 në secilin ndryshim të ulët të lartë të kalimit.

Gjithashtu mund të kontrolloni qarkun në mënyrën e vazhdueshme të drejtimit të debugger duke shtypur button.

Edhe pse debugger do të kandidojë shpejt, ju mund të shihni ende "ciklin e pafund" dhe pastaj hidhen në pjesën e serverit Interrupt (INT_SERV:) kur ndryshoni kaloni.

Bërja e një pikëpamjeje

Duke përdorur mënyrën hap pas hapi, shpesh është e pamundur të shkosh në një pikë të caktuar në program. Edhe nëse jeni të durueshëm sa të hapni një mijë hapa, rrjedha e programit nuk mund t'ju lejojë të hapni ku të doni.

Për të ndaluar në vijë të veçantë, mund të shënoni deklaratën e synuar duke vendosur një "pikë të prerjes".

Run programin në mënyrë të vazhdueshme të debugger duke përdorur Run command dhe tani programi do të ndalet në vijën e dëshiruar para se të ekzekutojë komandën e shënuar.

Për të demonstruar këtë, klikoni në deklaratën e rritjes në serverin tonë ndërprerës pas etiketës INT_SERV: dhe shtypni Toggle button break.

Tani shtypni Butoni Run. Programi fillon të funksionojë në një "cikël të pafund".

Edhe pse keni vendosur një piketë, ekzekutimi i kodit nuk do të ndalet sepse nuk merr kurrë pikën e thyerjes. Megjithatë, kur ndërroni kalimin nga Low në Lartë, programi do të ndalet në deklaratën e shënuar:

   INT_SERV:
             INCF COUNTER, F

Tani mund të vazhdoni ose hap pas hapi ose në regjimin Run