본문 바로가기

[AnalogDevice]/ADuc81x

Aduc812 보드 제어 - Ez-Application Board제어 예제 강좌

Aduc812 보드 제어 - Ez-Application Board제어 예제 강좌

Ez-Aduc812(8051) Board를 이용한 EzApplication 제어
Ez-Application Board는 Ez-80196, Ez-Aduc812(8051) CPU를 학습하고 Ez-Mouse를 구동하기 전에 LED, LCD, BUZZER, ADC, DAC, PPI, PTC등 각종 주변 제어 소자들을 이용하여 쉽고 재미있게 마이컴을 학습할 수 있는 Application  Board 이다.

Ez-Application Board의 개용와 각 Application의 예제를 통해 마이크로 프로세서(80196, 8051)를 공부해 보자.

 

보드 개요

1. Ez-80196 CPU Board, Ez-Aduc812(8052) CPU Board 탈착 가능.

2. 포토센서, CdS, 온도센서, 가변저항 및 4채널의 외부 아날로그신호 입력가능.

3. 4채널의 디지털신호 출력 가능.

4. 포토커플러로 아이솔레이트된 8채널 디지털신호 출력가능.

5. 포토커플러로 아이솔레이트된 8채널 디지털신호 입력가능.

6. PPI(8255) 포트 입출력 단자 및 5개의 푸시 스위치와 4개의 딥스위치.

7. LCD Display

8. HSO/HSI 입출력 단자.

9. RTC 제어.



APP BOARD의 구성

 


전체 구성은 CPU부와 APPLICATION부로 나누어지고. APPLICATION부는 아날로그입력(ADC), 아날로그 출력(DAC), 디지털 출력(DIO_OUT), 디지털 입력( DIO_IN), 8255PPI, 스위치, LCD,  BUZZER(Ez-Aduc812), RTC로 구성된다.

CPU부와 APPLICATION부는 분리되며 Ez80196, EzAduc812 CPU Board를 탈착할 수 있다.

 



               

 

Ez-Mouse Application Board

EZ-Aduc812 Board

Ez-Aduc812 Board는 기존의 Ez-Mouse의 Ez-80196 Board의  8051대체용으로 ADC/DAC를 내장하고 8051과 완벽하게 호환되는 Analog Device사의 Aduc812 CPU를 학습할 수 있는 Board이다.


 



▣ CPU

Aduc812내부 구조는 기존의 8051과 동일하고 내부에 8k(byte)의 플래쉬 메모리와 12bit 8채널의 ADC, 12bit DAC를 내장하고 있는 CPU이다.


▣ Serial Port

- 스테레오 짹 형태의 Serial Line를 연결할 수 있다.


▣ J1, J2

Aduc812내부 플래쉬 메모리를 사용할 경우 J2(EA)핀을 1-2로 하고 J1(PSEN)핀을 1-2로 하면 다운로드 모드가 되며 J1핀을 2-3으로 한후  J2핀을 1-2로 연결하면 내부 플래쉬 메모리가 실행된다.

그리고 J1(PSEN)핀을 2-3으로 하고 J2핀을 2-3으로 하면 외부 메모리(ROM Bios)가 실행된다.


▣ SW2

딥 스위치 SW2은 통신 설정 스위치로 1,2 모두 On일 경우 PC Serial 포트와 통신하고 1번 스위치가 Off이고 2번이 On일 경우 RF 송신모드 이고 1번 스위치가 Off이고 RF수신모드 이다.

SW No.

On

Off

1

Serial Mode

RF Mode

2

 

On

RF송신 Mode

Off

RF수신 Mode



▣ RF BIM Module

- RF송수신 가능한 BIM모듈을 장착 할 수 있는 커넥터로 RF테스트 프로그램을 작성해 볼 수 있다.

 

그림 - RF송수신 모듈(BIM)




▣ OUT_PORTA, OUT_PORTB

- Aduc821의 포트를 확장하여 2개의 출력 포트를 제공한다.




▣ Memory

Aduc812의 경우 메모리 구조는 EA pin이 Hi일 경우 내부 8Kbyte의 플래쉬 메모리를 사용할 수 있고 EA pin이 Low일 경우 외부 메모리를 사용 할 수 있다.

 

Ez-Aduc812의 경우 어드레스 번지 0000h-6FFFh 번지까지는 ROM Bios영역이고 7000h-7FFFh 번지까지는  외부 I/O영역이며 8000h-FFFFh까지는 사용자 프로그램 메모리와 데이터 메모리 영역이다. 따라서 사용자가 작성한 프로그램은 8000h번지 이후에 다운로드 하여 실행해 볼 수 있다.


Port I/O Board


▣ LED DOT Board

