170 likes | 285 Views
제 1 장 . 마이크로프로세서의 기본동작. 1.1 마이크로프로세서란 ? (1). 제어용 소형 컴퓨터 일반적인 컴퓨터의 문제 ( 크기 , 전원 ) 로 인해 사용이 어려운 부분에 사용 ※ 마이크로칩 : 실리콘과 같은 재료를 이용하여 아주 작은 크기로 만들어진 패키지형 컴퓨터 회로. 1.1 마이크로프로세서란 ? (2). 마이크로프로세서와 Desktop PC 의 비교. 1.2 레지스터 (Register) 란 ?. 마이컴의 제어에 꼭 필요한 사항
E N D
제 1 장 마이크로프로세서의 기본동작
1.1 마이크로프로세서란? (1) • 제어용 소형 컴퓨터 • 일반적인 컴퓨터의 문제(크기,전원)로 인해 사용이 어려운 부분에 사용 ※마이크로칩 : 실리콘과 같은 재료를 이용하여 아주 작은 크기로 만들어진 패키지형 컴퓨터 회로 제 1장 마이크로프로세서의 기초와 기본동작
1.1 마이크로프로세서란? (2) 마이크로프로세서와 Desktop PC의 비교 제 1장 마이크로프로세서의 기초와 기본동작
1.2 레지스터(Register)란? • 마이컴의 제어에 꼭 필요한 사항 • 마이컴에 원하는 기능이나 동작을 주문하기 위해 데이터를 기록하는 램을 레지스터라 한다. • [활용예] MOV P0,#00H ; 포트0로“00000000”을 출력하라 MOV SP,#7FH ; 스택포인터를 #7FH로 설정하라 제 1장 마이크로프로세서의 기초와 기본동작
1.3 메모리(Memory)란? (1) • 마이컴의 동작 시 사용하는 임의 데이터 보관 및 일시 저장 장소를 메모리라 한다 • 모든 메모리는 각각의 주소(ADDRESS)가 존재한다.(8031의 경우 내부메모리는 00H~7FH 이다) • 각 주소에 해당하는 공간에는 1바이트 (8비트단위)의 정보를 저장한다. 제 1장 마이크로프로세서의 기초와 기본동작
1.3 메모리란? (2) • [메모리의 분류] ROM(읽을 수만 있는 메모리) PROM : 한번만 프로그램가능(재사용 불가) EPROM : 자외선으로 지우고 재사용 EEPROM : 전기적으로 지우고 재사용 FLASH : 대용량 재사용 메모리(PDA,핸드폰) RAM(읽기,쓰기가 가능한 메모리) D-RAM : DYNAMIC RAM(PC에 사용) S-RAM : STATIC RAM 제 1장 마이크로프로세서의 기초와 기본동작
1.3 메모리란? (3) • 메모리의 이름과 유형 27C256 - 27은 EPROM, CMOS TYPE, 256은 256 Kbit (32 Kbyte) 27C512 - 27은 EPROM, CMOS TYPE, 512는 512 Kbit (64 Kbyte) 28C16 - 28은 EEPROM, CMOS TYPE, 16은 16 Kbit (2 Kbyte) 28C64 - 28은 EEPROM, CMOS TYPE, 64는 64 Kbit (8 Kbyte) 29C010 - 29는 FLASH, CMOS TYPE, 010은 1Mbit (128 Kbyte) 29C040 - 29는 FLASH, CMOS TYPE, 040은 4Mbit (512 Kbyte) 62256 - 62는 S-RAM, CMOS TYPE, 256은 256 Kbit (32 Kbyte) 제 1장 마이크로프로세서의 기초와 기본동작
1.4 스택(Stack)이란 ? (1) • 인터럽터나 함수호출시 다시 돌아올 번지와 상태 값들을 잠시 저장하는 장소 • LIFO(Last-in First-out) : 저장한 값 중 제일 마지막에 넣은 값을 제일 처음 불러온다 • PUSH 명령으로 스택에 저장, POP 명령으로 스택에서 호출(나감) 제 1장 마이크로프로세서의 기초와 기본동작
1.4 스택이란 ? (2) • 스택도 램의 한 영역이며 스택 포인터(STACK POINTER)를 이용하여 차례로 들어오는 값을 스택에 저장을 한다. • 새로운 데이터가 들어오면(PUSH) 스택 포인터가 1증가 한다. • 스택의 데이터가 빠져나가면(POP) 스택 포인터가 1감소 한다. 제 1장 마이크로프로세서의 기초와 기본동작
1.4 스택이란 ? (3) 스택에 A,B,C 데이터를 넣었을 때(PUSH) 스택 포인터(SP)는 1 증가해서 다음 들어갈 곳을 가리킨다. C 데이터를 읽었을 때(POP) 스택 포인터는 1 감소하여 데이터가 있는 부분 바로 위 빈 공간을 가리킨다. 제 1장 마이크로프로세서의 기초와 기본동작
1.5 2진수란 ? (1) • 10진수 : 1부터 10 까지의 수로 가장많이 사용하는 수 체계 • 2진수 : 0과 1 로서 마이컴이나 다른 디지털 회로에서 사용하는 수 체계 • 16진수 : 2진수의 불편함을 해소하기 위해 2진수를 4자리(4비트)로 끊어 읽은“0,1,2,3,4,5 6,7,8,9,A,B,C,D,E,F”까지의 수 체계 제 1장 마이크로프로세서의 기초와 기본동작
1.5 2진수란 ? (2) 제 1장 마이크로프로세서의 기초와 기본동작
[ 실험 ] 1. 소프트웨어 기본구조 (1) 제 1장 마이크로프로세서의 기초와 기본동작
1. 소프트웨어 기본구조 (2) START: 프로그램 스타트를 의미한다.리셋 을 하면 처음으로 프로그램이 시작 하는 번지이다.(0000 번지) INITIAL: CPU의 각종 레지스터의 초기화 MAIN: 만들고자 하는 메인 프로그램 작성 (반복) 제 1장 마이크로프로세서의 기초와 기본동작
2. 1초 간격으로 LED 제어 (1) ORG 0000H ;시작번지를 0000번지로 한다 START: JMP INITIAL ;8051 초기 데이터(고정) ;; ;인터럽트 벡터 영역 ;; ORG 0035H ;프로그램 시작번지(35번지) INITIAL: NOP ;NO OPERATION(동작 없음) NOP MAIN: SETB P1.7 ;포트1.7 을 HIGH로 만든다 CALL D_1S ;1초 딜레이 CLR P1.7 ;포트 1.7을 LOW로 만든다 CALL D_1S ;1초 딜레이 JMP MAIN ;다시 MAIN 으로 간다. ;; $DELAY.INC ;딜레이 함수 첨부 END ;PROGRAM END 제 1장 마이크로프로세서의 기초와 기본동작
2. 1초 간격으로 LED 제어 (2) 사용 명령어 검토 제 1장 마이크로프로세서의 기초와 기본동작
3. 2초 간격으로 LED 제어 ORG 0000H ;시작번지를 0000번지로 한다 START: JMP INITIAL ;8051 초기 데이터(고정) ;; ;인터럽트 벡터 영역 ;; ORG 0035H ;프로그램 시작번지(35번지) INITIAL: NOP ;NO OPERATION(동작 없음) NOP MAIN: SETB P1.7 ;포트1.7 을 HIGH로 만든다 CALL D_1S ;1초 딜레이 CALL D_1S ;1초 딜레이 CLR P1.7 ;포트 1.7을 LOW로 만든다 CALL D_1S ;1초 딜레이 CALL D_1S ;1초 딜레이 JMP MAIN ;다시 MAIN 으로 간다. ;; $DELAY.INC ;딜레이 함수 첨부 END ;PROGRAM END 제 1장 마이크로프로세서의 기초와 기본동작