• 검색 결과가 없습니다.

우석대학교 에너지전기공학과

N/A
N/A
Protected

Academic year: 2021

Share "우석대학교 에너지전기공학과"

Copied!
24
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

C 언어로 배우는 8051 마이크로프로세서

(2)

2/49

04. 회로도의 기본 규칙, 저항 및 커패시터

 전원과 그라운드

 회로도에 표시하지 않는 것

 전원 및 그라운드의 접속

 디지털 IC의 전원 및 그라운드

 실장 레이아웃이나 배선의 방법

 부품의 종류 (커패시터나 저항)

 기구 부품 관련

 기능이나 타이밍 관련

Vcc

+5V

(3)

학습목표 및 목차

8051의 기본 구조와 각 핀의 기능을 이해한다.

8051 메모리 구조를 이해한다.

SFR 영역에 존재하는 레지스터들의 종류를 알아본다.

프로그램 메모리와 데이터 메모리를 확장하는 방법을 익힌다.

회로도의 기본 규칙과 저항 및 커패시터의 사용법을 익힌다.

01. 8051 기본 구조와 핀 기능

02. 8051 메모리 구조

03. MCS-51 기본 설계

04. 회로도의 기본 규칙, 저항 및 커패시터

(4)

4/49

01. 8051 기본 구조와 핀 기능

1.1 8051 기본 구조

 일반 CPU 기능

 병렬 8 bit I/O 포트: 4

 직렬 포트: 1

 인터럽트 제어기: 5

 타이머/카운터: 2

 ROM: 4K=4096 Bytes

 RAM: 128 Bytes

 특수 기능 레지스터

8051 내부 구조

(5)

1.2 8051 기본 특징

① +5V 단일 전원 동작 8bit 마이크로컨토롤러 ② 4Kbyte의 프로그램 메모리(ROM)를 내장 ③ 128byte의 데이터 메모리(RAM):

• 4개의 레지스터 뱅크(register bank)

• 128bit의 bit flag : 비트단위로 조작 처리가 가능

④ 외부 프로그램 메모리와 데이터 메모리를 각각 64Kbyte까지 확장 (단, 프로그램 메모리의 하위 4Kbyte는 자체 내장)

⑤ 128byte의 특수 기능 레지스터 (Special Function Register)

⑥ 4개의 8bit 입출력 포트 내장: 32개(=48bit)의 양방향 입출력 포트 ⑦ 16bit 타이머/카운터가 2개 내장

⑧ 데이터 통신용 완전 전이중 방식의 직렬 포트(full duplex UART)가 내장 ⑨ 2중 우선순위구조를 갖는 5개의 인터럽트 소스

⑩ 발진회로 및 클록회로 내장: 1~12MHz(내부에서 12분주), 32MHz까지도 가능 ⑪ 칩 내에 플래시메모리 내장(아트멜의 AT89S 시리즈)

(6)

6/49

 8051 계열 주요 제품의 특징

명칭 내부 메모리 인터럽트 소스 타이머/카운터 비고

프로그램(ROM) 데이터(RAM)

8031AH None 128  8 5 216bit 8051AH 4K8 ROM 128  8 5 216bit 8751H 4K8 EPROM 128  8 5 216bit

8032AH None 256  6 6 316bit

8052AH 8K8 ROM 256  6 6 316bit 8752BH 8K8 EPROM 256  6 6 316bit

AT89C51 4K8 Flash 128  8 5 216bit Atmel AT89C2051 2K8 Flash 128  8 5 216bit Atmel

(7)

1.3 8051 핀 구조와 기능

PDIP형

PLCC형

(8)

8/49

 포트 0(P0) (핀번호 : 32~39)

 기본 기능으로 8비트 양방향성 I/O 포트로 사용

 P0 포트 핀은 오픈 드레인의 구성이어서 I/O 포트로

풀업(pull-up) 저항

을 연결

 8개의 TTL을 구동 가능(fan-out : LS-TTL 8개)

외부 메모리(ROM, RAM) 확장 시 하위 어드레스(A0-A7)와 데이터 버스(D0∼D7)

로 사용

 포트 1(P1) (핀번호 : 1~8)

 8비트 양방향성 I/O 포트로 내부에서 풀업되어 있음

 4개의 TTL을 구동 가능(fan-out : LS-TTL 4개)

 포트 2(P2) (핀번호 : 21~28)

 8비트 양방향성 I/O 포트로 내부에서 풀업되어 있음

 4개의 TTL을 구동 가능(fan-out : LS-TTL 4개).

외부 메모리(ROM, RAM) 확장 시 상위 어드레스(A8~A15)로 사용