각 포트 및 입출력 커넥터에 출력되는 데이터 값을 확인하기 위해 LED DOT Board를 이용하면 편리하다.

아래 그림과 같이 커넥터에 탈착할 수 있고 출력된 값을 쉽게 확인할 수 있어 프로그램 하는데 많은 도움이 된다.


 

 


▣ SWICH DOT Board

각 포트 및 DIO_IN의 입력 값을 주기 위해 SWITCH DOT Board를 이용하면 편리한데 역시 각 커넥터 단자에 탈착할 수 있다.

SWITCH DOT Board를 이용하면 쉽게 디지털 입력을 할 수 있어 프로그램 하는데 있어 많은 도움이 될 것이다.


 

 

Analog Input/Output


▣ 아날로그입력(8 channel ADC)

아날로그 입력은 총8채널까지 입력받을 수 있고 각 ACH단자에 연결되어 있다.

채널0에 광센서, 채널1에 CdS셀, 채널2에 온도센서(LM35), 채널3에 볼륨이 연결되어 있고 CN1커넥터로 나머지 채널4에서 8까지 연결되어 사용자 임의로 다른 AD값을 입력할 수 있다.

 




▣ 아날로그 출력(DAC)

아날로그 출력은 DAC는 Aduc812 Board내부의 DAC포트로 12bit의 데이터를 DAC하여 출력할 수 있다.

 




▣ 디지털 출력(DIO_OUT)

디지털 출력은 CN9 커넉터로  포터커플러(PC817)에 의해 아이솔레이션된 8점의 디지털 출력을 할 수 있다. 출력전압레벨은 EXT1입력으로 35V까지 가능하고 디폴트로 12V가 출력되며 그 출력된 상태를 LED로 확인할 수 있다. 주파수는 최대 80kHz까지 허용한다.

 



▣ 디지털 입력(DIO_IN)

디지털 입력은 CN10 커넥터로 입력되는 디지털 입력을 포터커플러(PC817)로 아이솔레이션 입력받을 수 있다. 디지털 입력역시 디지털출력과 같이 EXT0의 전압레벨(5V-35V)로 입력되는 디지털 입력을 받아들이고 입력된 상태를 LED로 확인할 수 있다.


 

8255 PPI 제어

입출력 가능한 디지털 포트를 위해 8255(PPI)가 사용되는데 CN10 커넥터로 포트A, CN11 커넥터로 포트B가 연결되어 있고 포트C로 5개의 푸시스위치 및 딥스위치가 연결되어 있다.

 




LCD제어

아날로그값, 스위치값, 기타 여러 가지 출력 값을 표시하기 위해 LCD를 이용하여 표시할 수 있다.

 



IO Port 출력

OUT_PORTA, B는 Ez-Aduc812Board 어드레스7000h, 7100h번지의 74574에 연결된 외부 IO로 8bit의 데이터를 각각 출력해 볼 수 있다.



부저(BUZZER)

부저는 P3.3에 연결되어 있고 점퍼(J2)를 1-2에 연결하면 제어할 수 있다.



RTC(Real Time Clock)

RTC는 실시간으로 시간을 표시하는 DS12C887을 제어할 수 있다. 단 옵션으로 연결하여 사용할 수 있다.



Ez-Aduc182 Memory Map

Ez-Aduc812의 메모리 지도는 아래 그림과 같이 프로그램 영역의 0h - 6FFFh 번지까지는 롬바이오스 영역이고  8000h - EFFFh 번지까지는 사용자 프로그램을 다운로드 할 수 있는 영역이다. 데이터 역역의 7000h - 7FFFh 번지까지는 I/O영역고 8000h-FFFFh번지 까지는 사용자 데이터 영역이 할당 되어 있다.


FFFFh

 

 

FFFFh

 

ROM BIOS 데이터 영역(*)

 

사용자 데이터 영역(**)

 

 

 

F000h

 

 

사용자 프로그램 영역(**)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8000h

인터럽트 벡터

(사용자 영역)

 

8000h

ROM BIOS 프로그램 영역

 

입출력 영역

 

 

 

 

 

7000h 

 

 

 

 

 

정의되지 않음(***)

 

 

 

 

 

00FFh

 

 

인터럽트 벡터

(ROM BIOS 영역)

 

SFR 영역  

 

0000h

 

0000h

레지스터 영역

 

 

 

 

 

프로그램메모리         

 

 

데이터 메모리


주)(*) ROM BIOS에서 사용하는 영역입니다. 사용자 프로그램에서

      사용할 경우 비정상적으로 실행될 수 있습니다.

주)(**)프로그램 메모리영역과 데이터  메모리영역이 중첩되어  있습니다.

