Microsoft PowerPoint - 제5장 인터럽트 (HBE-MCU-Multi AVR).ppt [호환 모드]
|
|
- 용림 좌
- 7 years ago
- Views:
Transcription
1 Chapter. 5 인터럽트 HBE-MCU-Multi AVR Jaeheung, Lee
2 목차 1. 폴링과인터럽트그리고인터럽트서비스루틴 2. ATMega128 인터럽트 3. 인터럽트로 LED 점멸시키기 4. 인터럽트로스톱워치만들기
3 인터럽트 1. 폴링과인터럽트그리고인터럽트서비스루틴 2. ATMega128 인터럽트 3. 인터럽트로 LED 점멸시키기 4. 인터럽트로스톱워치만들기
4 인터럽트 인터럽트 (Interrupt) 방해하다 훼방놓다 어떤작업을진행하고있다가갑자기다른일이발생하여먼저처리해야하는상황을인터럽트발생이라함. 현재수행중인일을잠시중단하고급한일을처리한후원래의일을다시이어서수행 이때, 그급한일을해결하는것이인터럽트서비스루틴임 발생시기를예측할수없는경우에더효율적
5 인터럽트 인터럽트와인터럽트서비스루틴 인터럽트가발생하면프로세서는현재수행중인프로그램을멈추고 상태레지스터와 PC(Program Counter) 등을스택에잠시저장한후인터럽트서비스루틴으로점프한다. 인터럽트서비스루틴을실행한후에는이전의프로그램으로복귀하여정상적인절차를실행한다. 원 래 하 던작업 인터럽트발생 중단 복귀 인터럽트가발생하면실행할내용 ( 인터럽트서비스루틴 )
6 폴링과인터럽트 마이크로컨트롤러의외부상황입력방법 폴링 (polling) : 사용자가명령어를사용하여입력핀의값을계속읽어서변화를알아내는방식 인터럽트 (interrupt) : MCU 자체가하드웨어적으로그변화를체크하여변화시에만일정한동작을하는방식
7 인터럽트 인터럽트의구성요소 발생원 : 누가인터럽트를요청했는가? 우선순위 : 2개이상의요청시누구를먼저서비스할까? ( 중요도 : Priority) 인터럽트벡터 : 서비스루틴의시작번지는어디인가?
8 인터럽트 인터럽트의종류 발생원인에따른인터럽트분류 n 내부인터럽트 n 외부인터럽트 차단가능성에의한인터럽트분류 n 차단 ( 마스크 ) 불가능 (Non maskable, NMI ) 인터럽트 n 차단 ( 마스크 ) 가능 (Maskable) 인터럽트 인터럽트조사방식에따른분류 n 조사형인터럽트 (Polled Interrrupt) n 벡터형인터럽트 (Vectored Interrupt)
9 ATMega128 인터럽트 ATMega128 인터럽트 차단가능한외부인터럽트 리셋포함총 35개의인터럽트벡터를가짐 n 리셋 1개 n 외부핀을통한외부인터럽트 8개 n 타이머관련 14개 n 타이머 0(2 개 ), 타이머 1(5 개 ), 타이머 2(2 개 ), 타이머 3(5 개 ), n UART 관련 6 개 n USART0(3 개 ), USART1(3 개 ), n 기타 6 개
10 ATMega128 인터럽트 ATMega128 인터럽트 모든인터럽트는전역인터럽트인에이블비트인 SREG 의 I 비트와각각의개별적인인터럽트플래그비트가할당되어있다. 인터럽트들과개개의리셋벡터는각각개별적인프로그램벡터를프로그램메모리공간내에가진다. 모든인터럽트들은개별적인인터럽트허용비트를할당받는다. 특정인터럽트를가능하게하려면특정인터럽트가능비트와상태레지스터 (SREG) 에있는전체인터럽트허용비트 (I 비트 ) 가모두 1 로세트되어있어야한다.
11 ATMega128 인터럽트 상태레지스터 (SREG:Status REGister) ALU 의연산후상태와결과를표시하는레지스터 I T H S V N Z C 비트 I T H S V N Z C 설명 Global Interrupt Enable Bit Copy Storage Half Carry Flag Sign Bit 2's Complement Overflow Flag Negative Flag Zero Flag Carry Flag
12 ATMega128 인터럽트 인터럽트마스크레지스터 (EIMSK : External Interrupt MaSK register) 외부인터럽트의개별적인허용제어레지스터 INTn 이 1 로세트되면외부인터럽트인에이블 INT7 INT6 INT5 INT4 INT3 INT2 INT1 INT0 비트 INT7~0 설명 Int7~0 Interrupt Enable
13 ATMega128 인터럽트 ATMega128 인터럽트우선순위 프로그램메모리공간에서최하위주소는리셋과인터럽트벡터로정의되어있다. 리스트는서로다른인터럽트들의우선순위를결정한다. 최하위주소에있는벡터는최상위주소에있는벡터에비해우선순위가높다. n RESET : 최우선순위 n INT0(External Interrupt Request 0) : 2 순위 MCU 제어레지스터 (MCUCR: MCU Control Register) 의 IVSEL(Int errupt Vector SELect) 비트를세팅함으로써인터럽트벡터의배치를변경할수있다.
14 ATMega128 인터럽트 외부인터럽트의트리거 인터럽트를발생시키기위한 방아쇠 인터럽트발생의유무를판단하는근거가됨. 트리거방법 n n Edge Trigger : 입력신호가변경되는순간을인터럽트트리거로사용하는경우 n n 하강에지 (Falling Edge) 트리거 : 1 에서 0 로변경되는시점을사용 상승에지 (Rising Edge) 트리거 : 0 에서 1 로변경되는시점을사용 n ATMega128 에서에지트리거는 50ns 이상의펄스폭을가져야한다. Level Trigger : 입력신호가일정시간동안원하는레벨을유지되면트리거하는경우 n 평상시 High(1) 로있다가 Low(0) 로변화되어일정시간유지되면트리거하게됨. n 레벨트리거인터럽트신호는워치독오실레이터에의해 2 번샘플링되며이기간이상의펄스폭을주어야한다.
15 ATMega128 인터럽트 EICRA(External Interrupt Control Register A) 외부인터럽트 0~3 의트리거설정에사용 ISC31 ISC30 ISC21 ISC20 ISC11 ISC10 ISC01 ISC00 ISCn1 ISCn0 설명 0 0 INT의 Low level에서인터럽트를발생한다. 0 1 예약 1 0 INT의하강에지에서인터럽트를발생한다. 1 1 INT의상승에지에서인터럽트를발생한다.
16 ATMega128 인터럽트트리거 EICRB(External Interrupt Control Register B) 외부인터럽트 4~7 의트리거설정에사용 ISC71 ISC70 ISC61 ISC60 ISC51 ISC50 ISC41 ISC40 ISCn1 ISCn0 설명 0 0 INTn1의 Low level에서인터럽트를발생한다. 0 1 INTn 핀에논리적인변화가발생할경우 1 0 INT의하강에지에서인터럽트를발생한다. 1 1 INT의상승에지에서인터럽트를발생한다.
17 ATMega128 인터럽트트리거 EICRB(External Interrupt Control Register B) 외부인터럽트 4~7 의트리거설정에사용 ISC71 ISC70 ISC61 ISC60 ISC51 ISC50 ISC41 ISC40 ISCn1 ISCn0 설명 0 0 INTn1의 Low level에서인터럽트를발생한다. 0 1 INTn 핀에논리적인변화가발생할경우 1 0 INT의하강에지에서인터럽트를발생한다. 1 1 INT의상승에지에서인터럽트를발생한다.
18 ATMega128 인터럽트동작 EIFR(Interrupt Flag Register) 외부인터럽트발생여부를알려주는레지스터 외부인터럽트가에지트리거에의해요청된경우허용여부에상관없이 1 로세트 INTF7 INTF6 INTF5 INTF4 INTF3 INTF2 INTF1 INTF0 비트 설명 INTF7~0 IntF7~0 Interrupt Flag
19 ATMega128 인터럽트 ATMega128 인터럽트프로그램 인터럽트프로그램의틀 #include <io.h> #include <interrupt.h> /* 인터럽트관련시스템헤더파일 */ SIGNAL(SIG_INTERRUPT0) /* Int0에대한 Interrupt Service Routine 선언 */ { /* 인터럽트가발생되었을때실행할명령어세트를선언 */ } int main(void) { DDRD = 0xFE; /* 인터럽트입력으로 D 포트를사용 */ EIMSK = 0x01; /* external interrupt 0 을 Enable*/ sei(); /* 전체인터럽트 Enable */ for (;;) { /* main loop 명령어세트 */ }
20 실습 5 : 인터럽트로 LED 점멸 실습개요 ATmega128 마이크로컨트롤러의인터럽트기능을이용하여 LED 를점멸시키는실습 일정시간마다 LED 가순차적으로켜지도록하고, 버튼스위치를누르면 LED 가멈추었다가다시누르면동작하도록한다. 버튼스위치가눌려지면인터럽트가발생하도록해야한다. 입력포트 1 개 ( 인터럽트가가능한포트 ), 출력포트 1 개사용 실습목표 인터럽트발생원리이해 인터럽트제어방법의습득 ( 관련레지스터이해 ) 입출력포트에관한이해 ( 특히인터럽트관련포트 )
21 실습 5 : 인터럽트로 LED 점멸 사용모듈 : MCU 모듈, LED 모듈, Switch 모듈 MCU 모듈포트 E MCU 모듈포트 D MCU 모듈 LED 모듈 LED 모듈 Signal Switch 모듈버튼스위치 Signal Switch 모듈
22 실습 5 : 인터럽트로 LED 점멸 모듈결선방법 MCU 모듈포트 E 의 PE0 ~PE7 을 LED 모듈의 LED 0 ~ 7 까지연결 MCU 모듈포트 D 의 PD0 를 2 핀케이블로 Switch 모듈의 BT0 에연결
23 실습 5 : 인터럽트로 LED 점멸 구동프로그램 : 사전지식 인터럽트를위한입력포트선택 n 포트 D의 0번비트는 Int0로서, 인터럽트로사용할수있는포트임. 외부인터럽트 Enable n 상태레지스터 (SREG) 의전체인터럽트허용비트 (I 비트 ) 를 1 로세팅 n Int0의인터럽트마스크레지스터의 0번비트를 1로세팅. 인터럽트트리거방법정의 n 상승에지에서트리거하도록 EICRA 레지스터를세팅. 전체인터럽트 Enable n sei(); Main 루틴기술 인터럽트서비스루틴의선언 n SIGNAL( 인터럽트소스명 ); 방식을사용
24 실습 5 : 인터럽트로 LED 점멸 구동프로그램 : 소스분석 Interrupt_led.c 1) 2) 3) #include<avr/io.h> #include<avr/interrupt.h> #include<util/delay.h> unsigned char Time_STOP = 0; SIGNAL(SIG_INTERRUPT0); /* 인터럽트서비스루틴선언 */ int main(){ unsigned char LED_Data = 0x01; DDRD = 0xFE; /* 포트 D의 0 번째레지스터를사용하여입력 (0xFE는 1~7비트까지의레지스터를의미 ) */ DDRE = 0xFF; /* 포트 E의 0~7번째까지의모든레지스터를출력으로사용 */
25 실습 5 : 인터럽트로 LED 점멸 4) 5) EICRA = 0x0F; EICRB = 0x00; EIMSK = 0x01; EIFR = 0x01; sei(); while(1){ /* 0~3비트까지 1 로두어인터럽트0에서상승에지를발생한다. (EICRA: Interrupt sense control 및 MCU의일반적인기능을설정하는데사용 ) */ /* 0비트가 1 로셋되고, SREG 레지스터의 I비트가 1 로설정되어있으면외부인터럽트는 enable된다. (EIMSK: INT0~INT7의개별인터럽트를설정 ) */ /* 0비트가 1 로셋되고, SREG 레지스터의 I비트와 EIMSK 레지스터의 INT7~INT0비트가 1 로설정되어있으면, MCU는해당하는인터럽트벡터로점프한다. (EIFR: EIMSK 레지스터에서설정한개별인터럽트의상태를나타냄 ) */
26 실습 5 : 인터럽트로 LED 점멸 6) 7) PORTE = LED_Data; /* 포트E를 LED_Data로두고, LED_Data를하나씩쉬프트시킨다. */ if(time_stop == 0) { if(led_data == 0x80) LED_Data = 0x01; else LED_Data <<= 1; } _delay_ms(100); } return 0; } SIGNAL(SIG_INTERRUPT0){ // Stop/Resume 처리 cli(); if(time_stop == 0) Time_STOP = 1; else Time_STOP = 0; sei(); } 인터럽트서비스루틴
27 실습 5 : 인터럽트로 LED 점멸 실행결과
28 실습 6 : 인터럽트를이용한스톱워치 실습개요 스위치모듈과 Array-FND 모듈에연결하여스톱워치를제작 일정시간마다클럭에의해 FND 에숫자와문자가디스플레이되도록하고, 스위치를누르면 FND 디스플레이가초기화되도록하며, 또한다른버튼을누르면잠시멈추었다가다시이어서동작을하도록한다. 포트 D 의 0 번비트와 1 번비트를 Int0 와 Int1 의인터럽트로사용 n Int0 에의해서스톱워치의 Stop/Resume 기능을구현. n Int1 을이용하여스톱워치의리셋기능을구현. 스톱워치의표시는 Array FND 를사용한다. 실습목표 인터럽트활용방법의습득 ( 관련레지스터이해 ) Array FND 동작원리이해
29 실습 6 : 인터럽트를이용한스톱워치 7-Segment FND Array 스톱워치등 7-segment FND 를여러개 Array 로묶어서사용 7-Segment 의출력은공통으로연결하고, 출력할위치를지정하는 c om1 ~ com4 의값을제어하여원하는숫자나문자를표시
30 실습 6 : 인터럽트를이용한스톱워치 7-Segment FND Array 구동원리 4 개의 7-Segment 에 1234 의숫자를표시하기위한방법 데이터 : Com 1~4 : 0111 데이터 : Com 1~4 : 1011 데이터 : Com 1~4 : 1110 데이터 : Com 1~4 : 1101 H G F E D C B A Com1 Com2 Com3 Com
31 실습 6 : 인터럽트를이용한스톱워치 사용모듈 : MCU 모듈, ArrayFND 모듈, Switch 모듈 MCU 모듈포트 G MCU 모듈포트 E MCU 모듈포트 D MCU 모듈 ArrayFND 모듈 ArrayFND 모듈 Signal Switch 모듈버튼스위치 Signal Switch 모듈
32 실습 6 : 인터럽트를이용한스톱워치 Array-FND 모듈의회로도
33 실습 6 : 인터럽트를이용한스톱워치 모듈결선방법 MCU 모듈포트 G 의 PG0~PG3 는 Array FND 모듈의 C0~C3 포트에연결 MCU 모듈포트 D 의 PD0 와 PD1 을 Switch 모듈의 BT0 및 BT1 에연결 MCU 모듈포트 E 의 PE0~PE7 를 Array FND 모듈의 A~H 까지연결.
34 실습 6 : 인터럽트를이용한스톱워치 구동프로그램 : 사전지식 인터럽트를이용하여스톱워치와비슷한기능을하도록만든것이다 FND Array 는 A~H 까지의각 7-Segment 의 LED 를켜기위한신호를사용 n n 위치선택신호 (C3~C0) 잔상효과를위해약간의시간지연이필요 C3~C0 는 MCU G 포트의 PG3~PG0 에연결되어있고, A~H 포트는 MC U E 포트의 PE7~PE0 연결 입출력포트 D 의 0 번비트는 Int0 로서, 1 번비트는 Int1 으로사용 스톱워치와유사하게기능을하도록만들어진것으로실제로정확한시간을잴수있는완전한스톱워치가아님 n n 매인함수의 While-Loop 를한바퀴돌아온시간을 10ms 으로간주 상대적인시간
35 실습 6 : 인터럽트를이용한스톱워치 구동프로그램 : 소스분석 Interrupt_stopwatch.c 1) #include<avr/io.h> #include<avr/interrupt.h> #include<util/delay.h> unsigned char time_10ms=0,time_100ms=0,time_1s=0,time_10s=0; char Time_STOP = 0; 2) SIGNAL(SIG_INTERRUPT0); SIGNAL(SIG_INTERRUPT1); int main(){ unsigned char FND_DATA_TBL[] = {0x3F, 0X06, 0X5B, 0X4F, 0X66, 0X6D, 0X7 C, 0X07, 0X7F, 0X67, 0X77, 0X7C, 0X39, 0X5E, 0X79, 0X71, 0X08, 0X80}; 3) DDRD = 0xFC; /* 포트 D 의 0,1 번째레지스터를사용하여입력 (0xFC 는 2~7 DDRG = 0x0F; DDRE = 0xFF; 비트까지의레지스터를의미 ) */ // 포트 G 의 0~3 번째까지의레지스터를출력으로사용 // 포트 E 의 0~7 번째까지의모든레지스터를출력으로사용
36 실습 6 : 인터럽트를이용한스톱워치 4) EICRA = 0x0F; /* 0~3비트까지 1 로두어인터럽트0과 1에서상승에지를발생한다. (EICRA: Interrupt sense control 및 MCU의일반적인기능을설정하는데사용 ) */ EICRB = 0x00; EIMSK = 0x03; /* 0~1비트까지 1 로셋되고, SREG 레지스터의 I 비트가 1 로설정되어있으면외부인터럽트는 enable된다. */ // (EIMSK: INT0~INT7의개별인터럽트를설정 ) EIFR = 0x03; /* 0~1비트까지 1 로셋되고, SREG 레지스터의 I비트와 EIMSK 레지스터의 INT7~INT0비트가 1 로설정되어 있으면, MCU는해당하는인터럽트벡터로점프한다. /* (EIFR: EIMSK 레지스터에서설정한개별인터럽트의 상태를나타냄 ) */ 5) sei(); while(1){
37 실습 6 : 인터럽트를이용한스톱워치 6) PORTG = 0x07; // C3을선택한다 PORTE = FND_DATA_TBL[time_10ms]; /* FND_DATA_TBL배열에서 time_10ms 만큼의 FND데이터 를출력한다. */ _delay_ms(2); // 잔상을남게하기위한딜레이 PORTG = 0x0B; //C2를선택 PORTE = FND_DATA_TBL[time_100ms]; _delay_ms(2); PORTG = 0x0D; //C1을선택 PORTE = FND_DATA_TBL[time_1s] 0x80; _delay_ms(3); PORTG = 0x0E; //C0을선택 PORTE = FND_DATA_TBL[time_10s]; _delay_ms(3); if(time_stop == 1) continue; // 인터럽트에의한 Stop/Resume 처리 /* 여기까기사용된딜레이함수가약 10ms이므로 time_10ms는 10ms마다증가된다. */
38 실습 6 : 인터럽트를이용한스톱워치 6) time_10ms++; if(time_10ms == 10){ time_10ms = 0; time_100ms++ ; } if(time_100ms == 10){ time_100ms = 0; time_1s++ ; } if(time_1s == 10){ time_1s = 0; time_10s++ ; } if(time_10s == 10){ time_10s = 0; } } return 0; }
39 실습 6 : 인터럽트를이용한스톱워치 7) SIGNAL(SIG_INTERRUPT0){ // Stop/Resume 처리 cli(); if(time_stop == 0) Time_STOP = 1; else Time_STOP = 0; sei(); } 인터럽트서비스루틴 0 : 스톱워치의 Stop/Resume 처리 8) SIGNAL(SIG_INTERRUPT1){ // 리셋 cli(); time_10ms = 0; time_100ms = 0; time_1s = 0; time_10s = 0; sei(); } 인터럽트서비스루틴 1 : 스톱워치의 Reset 처리
40 실습 6 : 인터럽트를이용한스톱워치 실행결과
슬라이드 1
마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***
More information인터럽트 (Interrupt) 범용입출력포트에서입출력의내용을처리하기위해매번입출력을요구하는플래그를검사하는일 (Pollong) 에대하여마이크로컨트롤러에게는상당한시간을소비하게만든다. 인터럽트란 CPU가현재처리하고있는일보다급하게처리해야할사건이발생했을때, 현재수행중인일을중단하고
CHAPTER 7 인터럽트 가. 레지스터구조이해하기 나. 엔코더제어하기 인터럽트 (Interrupt) 범용입출력포트에서입출력의내용을처리하기위해매번입출력을요구하는플래그를검사하는일 (Pollong) 에대하여마이크로컨트롤러에게는상당한시간을소비하게만든다. 인터럽트란 CPU가현재처리하고있는일보다급하게처리해야할사건이발생했을때, 현재수행중인일을중단하고급한일을처리한후에본래의일을다시수행하는것을말한다.
More informationATmega128
ATmega128 외부인터럽트실습 Prof. Jae Young Choi ( 최재영교수 ) (2015 Spring) Prof. Jae Young Choi 외부인터럽트실험 외부인터럽트를사용하기위해관렦레지스터를설정 일반적으로 I/O 포트에대한설정이끝난후에외부인터럽트나타이머 / 카운터설정 PE4~7 번까지 4 개의외부인터럽트 INT4~INT7 까지사용 외부인터럽트사용법요약
More information<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>
8주차중간고사 ( 인터럽트및 A/D 변환기문제및풀이 ) Next-Generation Networks Lab. 외부입력인터럽트예제 문제 1 포트 A 의 7-segment 에초시계를구현한다. Tact 스위치 SW3 을 CPU 보드의 PE4 에연결한다. 그리고, SW3 을누르면하강 에지에서초시계가 00 으로초기화된다. 동시에 Tact 스위치 SW4 를 CPU 보드의
More information인터럽트 * 인터럽트처리메커니즘 ATmega128 인터럽트 2
ATmega128 인터럽트 1 제 04 강 인터럽트 (Interrupt) 인터럽트개요외부인터럽트참고 ) FND 회로실습및과제 인터럽트 * 인터럽트처리메커니즘 ATmega128 인터럽트 2 인터럽트 ( 계속 ) ATmega128 인터럽트 3 * 인터럽트벡터 (P.104 표 7.1 참조 ) : 35 개 인터럽트 ( 계속 ) * 인터럽트허용 / 금지메커니즘 ATmega128
More information슬라이드 1
AVR(Atmega128) Interrupt 1 Interrupt Polling 사용자가명령어를사용하여입력핀의값을계속읽어서변화를알아냄 모든경우의입력또는값의변화에대응하여처리가가능 Interrupt MCU 자체가하드웨어적으로그변화를체크하여변화시에만일정한동작 하드웨어적으로지원되는몇개의입력또는값의변화에만대응처리가가능 처리속도는일반적인경우인터럽트가빠름 인터럽트발생시
More information<4D F736F F F696E74202D2037C0E55FC0CEC5CDB7B4C6AEC0C720B5BFC0DB2E707074>
7 장. 인터럽트의동작 한국산업기술대학교 이응혁교수 WWW.ROBOTICSLAB.CO.KR 1 7.1 인터럽트 (Interrupt) 개요 인터럽트개념 프로그램이수행되고있는동안에어떤조건이발생하여수행중인프로그램을일시적으로중지시키게만드는조건이나사건의발생 비동기적으로처리 다른프로그램이수행되는동안여러개의사건을처리할수있는메커니즘 인터럽트가발생하면마이크로컨트롤러는현재수행중인프로그램을일시중단하고,
More informationAVR Atmega128
AVR Atmega128 외부인터럽트 중원대학교최재영 인터럽트와폴링 MCU 에서입력을받아들이는방법은폴링방식과인터럽트방식이있음 - 폴링 (Polling) 방식 : 사용자의명령어에의해서하드웨어의변경사항을주기적으로읽어들이는방식 주기적으로하드웨어의변화를체크하기때문에사용자의프로그래밍에따라다양핚변화에대응이가능하지만 CPU 의점유율이높기때문에반응속도가느리다. 인터럽트 (Interrupt)
More informationHBE-MCU-Multi 로배우는 마이크로컨트롤러 (AVR 편 ) 마이크로컨트롤러기능 제 6 장타이머와카운터
HBE-MCU-Multi 로배우는 마이크로컨트롤러 (AVR 편 ) 마이크로컨트롤러기능 제 6 장타이머와카운터 타이머와카운터 1. 클럭과카운터 2. ATMega128 의타이머 / 카운터 3. 8 비트타이머 / 카운터의일반동작모드 4. 타이머로 LED 점멸시키기 5. 타이머로디지털시계만들기 타이머 / 카운터 타이머와카운터 정확한시간의측정이필요하다.( 자명종과스톱워치
More informationChapter. 14 DAC 를이용한 LED 밝기제어 HBE-MCU-Multi AVR Jaeheung, Lee
Chapter. 14 DAC 를이용한 LED 밝기제어 HBE-MCU-Multi AVR Jaeheung, Lee 목차 1. D/A 변환기 2. 병렬 D/A 변환기로 LED 밝기제어하기 3. 직렬 D/A 변환기로 LED 밝기제어하기 D/A 변환기 D/A 변환기 (Digital to Analog Converter) 디지털데이터를아날로그전압으로변환하는소자 A/D변환기와함께마이크로프로세서응용회로에서널리사용됨.
More information목차 1. 키패드 (KeyPAD) 2. KeyPAD 를이용한비밀번호입력기
Chapter. 13 KeyPAD 를이용한비밀번호입력기 HBE-MCU-Multi AVR Jaeheung, Lee 목차 1. 키패드 (KeyPAD) 2. KeyPAD 를이용한비밀번호입력기 키패드 (KeyPAD) 키패드 (KeyPAD) 마이크로컨트롤러활용에서사용자의입력을받아들이기위한장치 전화기, 컴퓨터, 핸드폰, 냉장고등거의모든가전제품에서사용 키패드인터페이스방식
More informationSection 03 인터럽트활성화와인터럽트서비스루틴연결 34/82 장치에대한인터럽트설정과활성화 내부장치에대한특수레지스터존재 장치의특성을반영한동작설정용또는상태관찰용비트로구성 인터럽트사건의발생패턴을설정해야함 인터럽트활성화비트를 1 로셋하여, 인터럽트발생을허락» 전제, 전역
Section 03 인터럽트활성화와인터럽트서비스루틴연결 33/82 Section 03 인터럽트활성화와인터럽트서비스루틴연결 34/82 장치에대한인터럽트설정과활성화 내부장치에대한특수레지스터존재 장치의특성을반영한동작설정용또는상태관찰용비트로구성 인터럽트사건의발생패턴을설정해야함 인터럽트활성화비트를 1 로셋하여, 인터럽트발생을허락» 전제, 전역인터럽트활성화비트가 1 로셋되었을때
More informationMicrosoft PowerPoint - 08-MP-4-interrupt
순천향대학교컴퓨터학부이상정 1 학습내용 인터럽트기본 ATmega128 인터럽트벡터외부인터럽트인터페이스외부인터럽트프로그램예 순천향대학교컴퓨터학부이상정 2 인터럽트기본 순천향대학교컴퓨터학부이상정 3 인터럽트개념 CPU 내부또는외부의요구에의해서정상적인프로그램의실행순서를변경하여보다시급한작업 ( 인터럽트서비스루틴 ) 을먼저수행한후에다시원래의프로그램으로복귀하는것 인터럽트는주변장치의서비스요청에
More information<BDC7C7E83520BFB9BAF1BAB8B0EDBCAD2E687770>
제목 : 실험 #5 예비보고서 Interrupt 제어 실험목적 - Interrupt에대한기초지식을알아본다. - Atmega128의 Interrupt를사용해보고, 동작방식과동작방법및특징을확인한다. 실험장비 - ATmega128(AVR Chip), Switch, LED(Green-LED) 실험이론 - 인터럽트 (Interrupt) 인터럽트는프로그램이수행되고있는동안에어떤조건이발생하여수행중인프로그램을일시적으로중지시키게만드는조건이나사건의발생을말한다.
More informationMicrosoft PowerPoint - 제3장 GPIO 입출력 제어 (HBE-MCU-Multi AVR)
한백전자기술연구소 HBE-MCU-Multi 로배우는 마이크로컨트롤러 (AVR편) 마이크로컨트롤러기능 제 3 장 GPIO 입출력제어 GPIO 입출력제어 1. HBE-MCU-Multi 구동 2. 마이크로컨트롤러와 GPIO 3. AVR 마이크로컨트롤러의입출력포트 4. GPIO 를이용하여 LED 켜기 5. GPIO를이용한스위치눌러 LED 불켜기 6. GPIO 를이용하여
More information<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>
뻔뻔한 AVR 프로그래밍 The 4 th Lecture 유명환 ( yoo@netplug.co.kr) 1 시간 (Time) 에대한정의 INDEX 2 왜타이머 (Timer) 와카운터 (Counter) 인가? 3 ATmega128 타이머 / 카운터동작구조 4 ATmega128 타이머 / 카운터관련레지스터 5 뻔뻔한노하우 : 레지스터비트설정방법 6 ATmega128
More information<4D F736F F F696E74202D2037C0E55FC0CCC0C0C7F55FBFCFBCBA205BC8A3C8AF20B8F0B5E55D>
7 장. 인터럽트의동작 한국산업기술대학교 이응혁 ehlee@kpu.ac.kr WWW.ROBOTICSLAB.CO.KR 1 7.1 인터럽트 (Interrupt) 개요 인터럽트개념 프로그램이수행되고있는동안에어떤조건이발생하여수행중인프로그램을일시적으로중지시키게만드는조건이나사건의발생 비동기적으로처리 다른프로그램이수행되는동안여러개의사건을처리할수있는메커니즘 인터럽트가발생하면마이크로컨트롤러는현재수행중인프로그램을일시중단하고,
More informationMicrosoft PowerPoint - es-arduino-lecture-03
임베디드시스템개론 : Arduino 활용 Lecture #3: Button Input & FND Control 2012. 3. 25 by 김영주 강의목차 디지털입력 Button switch 입력 Button Debounce 7-Segment FND : 직접제어 7-Segment FND : IC 제어 2 디지털입력 : Switch 입력 (1) 실습목표 아두이노디지털입력처리실습
More information<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >
10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절
More information<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>
7주차 AVR의 A/D 변환기제어레지스터및관련실습 Next-Generation Networks Lab. 3. 관련레지스터 표 9-4 레지스터 ADMUX ADCSRA ADCH ADCL 설명 ADC Multiplexer Selection Register ADC 의입력채널선택및기준전압선택외 ADC Control and Status Register A ADC 의동작을설정하거나동작상태를표시함
More informationPowerPoint 프레젠테이션
7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED Controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment
More information목차 1. A/D 컨버터개요 2. ATMega128 의 A/D 컨버터기능 3. A/D 컨버터로광센서읽기
Chapter. 9 A/D 컨버터 HBE-MCU-Multi AVR Jaeheug, Lee 목차 1. A/D 컨버터개요 2. ATMega128 의 A/D 컨버터기능 3. A/D 컨버터로광센서읽기 A/D 컨버터개요 A/D 컨버터 (Aalog-to-Digital Coverter) 아날로그신호를컴퓨터가읽을수있는병렬또는직렬의디지털데이터로변환하여주는장치 측정하려는아날로그물리량의범위및시스템의응용목적에따라분해능이나정밀도가적합한것을사용.
More informationPowerPoint 프레젠테이션
7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment
More informationUART.h #ifndef _UART_H_ #define _UART_H_ #define DIR_TXD #define DIR_RXD sbi(portd,4) cbi(portd,4) #define CPU_CLOCK_HZ UL UART PORT1 void UAR
IMC-V0.1 예제소스파일 1. UART 소스코드 (page 1-3) 2. Encoder 소스코드 (page 4-7) 3. ADC 소스코드 (page 8-10) UART.h #ifndef _UART_H_ #define _UART_H_ #define DIR_TXD #define DIR_RXD sbi(portd,4) cbi(portd,4) #define CPU_CLOCK_HZ
More information정보보안 개론과 실습:네트워크
` 마이크로프로세서설계및실습 12-13 주차강의자료 학습목표 A/D 변환기의제어방법을이해한다 능숙하게 A/D 변환기를제어할수있도록반복실습한다 2/28 아날로그 - 디지털변환회로 아날로그 - 디지털변환회로 (A/D 변환회로 ) 는, 아날로그전기신호를디지털전기신호로변환하는전자회로이다 A/D 컨버터 (ADC: Analog-to-digital converter) 라고도불린다
More informationPowerPoint 프레젠테이션
7-SEGMENT DEVICE CONTROL - DEVICE DRIVER Jo, Heeseung 디바이스드라이버구현 : 7-SEGMENT HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 디바이스드라이버구현 : 7-SEGMENT 6-Digit 7-Segment LED
More information<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>
뻔뻔한 AVR 프로그래밍 The Last(8 th ) Lecture 유명환 ( yoo@netplug.co.kr) INDEX 1 I 2 C 통신이야기 2 ATmega128 TWI(I 2 C) 구조분석 4 ATmega128 TWI(I 2 C) 실습 : AT24C16 1 I 2 C 통신이야기 I 2 C Inter IC Bus 어떤 IC들간에도공통적으로통할수있는 ex)
More information< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>
Chap #2 펌웨어작성을위한 C 언어 I http://www.smartdisplay.co.kr 강의계획 Chap1. 강의계획및디지털논리이론 Chap2. 펌웨어작성을위한 C 언어 I Chap3. 펌웨어작성을위한 C 언어 II Chap4. AT89S52 메모리구조 Chap5. SD-52 보드구성과코드메모리프로그래밍방법 Chap6. 어드레스디코딩 ( 매핑 ) 과어셈블리어코딩방법
More information2009년2학기 임베디드시스템 응용
임베디드시스템기초 (#514115 ) #2. GPIO & Matrix Keypad 한림대학교전자공학과이선우 Short Review #1 General Purpose Input Output (GPIO) Output port Input port Switch 사용방법 2 General Purpose Input Output(GPIO) port 모든 MCU의가장기본적이고중요한주변장치
More information(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -
(Asynchronous Mode) - - - ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - UART (Univ ers al As y nchronous Receiver / T rans mitter) 8250A 8250A { COM1(3F8H). - Line Control Register
More information가. 도트매트릭스제어하기 단일 LED와는다르게도트매트릭스를구동시는구동전류가프로세서에서출력되는전류보다사용량을더많이필요하기때문에 TTL 계열의 IC로구동시키기에는무리가따른다. 이러한문제를해결하기위해서사용전압, 전류정격이높은달링턴트랜지스터가어레이형태로들어있는 ULN2803을
CHAPTER 5 도트매트릭스제어하기 가. 도트매트릭스제어하기 가. 도트매트릭스제어하기 단일 LED와는다르게도트매트릭스를구동시는구동전류가프로세서에서출력되는전류보다사용량을더많이필요하기때문에 TTL 계열의 IC로구동시키기에는무리가따른다. 이러한문제를해결하기위해서사용전압, 전류정격이높은달링턴트랜지스터가어레이형태로들어있는 ULN2803을이용한다. 이 IC에는 8개의
More information슬라이드 1
-Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역
More information<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202831C1D6C2F72C2032C1D6C2F729>
1주차 ATmega128의구조와메모리 Next-Generation Networks Lab. 1. ATmega128의특징 고성능, 저전력의 8 비트마이크로컨트롤러 진보된 RISC 구조 대부분단일클럭에서실행되는강력한 133개의명령어구조 16MHz에서거의 16MIPS로동작 32개의 8 bit 범용작업레지스터와추가된주변장치제어레지스터 2 사이클내에서수행되는강력한곱셈기내장
More informationPowerPoint 프레젠테이션
KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된
More information[8051] 강의자료.PDF
CY AC F0 RS1 RS0 OV - P 0xFF 0x80 0x7F 0x30 0x2F 0x20 0x1F 0x18 0x17 0x10 0x0F 0x08 0x07 0x00 0x0000 0x0FFF 0x1000 0xFFFF 0x0000 0xFFFF RAM SFR SMOD - - - GF1 GF0 PD IDL 31 19 18 9 12 13 14 15 1 2 3 4
More information2주차: 입출력 제어 복습
마이크로프로세서 응용및실습 ` 13-14 주차 : 직렬통신 (2) 한철수 전자공학과 2/35 직렬통신과병렬통신 직렬통신 한가닥의선으로송수신할데이터를차례대로전송하는방식 장점 : 통신선로가적기때문에경제적임 단점 : 전송속도가느림. 송수신약속이복잡해짐 병렬통신 여러가닥의선으로동시에여러개의데이터를전송하는방식 장점 : 전송속도가빠름 단점 : 직렬통신보다비쌈 3/35
More informationChapter ...
Chapter 4 프로세서 (4.9절, 4.12절, 4.13절) Contents 4.1 소개 4.2 논리 설계 기초 4.3 데이터패스 설계 4.4 단순한 구현 방법 4.5 파이프라이닝 개요*** 4.6 파이프라이닝 데이터패스 및 제어*** 4.7 데이터 해저드: 포워딩 vs. 스톨링*** 4.8 제어 해저드*** 4.9 예외 처리*** 4.10 명령어 수준
More information<4D F736F F D20BDBAC5D7C7CE20B6F3C0CEC6AEB7B9C0CCBCADB0ADC1C2202D203420C7C1B7CEB1D7B7A1B9D62E646F63>
라인트레이서강좌 4. 프로그래밍 2005년 8월 1일류대우 (davidryu@newtc.co.kr) 1. 라인트레이서란? 라인트레이서는정해진주행선을따라움직이는자율이동로봇이다. 현재공장자동화부분에서이용되고있는무인반송차가라인트레이서이다. 라인트레이서의기본적인원리는주어진주행선을센서로검출하여이것에따라목적위치까지이동하는것이다. 라인트레이서는크게 3부분 - 컨트롤러부,
More informationlecture4(6.범용IO).hwp
제 2 부 C-언어를 사용한 마이크로컨트롤러 활용기초 66 C-언어는 수학계산을 위해 개발된 FORTRAN 같은 고급언어들과는 달 리 Unix 운영체제를 개발하면서 같이 개발된 고급언어이다. 운영체제의 특성상 C-언어는 다른 고급언어에 비해 컴퓨터의 하드웨어를 직접 제어할 수 있는 능력이 탁월하여 마이크로프로세서의 프로그램에 있어서 어셈블 리와 더불어 가장
More informationMicrosoft PowerPoint - chap02-C프로그램시작하기.pptx
#include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의
More information<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202831C1D6C2F72C2032C1D6C2F729>
2주차 ATmega128의내부구조및퓨즈비트설정 Next-Generation Networks Lab. 4. ATmega128의클럭시스템과배분 시스템클럭 마이크로컨트롤러동작의기준이되는클럭의주파수 AVR은시스템클럭을내부모듈별로독립적으로배분하여제어 슬립 (Sleep) 모드를활용하여내부모듈별로클럭차단이가능하여전력소모관리 퓨즈비트를통해다양한클럭소스선택가능 클럭배분 (
More information목차 1. UART와 RS232 개요 2. ATMega128의 USART 포트 3. UART로 Hello 보내기 4. UART로 PC와데이터주고받기
Chapter. 8 UART HBE-MCU-Multi AVR Jaeheug, Lee 목차 1. UART와 RS232 개요 2. ATMega128의 USART 포트 3. UART로 Hello 보내기 4. UART로 PC와데이터주고받기 UART 와 RS232 개요 UART(Uiversal Asychroous Receiver/Trasmitter) 시리얼기반의통신방식으로일반적으로
More information목차 1. ATMega128의외부메모리인터페이스 2. TEXT LCD 3. TEXT LCD에글자쓰기 4. SRAM 5. 외부메모리인터페이스에 SRAM붙이기
Chapter. 10 외부메모리인터페이스 HBE-MCU-Multi AVR Jaeheung, Lee 목차 1. ATMega128의외부메모리인터페이스 2. TEXT LCD 3. TEXT LCD에글자쓰기 4. SRAM 5. 외부메모리인터페이스에 SRAM붙이기 ATMega128 의외부메모리인터페이스 ATMega128 의외부메모리인터페이스 칩외부에더큰용량의메모리나별도의주변장치들을연결하기위한인터페이스
More informationMicrosoft Word - PLC제어응용-2차시.doc
과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,
More informationMicrosoft PowerPoint - ccs33_bios_com1_semaphore.ppt [호환 모드]
1. CCS3.3 DSP/BIOS semaphore 를이용한 COM1 시리얼통신 기존의예제프로그램을바탕으로실제현장에적용가능한 BIOS 프로그램을시작하겠습니다. 이장에서사용할 H/W 는 F28335 내부에있는 UART0 포트를사용해 PC 와 RS-232 통신을 프로세서간동기를맞추는데사용하는 semaphore 를사용해작성해보겠습니다. -Semaphore 란 C
More information<BDC7C7E83120B0E1B0FABAB8B0EDBCAD202832C1D6C2F7292E687770>
제목 : 실험 #1 결과보고서 GPIO LED 제어 실험일 : 2013. 03. 12. (2 주차 ) 실험내용 - 예비과제 : ATmega126의 8개의핀에연결되어있는 LED 점멸하는프로그램 - 실험과제 : ATmega126의 8개의 LED를순차적으로켜고끄는프로그램 실험결과 - 예비과제 - 해결방법 : 점멸되는시간 (Delay) 를구현하기위해임의의변수 i를적당한지연시간이생길정도의크기만큼증가시킨후,
More informationKEY 디바이스 드라이버
KEY 디바이스드라이버 임베디드시스템소프트웨어 I (http://et.smu.ac.kr et.smu.ac.kr) 차례 GPIO 및 Control Registers KEY 하드웨어구성 KEY Driver 프로그램 key-driver.c 시험응용프로그램 key-app.c KEY 디바이스드라이버 11-2 GPIO(General-Purpose Purpose I/O)
More informationPowerPoint 프레젠테이션
Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi
More informationMicrosoft PowerPoint - 제7장 타이머와 PWM (HBE-MCU-Multi AVR).ppt [호환 모드]
Chapter. 7 타이머와 PWM HBE-MCU-Multi AVR Jaeheug, Lee 목차 1. PWM(Pulse Width Modulatio) 2. 8비트타이머 / 카운터의동작모드 3. 16비트타이머 / 카운터 4. PWM으로 LED 밝기조절하기 5. 타이머로버저울리기 PWM(Pulse Width Modulatio) 펄스 (Pulse) 와펄스폭 (Pulse
More information// 변수선언 unsigned char i; unsigned char FONT[]={0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xD8, 0x80, 0x98}; //PORTA 를출력으로설정하고초기값은모두 0 PORTA = 0x00; DD
Code Vison AVR C ATmega8535 ATmega8535 제어실습 Chapter 1 I / O 포트제어하기 FND 제어 FND에는 Vcc를이용하는애노드 (anode) 형과 Gnd를이용하는 cathode형이있다. LED가여러개모여있다생각하고 LED선택에따라문자와숫자를만들어낼수있다. 최대한많은영문자를만들기위해대문자와소문자를혼합한다. ( 표현가능한문자
More informationÀ̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp
l Y ( X g, Y g ) r v L v v R L θ X ( X c, Yc) W (a) (b) DC 12V 9A Battery 전원부 DC-DC Converter +12V, -12V DC-DC Converter 5V DC-AC Inverter AC 220V DC-DC Converter 3.3V Motor Driver 80196kc,PWM Main
More informationMicrosoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt
변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short
More information학습목차 2.1 다차원배열이란 차원배열의주소와값의참조
- Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]
More informationChapter #01 Subject
Device Driver March 24, 2004 Kim, ki-hyeon 목차 1. 인터럽트처리복습 1. 인터럽트복습 입력검출방법 인터럽트방식, 폴링 (polling) 방식 인터럽트서비스등록함수 ( 커널에등록 ) int request_irq(unsigned int irq, void(*handler)(int,void*,struct pt_regs*), unsigned
More information정보보안 개론과 실습:네트워크
` 마이크로프로세서설계및실습 2 주차강의자료 2/31 Contents 학습목표 다양한 AVR 패밀리와소자특징을알아보고, 제어환경에따라 AVR 소자를선택하여개발할수있는융통성을이해할수있다. ATmega128 내부구조에서특수레지스터, 범용레지스터의역할을이해할수있다. ATmega128 내부에포함된명령어인출과실행절차를알아보고, 명령어유형을통해동작을이해할수있다. 내용
More informationMicrosoft PowerPoint - chap03-변수와데이터형.pptx
#include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num %d\n", num); return 0; } 1 학습목표 의 개념에 대해 알아본다.
More informationSection 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스» 컬렉터와베이스가역방향으로바이어스 차단 만일 I B 가 0[A] 이면컬렉터전류
Section 03 트랜지스터를이용한스위칭동작 15/45 스위치 ON/OFF 의전기적특성 트랜지스터와기계적인스위치를이용한 LED ON/OFF 동작비교 LED 를켜기위한회로 ([ 그림 5-6]) Section 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스»
More information2. GCC Assembler와 AVR Assembler의차이 A. GCC Assembler 를사용하는경우 i. Assembly Language Program은.S Extension 을갖는다. ii. C Language Program은.c Extension 을갖는다.
C 언어와 Assembly Language 을사용한 Programming 20011.9 경희대학교조원경 1. AVR Studio 에서사용하는 Assembler AVR Studio에서는 GCC Assembler와 AVR Assmbler를사용한다. A. GCC Assembler : GCC를사용하는경우 (WinAVR 등을사용하는경우 ) 사용할수있다. New Project
More informationMicrosoft PowerPoint - polling.pptx
지현석 (binish@home.cnu.ac.kr) http://binish.or.kr Index 이슈화된키보드해킹 최근키보드해킹이슈의배경지식 Interrupt VS polling What is polling? Polling pseudo code Polling 을이용한키로거분석 방어기법연구 이슈화된키보드해킹 키보드해킹은연일상한가! 주식, 펀드투자의시기?! 최근키보드해킹이슈의배경지식
More informationK&R2 Reference Manual 번역본
typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct
More informationPoison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3
Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Example 3.1 Files 3.2 Source code 3.3 Exploit flow
More informationMicrosoft Word - PIC16x_Section20_Comparator_31020a.doc
Section 20. 비교기 (Comparator) 하이라이트 (HIGHLIGHTS) 메뉴얼의이번섹션은다음의주요주제를다룹니다 : 20.1 소개... 20-2 20.2 제어 (Control) 레지스터. 20-3 20.3 비교기설정... 20-4 20.4 비교기운영... 20-6 20.5 비교기레퍼런스... 20-6 20.6 비교기응답시간... 20-8 20.7
More informationPowerPoint 프레젠테이션
Text-LCD Device Control - Device driver Jo, Heeseung M3 모듈에장착되어있는 Tedxt LCD 장치를제어하는 App 을개발 TextLCD 는영문자와숫자일본어, 특수문자를표현하는데사용되는디바이스 HBE-SM5-S4210 의 TextLCD 는 16 문자 *2 라인을 Display 할수있으며, 이 TextLCD 를제어하기위하여
More information<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>
뻔뻔한 AVR 프로그래밍 The 6 th Lecture 유명환 ( yoo@netplug.co.kr) 1 2 통신 관련이야기 시리얼통신 관련이야기 INDEX 3 ATmega128 시리얼통신회로도분석 4 ATmega128 시리얼통신컨트롤러 (USART) 분석 5 ATmega128 시리얼통신관련레지스터분석 6 ATmega128 시리얼통신실습 1 통신 관련이야기 동기
More informationSRC PLUS 제어기 MANUAL
,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO
More information2009년2학기 임베디드시스템 응용
마이크로컨트롤러기초 (#514112 ) #.7 Basic Timer1 기초 핚림대학교젂자공학과이선우 Contents Digital Counter Basics MSP430x4xx Timers Overview Basic Timer 1 Example program Digital Counter & Timer Counter Basics Digital counter (
More information2009년2학기 임베디드시스템 응용
임베디드시스템기초 (#514115 ) #5. Timer A 한림대학교전자공학과이선우 MSP430x4xx 타이머종류 MSP430x4xx series 는다음과같은 3 종의타이머내장 Basic Timer1 Two independent, cascadable 8-bit timers Selectable clock source Interrupt capability LCD
More informationMicrosoft PowerPoint - hw8.ppt [호환 모드]
8.1 데이터경로와제어장치 Chapter 8 데이터경로와제어장치 많은순차회로의설계는다음의두부분으로구성 datapath: data의이동및연산을위한장치 control unit에상태신호제공 control ol unit: datapath th 에서적절한순서로 data 이동및연산을수행할수있도록제어신호제공. 먼저, datapath를설계 다음에, control unit
More information<4D F736F F D20C0DBC7B0C6ED5FBDBAC5D7C7CE20B6F3C0CEC6AEB7B9C0CCBCAD20B0B3B9DF2E646F63>
테핑라인트레이서개발하기 류대우 (davidryu@newtc.co.kr) 1. 센서보드 적외선센서 1. 적외선센서 (Photo Sensor) 라인트레이서나마이크로마우혹은다른마이크로로봇에서센서로사용하는것중가장많이사용하는것이 photo sensor입니다. 거리의측정에도사용되지만원거리는잘사용하지않고근거리를측정하고자할때사용되기도하며물체의유 / 무등많은곳에서사용되고있습니다.
More informationMicrosoft PowerPoint - Chapter 8_USART Serial Communication
MEC382 마이크로프로세서응용및실습 USART Serial Communication Jee-Hwan Ryu School of Mechanical Engineering 통신방법 병렬통신 고속데이터전송이필요한곳에서이루어짐 여러개의라인에서동시에이루어짐 직렬통신 한라인에서이루어짐 데이터의송수신속도가느리다 라인수적고멀리까지통신 동기식, 비동기식있음 동기식 : 기준클럭인동기클럭라인과데이터송
More informationMicrosoft Word doc
2. 디바이스드라이버 [ DIO ] 2.1. 개요 타겟보드의데이터버스를이용하여 LED 및스위치동작을제어하는방법을설명하겠다. 2.2. 회로도 2.3. 준비조건 ARM 용크로스컴파일러가설치되어있어야한다. 하드웨어적인점검을하여정상적인동작을한다고가정한다. NFS(Network File System) 를사용할경우에는 NFS가마운트되어있어야한다. 여기서는소스전문을포함하지않았다.
More information2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지
PX-8000 SYSTEM 8 x 8 Audio Matrix with Local Control 2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지역에
More informationWATAVR128_manual.hwp
WAT-AVR128 (ATMEGA128 Module) HOMEPAGE: E-MAIL: whiteat@whiteat.com TEL: 070-4412 - 5754 1 부 - ATMEGA128A 1. ATMEGA128A 2 1.1 특징 2 1.2 블록도 3 1.3 핀정의 4 1.4 상태레지스터 (SREG) 6 1.5 범용레지스터 7 1.6 스택포인터 (Stack
More informationBMP 파일 처리
BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)
More informationMicrosoft Word - DTM-M300_Spec_V1_0.doc
Page 1 of 10 Digital Thermopile Module 적외선온도센서모듈 Version 1.0 (-35~300 ) History Version Document name Date Purpose Author 1.0 DTM-M300_Spec_V1_0.doc 13.09.2010 Creation DS Jeong Page 2 of 10 1 제품설명 1.1
More informationuntitled
int i = 10; char c = 69; float f = 12.3; int i = 10; char c = 69; float f = 12.3; printf("i : %u\n", &i); // i printf("c : %u\n", &c); // c printf("f : %u\n", &f); // f return 0; i : 1245024 c : 1245015
More information비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2
비트연산자 1 1 비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 진수법! 2, 10, 16, 8! 2 : 0~1 ( )! 10 : 0~9 ( )! 16 : 0~9, 9 a, b,
More information온라인 IT 교육최강 ( 강의정보처리필기강사조대호 차시명 [CA-06 강 ] 프로세서와명령어차시 6 차시 학습내용 프로세서와명령어 학습목표 컴퓨터의구조와프로세서에대해이해할수있다 컴퓨터의명령어에대해이해할수있다 학습내용 1. 컴퓨터의구성 - 1
강의정보처리필기강사조대호 차시명 [CA-06 강 ] 프로세서와명령어차시 6 차시 학습내용 프로세서와명령어 학습목표 컴퓨터의구조와프로세서에대해이해할수있다 컴퓨터의명령어에대해이해할수있다 학습내용 1. 컴퓨터의구성 - 1 - 2. 중앙처리장치 (Central Processing Unit) 주기억장치에기억된명령을꺼내서해독하고, 시스템전체에지시신호를내는장치명령코드가명령을수행할수있게필요한제어기능을제공제어장치의구성
More informationC & System
1-1 마이크로컨트롤러 (MCU) MCU = CPU Core(Architecture) + Peripherals(Controllers) 1 1-2 마이크로컨트롤러동작구조 1-3 AVR ATmega128 특징 뛰어난성능 (Advanced RISC Architecture) Most Single Clock Cycle Execution 32 X 8bit General
More information1. 제품소개 1.1 제품소개 < 그림 1.1> 도트매트릭스모듈 하드웨어제작에소요되는시간을단축시켜프로그래밍연구개발및학습효과를극대화시켜주는 16x16 도트매트릭스모듈입니다. 또한당사 AVR, PIC, ARM(STM32F) 개발보드와 1P 점퍼클립케이블을이용하여연동이가능하
16X16 도트매트릭스확장모듈 (P/N: LK-DOTM16) 이경남 L K 임베디드 2013 LK EMBEDDED version 3.0 페이지 1 1. 제품소개 1.1 제품소개 < 그림 1.1> 도트매트릭스모듈 하드웨어제작에소요되는시간을단축시켜프로그래밍연구개발및학습효과를극대화시켜주는 16x16 도트매트릭스모듈입니다. 또한당사 AVR, PIC, ARM(STM32F)
More information<C6F7C6AEB6F5B1B3C0E72E687770>
1-1. 포트란 언어의 역사 1 1-2. 포트란 언어의 실행 단계 1 1-3. 문제해결의 순서 2 1-4. Overview of Fortran 2 1-5. Use of Columns in Fortran 3 1-6. INTEGER, REAL, and CHARACTER Data Types 4 1-7. Arithmetic Expressions 4 1-8. 포트란에서의
More informationMicrosoft PowerPoint os2.ppt [호환 모드]
2 장컴퓨터시스템구조 (Computer-System Structures) 컴퓨터시스템연산 (Computer System Operation) 입출력구조 (I/O Structure) 저장장치구조 (Storage Structure) 저장장치계층 (Storage Hierarchy) 하드웨어보호 (Hardware Protection) 일반적인시스템구조 (General
More informationAVR-GCC SRAM 에서의변수및상수특별히속성을정하지않고변수를정의하면 SRAM 영역에저장된다. 이것들은외부메모리에저장되는경우에비하여빠르게엑세스할수있다. 축약표현은 <stdio.h> 에정의되어있다. 그러나, <io.h> 를인클루드하면내부적으로 <stdio.h> 파일을자
AVR-GCC SRAM 에서의변수및상수특별히속성을정하지않고변수를정의하면 SRAM 영역에저장된다. 이것들은외부메모리에저장되는경우에비하여빠르게엑세스할수있다. 축약표현은 에정의되어있다. 그러나, 를인클루드하면내부적으로 파일을자동인클루드하도록연결되어있다. - AVR-GCC 에서데이터의형및이름축약하여표현방법 일반적인데이터형의표현
More information3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터
- Part2-3 3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터 3.1 포인터란 ü ü ü. ü. ü. ü ( ) ? 3.1 ü. ü C ( ).? ü ü PART2-4 ü ( ) PART3-4 3.2 포인터변수의선언과사용 3.2 포인터 변수의 선언과 사용 (1/8) 포인터 변수의
More informationMicrosoft Word - 1. ARM Assembly 실습_xp2.doc
ARM asm 의구조 ARM Assembly 실습 1. 기본골격 AREA armex,code, READONLY ;Mark first instruction to execute start MOV r0, #10 MOV r1,#3 ADD r0, r0, r1 ; r0 = r0 + r1 stop NOP NOP B stop ; Mark end of file 위의 asm의구조를이해하고실행해보세요.
More informationMicrosoft PowerPoint - chap10-함수의활용.pptx
#include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 중 값에 의한 전달 방법과
More information<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>
SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......
More information<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>
연습문제해답 5 4 3 2 1 0 함수의반환값 =15 5 4 3 2 1 0 함수의반환값 =95 10 7 4 1-2 함수의반환값 =3 1 2 3 4 5 연습문제해답 1. C 언어에서의배열에대하여다음중맞는것은? (1) 3차원이상의배열은불가능하다. (2) 배열의이름은포인터와같은역할을한다. (3) 배열의인덱스는 1에서부터시작한다. (4) 선언한다음, 실행도중에배열의크기를변경하는것이가능하다.
More information마이크로프로세서 개요
1 주 개요 메카트로닉스공학부 조철우 8051 Pin Layout 8051 3 Atmel 89C2051 4 강의의개요 컴퓨터및의기원과동작원리를학습 마이크로컨트롤러를배우기위한기초원리 마이크로컨트롤러를활용하기위한도구사용법 마이크로컨트롤러를활용하기위한기초시스템설계및프로그래밍 History of Computer 컴퓨터의역사. 최초의컴퓨터 - 1946년 ENIAC,
More informationMicrosoft PowerPoint - ch07 - 포인터 pm0415
2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자
More information<BDC7C7E83220B0E1B0FABAB8B0EDBCAD202833C1D6C2F7292E687770>
제목 : 실험 #2 결과보고서 외부 LED & Dip 스위치제어 실험일 : 2013. 03. 19. (3 주차 ) 실험내용 - 예비과제 : 메모리맵드 IO를통해 Dip 스위치의값을읽고, On 상태의스위치가하나이상있다면외부 LED를점멸하는프로그램 - 실험과제 : 메모리맵드 IO를통해 Dip 스위치의값을읽고, Dip 스위치의조작을통한사칙연산결과를 LED를통해출력하는프로그램.
More information[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi
2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,
More informationPowerPoint 프레젠테이션
System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소
More information11장 포인터
누구나즐기는 C 언어콘서트 제 9 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 메모리의구조 변수는메모리에저장된다. 메모리는바이트단위로액세스된다. 첫번째바이트의주소는 0, 두번째바이트는 1, 변수와메모리
More informationMicrosoft PowerPoint - [2009] 02.pptx
원시데이터유형과연산 원시데이터유형과연산 원시데이터유형과연산 숫자데이터유형 - 숫자데이터유형 원시데이터유형과연산 표준입출력함수 - printf 문 가장기본적인출력함수. (stdio.h) 문법 ) printf( Test printf. a = %d \n, a); printf( %d, %f, %c \n, a, b, c); #include #include
More informationMicrosoft PowerPoint - M07_RTL.ppt [호환 모드]
제 7 장레지스터이동과데이터처리장치 - 디지털시스템의구성 data path 모듈 : 데이터처리, 레지스터, 연산기, MUX, control unit 모듈 : 제어신호발생, 연산의순서지정 - register transfer operation : reg 데이터이동 / 처리 reg set,operation, sequence control - micro-operation
More informationAVR ATmega128 소개 마이크로컨트롤러 AVR ATmega128 저자 : 이상설 소속 : 원광대학교전기 정보통신공학부
AVR ATmega128 소개 마이크로컨트롤러 AVR ATmega128 저자 : 이상설 (slee@wku.ac.kr) 소속 : 원광대학교전기 정보통신공학부 학습목표 2/39 다양한 AVR 패밀리와소자특징을알아보고, 제어환경에따라 AVR 소자를선택하여개발할수있는융통성을이해할수있다. ATmega128 내부구조에서메모리공간, I/O 공간의프로그램과데이터를처리하기위한특수레지스터,
More informationPowerPoint 프레젠테이션
Kut-128_comm_board Kit 설명서 KUT-128_Com 실험키트 KUT-128_Com 실험키트의기능 (1) 초음파센서 4CH 7- Segment 가속도센서 자이로센서 RS-232 Wi-Fi Bluetooth Tex-LCD ATmega128 8EA LED ISP Connector 3Color Dotmatrix 1Color Dotmatrix 4EA
More information02장.배열과 클래스
---------------- DATA STRUCTURES USING C ---------------- CHAPTER 배열과구조체 1/20 많은자료의처리? 배열 (array), 구조체 (struct) 성적처리프로그램에서 45 명의성적을저장하는방법 주소록프로그램에서친구들의다양한정보 ( 이름, 전화번호, 주소, 이메일등 ) 를통합하여저장하는방법 홍길동 이름 :
More informationMicrosoft PowerPoint - 03_(C_Programming)_(Korean)_Pointers
C Programming 포인터 (Pointers) Seo, Doo-Ok Clickseo.com clickseo@gmail.com 목 차 포인터의이해 다양한포인터 2 포인터의이해 포인터의이해 포인터변수선언및초기화 포인터연산 다양한포인터 3 주소연산자 ( & ) 포인터의이해 (1/4) 변수와배열원소에만적용한다. 산술식이나상수에는주소연산자를사용할수없다. 레지스터변수또한주소연산자를사용할수없다.
More information