이 블로그는 임베디드 컴퓨터를 이용한 장치(시스템) 개발과 원격제어에 필요한 지식을 공유 하기 위한 블로그 입니다.
실제 개발과 프로그램 예를 위하여 Microchip 사의 ATmega128를 사용한 보드와 Arduino Mega 보드(ATmega2560), Raspberry Pi, Raspberry Pi Pico, WiFi 모듈을 사용 합니다.

studio7-mega-page-index

Studio 7(Arduino Mega 2560) Page indexing

이 페이지는 Microchip IDE 환경(Studio 7, MPLAB X IDE)에서 Arduino Mega 2560 보오드를 이용한 장치 개발에 필요한 정보를 제공 합니다.

Mega 2560 보오드는 Arduino 사의 개방형 보오드로 ATmega2560 Chip을 사용 하고 있다. Arduino 사는 Arduino Board를 이용한 개발 환경으로 별도의 Arduino IDE를 제공 하고 있다. 그러나 Arduino에서 제공하는 보오드에 사용 하는 AVR Chip은 전체 AVR 계열 Chip 중에서 몇 종류 만을 사용 하고, Arduino IDE는 이용자들이 편의를 위하여 제한된 Chip에 특화된 함수와 매크로를 사용 하기 때문에 종합적인 AVR Chip의 이해와 개발 환경으로는 부적합 하다. 그러나 Arduino에서 제공하는 보오드와 보오드의 확장에 사용 하는 주변 부품의 종류가 다양 하고 가격이 저렴한 장점이 있다.

이 페이지는 Microchip IDE(Studio 7, MPLAB X IDE) 개발 환경에서 비교적 저렴한 Arduino 호환 보오드와 부품을 사용 하여 Embedded computer(Microcontroller)와 개발 환경에 대한 이해를 돕기 의한 페이지 이다.

Studio 7은 Microchip(Atmel 사를 2016년 Microchip에서 인수 하였음)사의 개발 툴(IDP: Integrated Development Platform)로 AVR과 SAM microcontroller의 개발를 지원하는 가장 효과적인 Tool 이다. 2022년 마지막 업데이트가 이루어진 이후로 최신 칩 지원이 중단 되었으나, 원래 AVR과 SAM 중심 개발 환경이기 때문에 ATmega2560을 공부하는 경우에는 초보자가 좀더 쉽게 접근할 수 있는 장점이 있다.

MPLAB X IDE는 Microchip사의 개발 툴로 다양한 기능을 갖고 있고, 최신 칩도 모두 지원하지만 새로운 기능의 일부는 ATmega2560을 지원하지 않는다.

페이지 내용(Index)

여러가지 유용한 프로그램 예

  • Keypad와 LCD를 이용한 계산기(+, -, *, /) 프로그램 예: cho_keypad_multi_lcd_calculator_2560.zip
  • External Interrupt를 이용 한 Keypad Input, Timer Interrupt를 이용한 Debouncing, 하나의 Keypad를 두 종류의 Code를 갖는 Keypad로 사용(Multi code keypad) 하는 방법, I/O Buffer로 Circular Buffer를 사용 하는 방법, 표준 출력 장치로 LCD를 사용 하는 방법을 이해 하기 위한 예 이다.

  • 구조체를 이용 하여 효과적으로 Command를 실행 하도록 하는 프로그램 예: cho_command_exec_uart_2560.zip