주)(***)메모리에 할당되지 않은 영역입니다.




Ez-Application Board I/O Map(for Aduc812)

Ez-Aduc812 Board의 I/O영역은 데이터 메모리 영역의 7000h-74FFh번지까지가   

Ez-Application Board에 할당되어 있다.

7000h번지, 7100h번지는 74574의 출력에 연결된 8bit 출력 포트A,B가 각각 할당되어 있다. 

7200h번지는 디지털 입력이 할당되어 있으며, 7201h번지는 디지털 입력이 할당되어 있다.

7204h-7207h번지는 8255 PPI가 할당되어 있으며 7208h-720Bh번지는 LCD가 연결되어 있다.

7300h-73FFh번지는 RTC가 연결되어 있고 7400h이후에 USER CS가 3단자 할당되어 있다.


그리고 부저는 P2.3에 연결되어 있고 점퍼(J2)를 1-2에 연결하면 제어할 수 있다.


 

 

USER CS

7400h

RTC

7300h

 

LCD

7208h

8255 PPI

 

7204h

DIO OUTPUT

7201h

DIO INPUT

7200h

OUT PORTB

7100h

OUT PORTA

7000h

 






 

Ez-Application의 커넥터


(1) CN1 - ADC입력 커넥터

8개의 ADC입력 채널 중 채널4에서 채널7까지 사용자 정의 AD값을 입력할 수 있는 커넥터이다.



Connector CN1

Pin #

Signal

ADUC812

80C196KC

1

AVDD, +5V Analog

AVDD, +5V Analog

2

P1.4/ADC4

P0.4/ADC4

3

P1.5/ADC5

P0.5/ADC5

4

P1.6/ADC6

P0.6/ADC6

5

P1/7ADC7

P0/7ADC7

6

AGND

AGND





(2) CN2 - DAC출력 커넥터

Ez-80196의 PWM출려과 Aduc812의 DAC값을 출력하는 커넥터이다.


Connector CN2

Pin #

Signal

ADUC812

80C196KC

1

P3.5/T1

P2.5/PWM0

2

DAC0

×

3

PA1

P1.3/PWM1

4

DAC1

×

5

PA2

P1.4/PWM2

6

AGND

AGND

(3) CN3/CN4 - CPU Board 접속 커넥터

CN3, CN4는 Ez-80196 CPU Board와 접속되는 커넥터로 CPU의 데이터, 어드레스버스 및 각 제어포트와 연결된다.

Connector CN3

Pin #

Signal

Pin #

Signal

ADU812

80C196KC

ADU812

80C196KC

1

VCC, +5 Volts

VCC, +5 Volts

2

GND

GND

3

VCC, +5 Volts

VCC, +5 Volts

4

GND

GND

5

P1.0/ADC0

P0.0/ACH0

6

P1.1/ADC1

P0.1/ACH1

7

P1.2/ADC2

P0.2/ACH2

8

P1.3/ADC3

P0.3/ACH3

9

P1.4/ADC4

P0.4/ACH4

10

P1.5/ADC5

P0.5/ACH5

11

P1.6/ADC6

P0.6/ACH6

12

P1.7/ADC7

P0.7/ACH7

13

AGND

GND

14

AGND

AGND

15

PA0

P1.0

16

PA1

P1.1

17

PA2

P1.2

18

PA3

P1.3/PWM1

19

PA4

P1.4/PWM2

20

PA5

P1.5/BREQ-

21

PA6

P1.6/HLDA-

22

PA7

P1.7/HOLD-

23

PB0

HSI0

24

PB1

HSI1

25

PB2

HSI2/HSO4

26

PB3

HSI3/HSO5

27

PB4

HSO0

28

PB5

HSO1

29

PB6

HSO2

30

PB7

HSO3

31

DAC0

×

32

DAC1

×


Connector CN4

Pin #

Signal

Pin #

Signal

ADU812

80C196KC

ADU812

80C196KC

1

A/D0

A/D0

2

A/D1

A/D1

3

A/D2

A/D2

4

A/D3

A/D3

5

A/D4

A/D4

6

A/D5

A/D5

7

A/D6

A/D6

8

A/D7

A/D7

9

A0

A0

10

A1

A1

11

A2

A2

12

A3

A3

13

×

×

14

CLK

CLK

15

RST

RST

16

RST-

RST-

17

RD-

IOR-

18

WR-

IOW-

19

CS0-

CS0-

20

CS1-

CS1-

21

CS2-

CS2-

22

ALE

ALE

23

P3.1/TXD

P2.0/TXD

24

P3.0/RXD

P2.1/RXD

25

P3.2/INT0-

P2.2/EXTINT

26

P3.3/INT1-

P2.3/T2CLK

27

P3.4/T0