(9)

 포트 3(P3) (핀번호 : 10~17)

 8비트 양방향성 I/O 포트로 사용되며, 내부에서 풀업되어 있음

 4개의 TTL을 구동 가능(fan-out : LS-TTL 4개).

타이머/카운터, 직렬포트, read, write 제어기능이 포트설정에 따라 자동설정

핀(핀 번호) 명칭 기 능 P3.0(핀 10번) RxD 직렬통신에서 수신 핀(입력) P3.1(핀 11번) TxD 직렬통신에서 송신 핀(출력) P3.2(핀 12번) 외부 인터럽트 0 P3.3(핀 13번) 외부 인터럽트 1 P3.4(핀 14번) T0 외부 타이머 인터럽트 0(입력) P3.5(핀 15번) T1 외부 타이머 인터럽트 1(입력) P3.6(핀 16번) 외부 데이터 메모리 쓰기 스트로브(strobe) P3.7(핀 17번) 외부 데이터 메모리 읽기 스트로브(strobe) INT 0 INT 1 WR RD

01. 8051 기본 구조와 핀 기능

포트 3의 2차 기능

(10)

10/49

 시스템 리셋(RST) (핀번호 : 9)

시스템 리셋은 모든 동작 조건에 우선하며, RST 핀을 적어도 2 기계사이클(24

클록 시간) 동안 high 상태로 함으로써 이루어진다.

Power on 리셋 및 스위치 리셋 회로

01. 8051 기본 구조와 핀 기능

+ 10uF 4.7K +5V RST

스위치만 추가한 단순 리셋 회로

(11)

 클록 오실레이터(XTAL2, XTAL1) (핀번호 : 18, 19)

 명령어 수행에 소요되는 최소한의 클럭 수는 12이다.

 클럭 회로

클록 오실레이터 연결방법

외부 클록신호를 연결하는 방법

18 19 C2 MCS-51 XTAL1 XTAL2 C1 18 19 MCS-51 XTAL1 XTAL2 외부 클록 신호 NC

01. 8051 기본 구조와 핀 기능

(12)

12/49

 (핀번호 : 29)

 프로그램 메모리(ROM에) 저장되어 있는 데이터를 읽을 때 사용

 (핀번호 : 30)

 하위 어드레스(A0~A7)의 유효한 출력임을 나타내는 신호

 (핀번호 : 31)

내부 ROM을 사용할 경우에는 High(V

cc

)

에 연결하고, 외부에 ROM을 사용할 경

우에는 Low(접지, ground, GND)에 연결

 V

SS

(핀번호 : 20), V

CC

(핀번호 : 40)

 직류전원을 연결하는 단자이며, V

CC

=+5V, V

SS

=0V 연결

PSEN

PROG

/

ALE

PP

V

/

EA

01. 8051 기본 구조와 핀 기능

(13)

02. 8051 메모리 구조

(필기)

Bank 0 (R0~R7) 비트 단위로 처리가 가능한 영역 Bank 1 (R0~R7) Bank 2 (R0~R7) Bank 3 (R0~R7) 사용자 데이터 메모리 영역 특수 기능 레지스터 FFH 80H 7FH 30H 2FH 20H 1FH 18H 17H 10H 0FH 08H 07H 00H 내부 ROM 혹은 외부 ROM 외부 ROM FFFFH 1000H 0FFFH 0000H 외부 데이터 메모리 FFFFH 0000H  내부 데이터 RAM 128바이트 (00H~7FH)  내장 특수 기능 레지스터 128바이트 (80H~FFH)  내부 ROM 4K바이트 (0000H~0FFFH)  외부 확장 ROM 60K/64K바이트 (1000H/0000H~FFFFH)  외부 확장 데이터 메모리 64K바이트 (0000H~FFFFH)

2.1 8051 메모리 구조 개요

(14)

14/49

02. 8051 메모리 구조

2.2 내부 데이터 메모리: RAM 00H~7FH

