마이크로 컨트롤러 회로
마이크로 컨트롤러 회로
Jump to TINA Main Page & General Information
TINA는 (PIC, AVR, Arduino, 8051, HCS, STM, ARM, TI-Tiva, TI-Sitara, Infineon-XMC) 마이크로 컨트롤러; 새로운 MCU가 지속적으로 추가되고 있습니다. 프로세서에서 실행되는 프로그램을보고, 수정하고, 디버그 할 수 있으며 물론 자신 만의 코드를 만들 수도 있습니다.
TINA에서 마이크로 컨트롤러를위한 프로그램을 제공하는 두 가지 방법이 있습니다. 표준 컴파일러 (예 : PIC 용 MPLAB)로 만든 바이너리 코드 및 디버그 파일을 사용하거나 빌트인 어셈블러 디버거를 사용하여 TINA에서 실행 및 디버깅하도록 어셈블리 코드를로드 할 수 있습니다.
TINA에서 마이크로 컨트롤러는 아날로그, 디지털, HDL 또는 다른 모델과 함께 시뮬레이션 할 수 있습니다.
MCU 코드 실행 및 편집
ExamplesMicrocontrollersPic 폴더에서 PIC Flasher.TSC 회로를로드하십시오.
16F73 PIC 마이크로 컨트롤러를 사용하는 다음 회로도는 16F73 PIC 마이크로 컨트롤러와 함께 나타납니다.
이 회로는 단순히 하나씩 앞으로 계산합니다. 눌러
디스플레이가 하나씩 앞으로 이동해야합니다.
MCU를 두 번 클릭하여 ASM 코드를 봅니다. (빠른 시작 설명서에서 자세한 내용 참조).
TINA에는 TINA에서 직접 소스 코드를 편집하고 변경할 수있는 훌륭한 기능이 있습니다.
코드에서 다음과 같이 변경합니다.
25 줄의 명령 (위에서 선택)을 변경하십시오 (코드 편집기 창의 오른쪽 하단 모서리에 줄 번호가 표시됨).
에서 추가 01H
02H 추가하려면
변경된 코드를 TINA에 저장하려면
를 누르면
변경된 코드는 자동으로 TINA .TSC 파일에 저장됩니다.
디버거 사용
더 많은 상호 작용이 가능한 다른 애플리케이션을 살펴 보겠습니다.
ExamplesMicrocontrollersPic 폴더에서 TINA의 PIC16F84interrupt_rb0.TSC 예제를로드하십시오.
를 누르십시오
그러나 SW-HL1 스위치를 클릭하면 스위치가 Low에서 High로 바뀔 때마다 디스플레이가 1에 의해 앞으로 이동합니다.
PIC의 인터럽트 처리 기능을 통해 스위치 변경 사항을 감지 할 수 있습니다.
이제 TINA의 대화 형 ASM 디버거를 사용하여 작업을 더 자세히 살펴 보겠습니다.
디버거를 활성화하려면 분석 메뉴에서 옵션을 선택하십시오. 그런 다음 분석 옵션 대화 상자에서 아래와 같이 "MCU 코드 디버거 활성화 확인란"을 설정합니다.
OK 버튼을 누르면 MCU 디버거가 나타납니다 :
프로그램 실행을 단계별로 따라가 보도록하겠습니다.
14 클릭이 끝나면 프로그램이 무한 루프에있는 것처럼 보이는 PT1 : 레이블로 이동합니다.
PT1 : INCF TEMP, F GOTO PT1
NT_SERV: label.
INT_SERV: INCF COUNTER, F MOVF COUNTER, 0 MOVWF PORT
COUNTER를 증가시키고 PORT A로 복사하면 출력은 1가됩니다. 이 후 프로그램은 PT1의 "무한 루프"로 되돌아갑니다.
디버거에서 코드 편집하기
이제 디버거 사용법을 보여주기 위해 프로그램을 약간 변경해 보겠습니다. 다음과 같이 복사 및 붙여 넣기를 사용하여 INCF COUNTER, F 문을 복제하십시오.
INT_SERV: INCF COUNTER, F INCF COUNTER, F MOVF COUNTER, 0 MOVWF PORTA
이제 당신이
예를 누르고
디버거의 연속 실행 모드에서 회로를 확인하려면
디버거가 빠르게 실행 되더라도 스위치를 변경하면 "무한 사이클"이 표시되고 중단 서버 부분 (INT_SERV :)으로 이동할 수 있습니다.
중단 점 만들기
단계별 모드를 사용하면 프로그램의 특정 지점에 도달하는 것이 불가능할 수 있습니다. 수천 걸음 씩 걸을 수있을 정도로 환자가 있다고하더라도 프로그램의 흐름에 따라 원하는 곳으로 이동할 수 없게 될 수도 있습니다.
특정 행에서 중지하려면 "중단 점"을 설정하여 대상 명령문을 표시 할 수 있습니다.
디버거의 연속 모드에서 프로그램을 실행하십시오.
이것을 설명하기 위해 인터럽트 서버에서 INT_SERV : 레이블 다음에있는 increment 문을 클릭하고
이제
중단 점을 설정 했더라도 코드 실행은 중단 점에 도달하지 않으므로 중단되지 않습니다. 그러나 스위치를 낮음에서 높음으로 변경하면 프로그램은 다음과 같이 표시된 문에서 중지됩니다.
INT_SERV: INCF COUNTER, F
이제 단계별로 계속 진행할 수 있습니다.