24
코코코코코 코코코 ATMega128 (5 코코 코코 ) 코코 코코

코드비전을 사용한 ATMega128 (5 관절 로봇 ) 작동 방법

  • Upload
    ronat

  • View
    166

  • Download
    1

Embed Size (px)

DESCRIPTION

코드비전을 사용한 ATMega128 (5 관절 로봇 ) 작동 방법. 5 관절 로봇의 특징. 관절 개수 : 5 개 ATMega128 의 다양한 레지스트리 중 3 개의 레지스트리를 사용하여 관절 조정 관절 조정 레지스트리 타이머 레지스트리 USB 송수신 레지스트리. 5 관절 로봇 장치 구성. 전원연결부. 전원 코드 ( 온 되어 있어야 함 ). P O R T B. 프린터 연결 포트. U S B 포트. 코드비전 AVR 사용 방법. 코드비전 AVR 실행 File - New. - PowerPoint PPT Presentation

Citation preview

Page 1: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전을 사용한 ATMega128

(5 관절 로봇 ) 작동 방법

Page 2: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

5 관절 로봇의 특징

관절 개수 : 5 개

ATMega128 의 다양한 레지스트리 중 3개의 레지스트리를 사용하여 관절 조정 관절 조정 레지스트리 타이머 레지스트리 USB 송수신 레지스트리

Page 3: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

5 관절 로봇 장치 구성전원연결부

PORTB

프린터

연결포트

전원 코드( 온 되어 있어야

함 )

USB

포트

Page 4: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

코드비전 AVR 실행 File - New

Page 5: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

Project 선택 ( 소스 .. 아님 ..)

코드 위저드 마법사 사용 Yes 체크

Page 6: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

Chip = Atmega128 선택

Page 7: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

PORT 는 PORTB 로 체크 DATA DIRECTION 은 모든

BIT 를 OUT 으로 체크

Page 8: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

PORT 는 PORTB 로 체크 DATA DIRECTION 은 모든

BIT 를 OUT 으로 체크

Page 9: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

USART1 의 송수신 모드를 그림과 같이 체크

이 설정은 USB 를 통한 로봇과 컴퓨터 사이의 데이터 교환을 위함

Page 10: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

타이머 설정 Clock Source 와 Value

값을 설정 가능함 Value 값은 C 코드

내에서도 동적으로 설정 가능

Page 11: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

구성 완료 File – Generate, save

and exit 클릭

Page 12: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

코드 저장 총 3 개의

파일을 저장함

Page 13: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법 로봇 프로그래밍 c 코드 작성

Page 14: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법 Compile, Make 를 통한 에러 검출

Page 15: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법 롬 기록 세팅 확인 (Setting –

Programmer) AVR Chip Programmer Type = Kanda… Printer Port : 장치 관리자 참조 ATmega169 CK… 체크

Page 16: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법 Run the chip progammer 클릭

Tools – Chip programmer, 바로가기 클릭 .. 등

Page 17: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

칩 확인 ATmega128 인지

확인

Page 18: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

기존의 롬에 저장된 내용 삭제 Program – Erase

Chip

Page 19: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

작성한 코드 롬에 삽입 Program – FLASH

Page 20: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 사용 방법

주의사항 프린트 포트를 통해 로봇과 컴퓨터가 연결되어

있어야 함 로봇의 전원이 연결되어 있어야 함 프린터 포트 옆에 위치한 2 개의 빨간 사각형

( 프린터 포트 전원 연결부라 함 ) 스위치가 모두 위로 올려져 있어야 함

Page 21: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 코드 작성

코드 위저드를 사용하였을 때의 기본 코드 ATmega128 레지스트리 관련 api 임포트

(#include <mega128.h>) 레지스트리 정의 (#define)

PORTB 관련 레지스트리 선언 Usb 송수신을 위한 함수 정의

char getchar1(void) { } : 데이터 출력void putchar1(char c) { } : 데이터 입력

Main 함수 (void main)PORTB 함수 데이터 삽입됨 ( 코드 자동 완성 )메인 함수 내에 실제 작동되는 코드 입력

Page 22: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 코드 작성

실제 코드 작성 방법 Void main 내의 while (1) { } 내에 작성함 변수는 메인 함수 내부에 전역 변수로 설정 가능 While 문의 조건을 변화시키면서 조작 가능함

Chat i = 1;While (i) {.. 내부에 조건을 걸어 i 를 0 으로 바꿀

수 있음 } 메인 함수 내에 While 문을 여러 개

사용함으로써 순차적 처리가 가능할 것으로 생각됨

Page 23: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 코드 작성

주의사항 아트메가 128 칩은 LCD 디스플레이 , 카운트

등 매우 다양한 레지스트리로 구성되어 있으며 현재 우리가 사용하는 5 관절 로봇은 이 중 PORTB 레지스트리의 0~5 번 레지스트리만 사용함

그 외 사용하는 레지스트리는 USB 송수신 레지스트리 , 타이머 레지스트리로 제한됨

코드 위저드를 사용하였을 때 나타나는 수많은 레지스트리들 중 위에서 제시된 레지스트리가 무엇인지 알아내는 것이 중요함

Page 24: 코드비전을 사용한  ATMega128 (5 관절 로봇 )  작동 방법

코드비전 AVR 코드 작성

PORTB 와 관련된 레지스트리 PORTB : 포트 B 를 나타내는 레지스트리 사용 방법

PORTB.0 ( 포트 B 의 0 번 레지스트리 )PORTB.1 ( 포트 B 의 1 번 레지스트리 )..0 번 ~4 번까지 총 5 개의 하위 레지스트리 사용

가능 로봇 조작을 위해 반드시 !!! #include

<delay.h> 를 선언해야 함