* 컴파일러가 자동적으로 설정

 레지스터 뱅크(register bank)  R0~R7이라는 범용 레지스터의 이름을 사용 뱅크는 PSW의 RS1과 RS0를 사용하여 설정

 비트 어드레스 영역(bit addressable segment)

 비트 단위로 저장하거나 연산할 경우 사용하는 영역 (16 Byte) : RAM 20H~2F  사용자 데이터 메모리 영역: RAM 08H~7F  사용자 임의로 사용할 수 있는 영역  데이터 메모리이나 스택 영역으로 사용  Reset되면 SP가 07H가 되므로  사용자가 스택을 지정하려면  다른 곳으로 설정하여야 함 Bank 0 (R0~R7) Bank 1 (R0~R7) Bank 2 (R0~R7) Bank 3 (R0~R7) 1FH 18H 17H 10H 0FH 08H 07H 00H R0 R1 R2 R3 R4 R5 R6 R7 00H 01H 02H 03H 04H 05H 06H 07H Bank 0 (R0~R7) 비트 단위로 처리가 가능한 영역 Bank 1 (R0~R7) Bank 2 (R0~R7) Bank 3 (R0~R7) 2FH 20H 1FH 18H 17H 10H 0FH 08H 07H 00H 07 06 05 04 03 02 01 00 0F 0E 0D 0C 0B 0A 09 08 17 16 15 14 13 12 11 10 1F 1E 1D 1C 1B 1A 19 18 27 26 25 24 23 22 21 20 2F 2E 2D 2C 2B 2A 29 28 37 36 35 34 33 32 31 30 3F 3E 3D 3C 3B 3A 39 38 47 46 45 44 43 42 41 40 4F 4E 4D 4C 4B 4A 49 48 57 56 55 54 53 52 51 50 5F 5E 5D 5C 5B 5A 59 58 67 66 65 64 63 62 61 60 6F 6E 6D 6C 6B 6A 69 68 77 76 75 74 73 72 71 70 7F 7E 7D 7C 7B 7A 79 78 2FH 2EH 2DH 2CH 2BH 2AH 29H 28H 27H 26H 25H 22H 23H 24H 21H 20H 내부 메모 리 주소 내 부 메 모 리 비 트 주 소

(15)

02. 8051 메모리 구조

 특수기능 레지스터 영역(SFR:Special Function Register)

 범용 레지스터의 기능과 각종 칩 내장 장치들을 위한 기능을 수행

F8 FF F0 B F7 E8 EF E0 ACC E7 D8 DF D0 PSW D7 C8 CF C0 C7 B8 IP BF B0 P3 B7 A8 IE AF A0 P2 A7 98 SCON SBUF 9F 90 P1 97 88 TCON TMOD TL0 TL1 TH0 TH1 8F

(16)

16/49

02. 8051 메모리 구조

기 호 명 칭 주 소

Acc

Accumulator(누산기)

E0H

B

B Register

F0H

PSW

Program Status Word

D0H

SP

Stack Pointer

81H

DPTR(DPL) Data Pointer Register : Low Byte

82H

DPTR(DPH) Data Pointer Register : High Byte

83H

P0

Port 0

80H

Port 1

90H

Port 2

A0H

P3

Port 3

B0H

Interrupt Priority Control

B8H

Interrupt Enable Control

A8H

Timer/Counter Mode Control

89H

TCON

Timer/Counter Control

88H

Timer/Counter 0 High Byte

8CH

Timer/Counter 0 Low Byte

8AH

TH1

Timer/Counter 1 High Byte

8DH

Timer/Counter 1 Low Byte

8BH

SCON

Serial Control

98H

SBUF

Serial Data Buffer

99H

PCON

Power Control

87H

(17)

02. 8051 메모리 구조

2.3 프로그램 메모리

내부 ROM의 사용 여부는 를 사용하여 선택.

내부 ROM 혹은 외부 ROM 외부 ROM 외부 데이터 메모리 0000H FFFFH FFFFH 0000H 0FFFH 1000H

EA

프로그램 메모리

데이터 메모리

H

EA

L

EA

내부 ROM 사용 내부 ROM 사용하지 않음 이 경우 1000H 번지 이상을 읽으면 자동적으로 외부 ROM을 액세스

(18)

18/49

03. MCS-51 기본 설계

3.1 Flash ROM Type의 최소 설계

회로상의 를 VCC로 연결하여 내부 프로그램 메모리를 사용. 89C51의 내부 프로그램 메모리는 4kbyte인데 그 이상이 되면 당연히 으로 외부 프로그램 메모리를 액세스한다. EA PSEN 20pF 4.7K 10uF +5V 12MHz AT89C51 1 Vcc XTAL2 XTAL1 + 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 Vcc RESET P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA/VPP TXD RXD INT0 INT1 T0 T1 WR RD XTAL2 XTAL1 Vss 20pF ALE/P PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 VCC

(19)

03. MCS-51 기본 설계

3.2 ROM less Type의 최소 설계

20pF 4.7K 10uF +5V 12MHz 80C31 1 Vcc + 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 Vcc RESET P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA/VPP TXD RXD INT0 INT1 T0 T1 WR RD XTAL2 XTAL1 Vss 20pF ALE/P PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 VCC 74HC573 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A15 A14 A13 A12 A11 A10 A9 A8 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 2 3 4 5 6 7 8 9 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 A0 A1 A2 A3 A4 A5 A6 A7 AD 0~ AD 7 A8 ~A 15 AD0~AD7 A8~A15 19 18 17 16 15 14 13 12 20 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 I/O0 I/O1 I/O2 I/O3 I/O4 I/O5 I/O6 I/O7 19 18 17 16 15 14 13 3 2 31 1 12 4 5 11 21 22 23 25 26 27 28 29 OE WE CE Vcc 8 24 GND Vcc AT29C512 11 1 20 LE OE Vcc Vcc Vcc 1D 2D 3D 4D 5D 6D 7D 8D 1Q 2Q 3Q 4Q 5Q 6Q 7Q 8Q 10 GND