P2.4/T2RST

28

P3.5/T1

P2.5/PWM0

29

×

P2.6/T2UPDN

30

×

P2.7/T2CAPTURE

※주의 사항은 Aduc812 CPU보드를 연결할 때에는 반드시 APP Board의 CN3이 CPU Board의 CON4와 결합되고, APP Board의 CN4가 CPU Board의 CON3과 결합되어야 한다. 이때 APP Board의 CN3의 31, 32단자는 CPU보드와 연결되지 말아야 한다.



(4) CN5 - PORT 입출력 커넥터

Ez-80196 Board의 P1입출력과 Ez-Aduc812 Board의 포트A를 출력하는 커넥터이다.


Connector CN5

Pin #

Signal

ADUC812

80C196KC

1

VCC, +5 Volts

VCC, +5 Volts

2

PA0

P1.0

3

PA1

P1.1

4

PA2

P1.2

5

PA3

P1.3/PWM0

6

PA4

P1.4/PWM1

7

PA5

P1.5/BREQ-

8

PA6

P1.6/HLDA-

9

PA7

P1.7/HOLD-

10

GND

GND


(5) CN6 - PORT 입출력 커넥터

Ez-80196 Board의 HSI/HSO입출력과 Ez-Aduc812 Board의 포트B를 출력하는 커넥터이다.


Connector CN6

Pin #

Signal

ADUC812

80C196KC

1

VCC, +5 Volts

VCC, +5 Volts

2

PB0

HSI0

3

PB1

HSI1

4

PB2

HSI2/HSO4

5

PB3

HSI3/HSO5

6

PB4

HSO0

7

PB5

HSO1

8

PB6

HSO2

9

PB7

HSO3

10

GND

GND

(6) CN7 - 포트 입출력 커넥터

Ez-80196 Board의 P3의 입출력과 Ez-Aduc812 Board의 P3을 입출력하는 커넥터이다.


Connector CN7

Pin #

Signal

ADUC812

80C196KC

1

VCC, +5 Volts

VCC, +5 Volts

2

P3.1/TXD

P2.0/TXD

3

P3.0/RXD

P2.1/RXD

4

P3.2/INT0-

P2.2/EXTINT

5

P3.3/INT1-

P2.3/T2CLK

6

P3.4/T0

P2.4/T2RST

7

P3.5/T1

P2.5/PWM0

8

×

P2.6/T2UPDN

9

×

P2.7/T2CAPTURE

10

GND

GND



(7) CN8 - 디지털 입력 커넥터

Connector CN8

Pin #

Signal

ADUC812

80C196KC

1

VCC, +12 Volts

VCC, +12 Volts

2

IN0

IN0

3

IN1

IN1

4

IN2

IN2

5

IN3

IN3

6

IN4

IN4

7

IN5

IN5

8

IN6

IN6

9

IN7

IN7

10

GND

GND





(8) CN9 - 디지털 출력 커넥터


Connector CN9

Pin #

Signal

ADUC812

80C196KC

1

VCC, +12 Volts

VCC, +12 Volts

2

OUT0

OUT0

3

OUT1

OUT1

4

OUT2

OUT2

5

OUT3

OUT3

6

OUT4

OUT4

7

OUT5

OUT5

8

OUT6

OUT6

9

OUT7

OUT7

10

GND

GND




(9) CN10 - PPI PORTA 입출력 커넥터


Connector CN10

Pin #

Signal

ADUC812

80C196KC

1

VCC, +5 Volts

VCC, +5 Volts

2

8255 PA0

8255 PA0

3

8255 PA1

8255 PA1

4

8255 PA2

8255 PA2

5

8255 PA3

8255 PA3

6

8255 PA4

8255 PA4

7

8255 PA5

8255 PA5

8

8255 PA6

8255 PA6

9

8255 PA7

8255 PA7

10

GND

GND




(10) CN11 - PPI PORTB 입출력 커넥터


Connector CN11

Pin #

Signal

ADU812

80C196KC

1

VCC, +5 Volts

VCC, +5 Volts

2

8255 PB0

8255 PB0

3

8255 PB1

8255 PB1

4

8255 PB2

8255 PB2

5

8255 PB3

8255 PB3

6

8255 PB4

8255 PB4

7

8255 PB5

8255 PB5

8

8255 PB6

8255 PB6

9

8255 PB7

8255 PB7

10

GND

GND







(11) J1 - RTC IRQ Enable

RTC 인터럽터를 EXINT단자(P2.2)와 연결하는 점퍼로 RTC의 인터럽트를 사용가능하게 한다.


Jumper 1-2

Position

function

1-2

RTC IRQ Enable


(12) J2 - BUZZER Enable

반응형