본문 바로가기
728x90
반응형
SMALL

Embedded System41

[AVR] GPIO (General Purpose Input Output) GPIO (General Purpose Input Output) - 범용으로 사용되는 입출력 포트로 설계자가 입력과 출력을 마음대로 선택할 수 있다. - 출력으로 사용시, 0과 1의 출력 신호를 임의로 만들어줄 수 있는 구조를 가진다. - 입력으로 사용할 때는 외부 인터럽트를 처리할 수 있도록 하는 기능이 있는 경우가 있다. - 관련 레지스터는 크게 입출력 방향 전환 레지스터, 출력용 레지스터, 입력용 데이터 레지스터의 3가지가 필요하다. - 내부적으로 pull-up 저항을 가지고 있는 경우가 많다. - 마이크로컨트롤러에서는 대부분의 핀들을 GPIO로 설정하는 경우가 많고, 보통 다른 신호와 중복 (multiplexing)하여 사용한다. ATmega128 입출력 포트 - 6개의 8비트 I/O포트 (PA,.. 2022. 5. 24.
[AVR] 실습 키트 연결 실습 키트 연결 1. [New Project] 2. [Build] ➟ [Build Solution] 3. [Tools] ➟ [Add Target] int main(void) { *(char *)0x3A = 0xff; *(char *)0x3B = 0xff; } 2022. 5. 24.
[AVR] ATmega128 실습 키트 (JKIT-128-1) ATmega128 실습 키트 (JKIT-128-1) JKIT-128-1은 ATmega128 MCU를 비롯하여 LED, FND, 스위치, 부저, 온도센서 광감지센서, 모터제어 드라이버 등의 부품을 실장하여 다양한 기능을 시험해 볼 수 있는 개발 실습 키트이다. 소형 키트로 다운로더 기능을 내장하고 있으며, USB 케이블 하나만으로 전원 공급과 ISP 기능, UART (RS232C) 인터페이스를 동시에 처리하는 한편, 손바닥 안에 들어오는 깜찍한 크기로 휴대하기가 매우 편리하다. 하드웨어 구성 IO 포트 내부 기능 연결도 IO 포트 핀헤더 배치도 https://www.devicemart.co.kr/goods/view?no=1059759 Atmega128 AVR 개발/실습키트 JKIT-128-1 JKIT-12.. 2022. 5. 24.
[Arduino] 서보 모터 (Servo Motor) 서보 모터 (Servo Motor) 자동 제어 구조 혹은 자동 평형 계기에 있어서 전압 입력을 회전각으로 바꾸기 위해 사용되는 전동기를 말한다. 서보 모터는 20ms마다 PWM 신호 (Pulse)를 받아 움직인다. ms (신호가 High일 때) 각 (degree) 1 0 1.5 90 2 180 #include "Servo.h" Servo servo; // Servo 개체 생성 int angle=0; void setup(){ servo.attach(9); // 서보 모터가 D9번 핀에 연결 servo.write(angle); // 모터 축의 위치를 0으로 초기화 Serial.begin(9600); } void loop(){ angle=angle+1; servo.write(angle); // angle에 저.. 2022. 5. 19.
[Arduino] 시리얼 LCD 모듈 (Liquid Crystal Display) 시리얼 LCD 모듈 (Liquid Crystal Display) #include // I2C 사용을 위함 #include // SCL, SDA 사용시 라이브러리 추가 #include hd44780_I2Cexp lcd; void setup(){ lcd.begin(16,2); // LCD 백라이트 on } void loop(){ lcd.setCursor(2,0); // 커서를 (2,0)에 배치 lcd.print("Hello world!"); // 커서 위치에 문자 출력 lcd.setCursor(2,1); // 커서를 (2,1)로 이동 lcd.print("LCD Tutorial"); } 2022. 5. 19.
[Arduino] 아두이노 스케치 기본 구조 아두이노 스케치 기본 구조 기본 구조 기능 Setup() • 제일 먼저 실행되는 함수 • Setup() 종료 → loop() 실행 Loop() • Loop() 함수 내의 코드는 반복됨 디지털 신호 출력 기능 pinMode() • 핀의 입출력을 결정 • 첫번째 인자 → 핀 번호 • 두번째 인자 → 입출력 결정 digitalWrite() • 디지털 값 출력 • 첫번째 인자 → 핀 번호 • 두번째 인자 → 핀 상태 Delay() • 괄호 안의 시간 만큼 지연 • 단위 : ms (0.001초) void setup(){ pinMode(13, OUTPUT); } void loop(){ digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); .. 2022. 5. 19.
임베디드 시스템 (Embedded System) 임베디드 시스템 (Embedded System) 임베디드 시스템 (embedded system, 내장형 시스템)은 기계나 기타 제어가 필요한 시스템에 대해, 제어를 위한 특정 기능을 수행하는 컴퓨터 시스템으로 장치 내에 존재하는 전자 시스템이다. 즉, 임베디드 시스템은 전체 장치의 일부분으로 구성되며 제어가 필요한 시스템을 위한 두뇌 역할을 하는 특정 목적의 컴퓨터 시스템이다. 이에 비해 개인용 컴퓨터와 같은 특정되지 않는 일반적인 목적을 수행하는 컴퓨터 시스템과 대조된다. 특정 목적을 수행하는 컴퓨터 시스템이므로 목적을 설정하고 이를 수행하는 프로그램 코드를 작성하여 메모리에 기록하고 이를 읽어 동작 시키는 방법이 일반적이다. 전자 하드웨어와 기계 부분을 포함하는 전체 장치의 일부로 내장되었다는 의미에.. 2022. 5. 19.
[AVR] Create new Project Create new Project 프로젝트 생성 마법사가 나타난다. 이 대화 상자는 다음을 지정하는 옵션을 제공한다. 여기서, 프로그래밍 언어 및 프로젝트 템플릿이 사용된다. 1. 표시되는 대화 상자는 그림과 유사해야 한다. 템플릿이 설치되었고, 어셈블러가 선택되었는지 확인한다. 2. 프로젝트 유형으로 AVR Assembler Project를 선택한다. 3. 이름 텍스트 상자에 Lab1과 같은 프로젝트 이름을 입력한다. 4. Create directory for solution (솔루션용 디렉터리 만들기) 확인란이 다음인지 확인한다. 5. 프로젝트 위치는 찾아보기...를 클릭하여 변경할 수 있습니다. 6. 계속하려면 확인을 클릭한다. 7. 다음 대화에서 장치를 선택해야 한다. 먼저, Device Fami.. 2022. 5. 11.
[AVR] Atmel Studio Atmel Studio https://www.microchip.com/en-us/tools-resources/develop/microchip-studio#Downloads Atmel Studio 7 web installer를 선택해서 설치한다. (ATmega128는 AVR 8-bit MCU) 2022. 5. 11.
AVR microcontrollers AVR microcontrollers 아트멜 AVR (Atmel AVR)은 1996년 아트멜사에서 개발된 하버드 구조로 수정한 8비트 RISC 단일칩 마이크로컨트롤러이다. 출시 당시 AVR은 프로그램을 저장하기 위해 이용한 메모리 방식을 다른 마이크로컨트롤러처럼 ROM, EPROM 또는 EEPROM을 사용하지 않고, 단일칩 플래시메모리를 사용한 최초의 마이크로컨트롤러 중 하나이다. https://ko.wikipedia.org/wiki/%EC%95%84%ED%8A%B8%EB%A9%9C_AVR 아트멜 AVR - 위키백과, 우리 모두의 백과사전 아트멜 AVR ATmega8 PDIP. 아트멜 AVR(Atmel AVR)은 1996년 아트멜 사에서 개발된 하버드 구조로 수정한 8비트 RISC 단일칩 마이크로컨트롤러.. 2022. 4. 24.
728x90
반응형
LIST