(20)

20/49

04. 회로도의 기본 규칙, 저항 및 커패시터

저항

 탄소 피막 저항: 가격이 저렴하고 가장 많이 사용

 어레이(Array) 저항: 여러 개(4~10개 정도)의 저항을 하나의 패키지 형태

탄소 피막 저항

어레이 저항

(21)

04. 회로도의 기본 규칙, 저항 및 커패시터

저항값과 컬러 코드

(Ex 1) 갈색, 흑색, 적색, 금색 : 10

100 = 1000

= 1K

(오차 5% )

(Ex 2) 황색, 자색, 등색, 금색 :

(Ex 3) 등색, 등색, 황색, 갈색 :

(Ex 4) 황색, 녹색, 갈색, 은색 :

(22)

22/49

04. 회로도의 기본 규칙, 저항 및 커패시터

4.3 커패시터의 사용 방법

 커패시터의 기능  전기를 저장하거나 방출하는 축전지로서의 기능  직류를 통과하지 않는 성질을 이용하는 기능  커패시터의 단위 : [ F ] [pF ] = 10-12 , [F ] = 10-6  커패시터의 종류  전해 커패시터  정격 전압(2V~500V)이 있으며, 비교적 용량이 크다(0.1μF~15000μF).  ±의 극성이 있으며, 2개의 리드선 중 긴 쪽이 플러스 극이다..  탄탈 커패시터  정격 전압(3V~35V)이 있으며, 비교적 용량(0.1μF~220μF)이 크다.  ±의 극성이 있으며, 2개의 리드선 중 긴 쪽이 플러스 극이다 .  세라믹 커패시터  정격 전압(25V~3KV)이 있으며, 비교적 용량(수pF~수 μF)이 작다.  극성이 없으며 허용오차(±10%, ±20%)가 크다.

(23)

04. 회로도의 기본 규칙, 저항 및 커패시터

 커패시터 용량

전해 커패시터, 탄탈 커패시터

세라믹 커패시터

48 × 102 20 × 103 = 4800 [pF] = 20000 [pF] = 0.0048 [F] = 0.02 [F] 오차 J = ± 5 % 오차 K = ± 10 %

 오차의 표시

J:5% 이내 K:10%이내 M:20%이내

(24)

24/49

04. 회로도의 기본 규칙, 저항 및 커패시터

 바이패스 커패시터 (bypass capacitor)

 바이패스 커패시터는 디지털 회로 보드 설계 시 매우 중요한 역할을 함

 각 칩(chip)의 V

CC

와 GND(접지, 그라운드) 사이를 연결하는 0.1

F 정도의 커패시

터를 의미

 이들은 각 칩의 내부 또는 외부에서 발생하는 잡음(noise)을 흡수하는 역할을 함

 바이패스 커패시터는 가능한 각 칩 가까이 연결해야 제 기능을 발휘함

참조

관련 문서

서구의 시민가족 서사에서 혈연관계 는 전통을 부정하고 시민적 공공성을 형성하기 위해 지양되어야 할 대상으로 표상된 반면,(2절. 한국 근대의 혈연가족)

또한, 「기상청 데이터 관리 및 제공 규정」 제6조(공공데이터제공담당관의 임무)에는 데이터 관리에 관한 기본정책의 수립 및 제도의 개선, 데이터 통계의 작성·관리

먼저 크게 데이터나 프로그램의 명령과 같은 정보를 기억할 수 있도록 만든 반도체 IC인 메모리와 메모리 제품을 메모리를 제외한 반도체 제품 인

미발행 석사학위논문, 중앙대학교 교육대학원.. 미발행 석사학위논문,

한국해양대학교 환경공학과 강원대학교 환경과학과. 우석대학교

게임 개발 환경 게임 실행 환경 워드프로세서 분석 설계 도구 인터넷 검색 프로그램 프리젠테이션 프로그램 기획 관련 문서 요구 사항 관련 문서 프로그램 구조 관련 문서

3) 입학원서 기재사항 정정은 본인의 인장으로 날인하여야 하며, 제출된 서류나 전형료는 반환하지 않음 4) 학기 개시일 이후에는 자퇴 신청 하여야 하며, 자퇴

제1장 글로벌마케팅의 이해.