Mikro nəzarətçi sxemləri
Mikro nəzarətçi sxemləri
Jump to TINA Main Page & General Information
TINA bir çox (PIC, AVR, Arduino, 8051, HCS, STM, ARM, TI-Tiva, TI-Sitara, Infineon-XMC) mikrokontroller; davamlı olaraq yeni MCU'lar əlavə olunur. Prosessorda işləyən proqramı görə, dəyişdirə və düzəldə bilər və əlbətdə ki, öz kodunu yarada bilərsən.
TINA'daki mikroişlemciler üçün proqram təminatının iki yolu var. Standart kompilyator (məsələn, PIC üçün MPLAB) tərəfindən hazırlanmış ikili kod və diskussiya faylını istifadə edə bilərsiniz və ya montaj kodunu bərpa etmək və bərpa etmək üçün Tina-da bərpa etmək üçün yükləyə bilərsiniz.
TINA mikroişlemcilerinde yalnız tək deyil, eyni zamanda analog, rəqəmsal, HDL və ya digər modellər ilə birlikdə simulyasiya edilə bilər.
MCU kodunu işlətmək və redaktə etmək
PIC Flasher.TSC düyməsi ExamplesMicrocontrollersPic qovluğundan yükləyin.
16F73 PIC mikrokontrolöründən istifadə edərək şematik aşağıdakı 16F73 PIC mikrokontrolör ilə görünür:
Bu dövr birbaşa irəliləyir. Basın
Ekran bir-birinə addım atmalıdır.
ASM kodunu görmək üçün MCU-yə cüt vurun. (Tez Başlanğıc kitabçasında ətraflı məlumat bax).
TINA, doğrudan TINA'daki kaynak kodunu düzenleyip değiştirebileceğiniz harika bir özelliğe malikdir.
Kodda aşağıdakı dəyişiklikləri edək:
25 satırında (yuxarıda seçilmiş) təlimatı dəyişdirin (kod redaktoru penceresinin sağ alt kökündə satır nömrəsini görə bilərsiniz):
addlw 01H dən
02H əlavə etmək
Değiştirilen kodu TINA'ya basaraq qeyd edin
Siz basın varsa
Değiştirilen kodu avtomatik olaraq TINA. TSC faylında qeyd ediləcəyini unutmayın.
Hata ayıklayıcısını istifadə
Daha interaktivliyi olan bir proqram görək.
ExamplesMicrocontrollersPic qovluğundan PIC16F84interrupt_rb0.TSC TINA nümunəsini yükləyin.
Basın
Lakin, SW-HL1 anahtara tıkladığınız zaman, keçid aşağıdan Yüksəyə dəyişdikdə ekran 1 tərəfindən irəliləyir.
PIC-lərin ara vermə qabiliyyəti bizə keçid dəyişikliklərini aşkar etməyə imkan verir.
İndi TINA-nın interaktiv ASM ayıklayıcısından istifadə edərək əməliyyatı daha ətraflı nəzərdən keçirək.
Ayıklayıcıyı aktivləşdirmək üçün Analiz menyusundan Seçim seçin. Sonra Analiz Seçimləri informasiya qutusunda aşağıda göstərildiyi kimi “MCU Kodu ayıklayıcıyı aktiv et” onay qutusunu qurun.
OK düyməsini basın və MCU debugger görünür:
Proqramın icrasını addım-addımla basaraq izləyin
14 tıklamalarından sonra PT1: proqramı sonsuz bir loopda olduğu yerdəyik.
PT1: INCF TEMP, F GOTO PT1
NT_SERV: label.
INT_SERV: INCF COUNTER, F MOVF COUNTER, 0 MOVWF PORT
COUNTER və surətini PORT A-a artırın və çıxış 1 olacaq. Bundan sonra proqram PT1-da "sonsuz dövrəyə" dönəcəkdir.
Kodun hata ayıklayıcısında redaktə edilməsi
İndi proqramda kiçik bir dəyişiklik edək ki, hata ayıklayıcısını istifadə edin. INCF SAYININ Duplicate, Copy and Paste istifadə edərək F ifadəsi belədir:
INT_SERV: INCF COUNTER, F INCF COUNTER, F MOVF COUNTER, 0 MOVWF PORTA
İndi basın
Bəli düyməsini basın və basın
Davamın düyməsini basaraq hata ayıklayıcısının Davamlı Çalışma rejimində da kontrol edə bilərsiniz
Hata ayıklayıcısı sürətli çalışacaq olsa da, keçid dəyişdirərkən "sonsuz dövr" və sonra Interrupt server qisminə atlama (INT_SERV:) görünə bilər.
Bir kəsmə nöqtəsi etmək
Addım-addım rejimi istifadə edərək, proqramda müəyyən bir nöqtəyə gəlmək çox vaxt mümkün deyil. Min addımlar atmaq üçün kifayət qədər səliqəli olsanız belə, proqramın hərəkəti istədiyiniz yerdə addım atmağa imkan vermir.
Müəyyən bir xətt üçün dayandırmaq üçün hədəf bəyanatını "dayandırma nöqtəsi" qoyaraq qeyd edə bilərsiniz.
Proqramı, istifadə edərək, hata ayıklayıcısının davamlı rejimində işləyin
Bunu nümayiş etdirmək üçün, INT_SERV: etiketindən sonra kəsilmə serverimizdə artım ifadəsini basın və basın
İndi basın
Bir kəsmə nöqtəsi qurduğunuza baxmayaraq kodun icrası dayandıra bilməz, çünki heç kəs bu nöqtəyə getməz. Ancaq keçidi aşağıdan yuxarıya dəyişdikdə proqram göstərilən ifadədə dayandıra bilər:
INT_SERV: INCF COUNTER, F
İndi addım-addım davam edə bilərsiniz