Brief Manual of MiDAS1.1 Family

Similar documents
[8051] 강의자료.PDF

(1) 주소지정방식 Address Mode 메모리접근 분기주소 명령어 직접번지 Reg. 지정 Reg. 간접 Base Index 간접 Immediate 상대번지 절대번지 Long 주소 Reg. 간접 Byte Access Bit Access 내부 Data M

MicrocontrollerAcademy_Lab_ST_040709

슬라이드 1

歯메뉴얼v2.04.doc

T100MD+

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

ºÎ·ÏB

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

Microsoft PowerPoint 명령어.pptx

untitled

À̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp

=

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

PowerChute Personal Edition v3.1.0 에이전트 사용 설명서

FARA PLC N70plus 시스템 사용자 메뉴얼

MAX+plus II Getting Started - 무작정따라하기

hwp

1

Microsoft PowerPoint - 9.Serial.pptx

전자실습교육 프로그램

MR-3000A-MAN.hwp

Microsoft PowerPoint 의 이해.pptx

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

DE1-SoC Board

Microsoft Word - PEB08_USER_GUIDE.doc

SRC PLUS 제어기 MANUAL

CAN-fly Quick Manual

ez-md+_manual01

슬라이드 1

PRO1_09E [읽기 전용]

hlogin2

CONTENTS 1. Approval Revision Record Scope Numbering of product Product Part No Lot. No Absolu

2

ez-shv manual

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

歯AG-MX70P한글매뉴얼.PDF

BC6DX-II Korean.ai

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

歯동작원리.PDF

CANTUS Evaluation Board Ap. Note

BC6DX Korean.ai

歯FDA6000COP.PDF

APOGEE Insight_KR_Base_3P11

<BBEABEF7B5BFC7E22DA5B12E687770>

acdc EQ 충전기.hwp

untitled

Microsoft Word - JAVS_UDT-1_상세_메뉴얼.doc

CPX-E-SYS_BES_C_ _ k1

Microsoft PowerPoint - Ch13

歯설명서_020925_.PDF

DSP_MON 프로그램 메뉴얼

hd1300_k_v1r2_Final_.PDF

YD-3533.xls


untitled

Coriolis.hwp

INTRO Basic architecture of modern computers Basic and most used assembly instructions on x86 Installing an assembly compiler and RE tools Practice co

DIB-100_K(90x120)

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202831C1D6C2F72C2032C1D6C2F729>

DDX4038BT DDX4038BTM DDX4038 DDX4038M 2010 Kenwood Corporation All Rights Reserved. LVT A (MN)

Microsoft PowerPoint - 부호기와 복호기.PPT

Microsoft PowerPoint - ch03ysk2012.ppt [호환 모드]

Real Time In-Circuit Emulator for MICROCHIP PIC16CXX

서보교육자료배포용.ppt

API 매뉴얼

. 고성능마이크로프로세서 LU 와레지스터 파일의구조 (2.). 직접디지털주파수합성기 (FS) 의구조 3. 고성능마이크로프로세서부동소수점연산기 (Floating-Point Unit) 구조 (2) (2.) (2.) 2. 암호화를위한 VLSI 구조와설계의개요 (2.) 다음참

Microsoft Word - FunctionCall

Siemens

Microsoft Word - SRA-Series Manual.doc

untitled


한글사용설명서

CD-6208_SM(new)

Korean 654x Quick Start Guide

Slide 1

歯15-ROMPLD.PDF

Microsoft PowerPoint - 30.ppt [호환 모드]

-. Data Field 의, 개수, data 등으로구성되며, 각 에따라구성이달라집니다. -. Data 모든 의 data는 2byte로구성됩니다. Data Type는 Integer, Float형에따라다르게처리됩니다. ( 부호가없는 data 0~65535 까지부호가있는

Preliminary spec(K93,K62_Chip_081118).xls

BY-FDP-4-70.hwp

Microsoft Word - ExecutionStack

인켈(국문)pdf.pdf

歯DCS.PDF

Remote UI Guide

AN2629

½½¶óÀ̵å Á¦¸ñ ¾øÀ½

INDUCTION MOTOR 표지.gul

디지털공학 5판 7-8장

- 이 문서는 삼성전자의 기술 자산으로 승인자만이 사용할 수 있습니다 Part Picture Description 5. R emove the memory by pushing the fixed-tap out and Remove the WLAN Antenna. 6. INS


KR

Microsoft Word - DTM-M300_Spec_V1_0.doc

API 매뉴얼

Microsoft Word - 1. ARM Assembly 실습_xp2.doc

. "" "",.... :...,,....,.. :..,,,..,,...,.... 2

歯2800.PDF

2. GCC Assembler와 AVR Assembler의차이 A. GCC Assembler 를사용하는경우 i. Assembly Language Program은.S Extension 을갖는다. ii. C Language Program은.c Extension 을갖는다.

Transcription:

MiDAS Family BM-MiDAS1.1-Kor-V2.9 Brief Manual of MiDAS1.1 Family EPROM / ROM based 8-bit Turbo Microcontrollers V2.9 December 2011 CORERIVER Semiconductor reserves the right to make corrections, modifications, enhancements, improvements, and other changes to its products and services at any time. CORERIVER shall give customers at least a three month advance notice of intended discontinuation of a product or a service through its homepage. Customers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. The CORERIVER products listed in this document are intended for usage in general electronics applications. These CORERIVER products are neither intended nor warranted for usage in equipment that requires extraordinarily high quality and/or reliability or a malfunction or failure of which may cause loss of human life or bodily injury. www.coreriver.com (E-mail : tech@coreriver.com)

목차 1. 제품개요 2. 특징 3. 블록도표 4. Pin 구성 5. Pin 설명 6. 기능설명 CPU 설명 - Memory 구조 - SFR Map 과설명 - 명령어 Set 요약 - CPU Timing 주변회로설명 - 입출력단자 - Pad 의 ESD 보호구조 - LVD (Low Voltage Detector) - WDT (Watchdog Timer) - Timer0/1 - UART (Universal Async. RX/TX) - PWM (Pulse Width Modulator) - ADC - 인터럽트 - Reset 회로 - 클럭회로 - 전력관리 7. 전통적 80C52에비하여강점 8. 전원전압상승기울기추천 9. 절대최대동작범위한계 10.DC 특성 11.AC 특성 12.ADC 특성 13.Package Dimensions 14.Product Numbering System 15. 지원툴 16. 부록 A. 명령어 Set B. SFR 설명 C. Update History MiDAS1.1 Family [2]

1. 제품개요 코아리버 MiDAS1.1 제품군은고속의 80C52 호환마이크로콘트롤러이다. MiDAS1.1 제품군은전통적인 80C52와비교해서최대 3배의속도로명령어를실행한다. 1 기계어주기 = 4 클럭주기 vs. 12 클럭주기 MiDAS1.1 제품군의부가적인주변회로들 : 10-bit ADC / 8-bit PWM / WDT / LVD / POR. 전력절감방안들을갖는다. 잡음저항성방안이있다. 사용자편리 MDS 확경을제공한다. 사용하기쉬운 training-kit를제공한다. 이간략한매뉴얼의내용은언제든지갱신될수있다. CORERIVER 웹사이트 (http://www.coreriver.com) 에서갱신된내용을확인해야한다. MiDAS1.1 Family [3]

1. 제품군 MiDAS1.1 제품군 -GC80C510A 계열 ( 저비용 ADC 응용 MCU) Product Mask-ROM (byte) EPROM (byte) RAM (Byte) Volt (V) Freq. T/C (MHz) (16bits) Serial I/O WDT ADC PWM (bit x ch) (bit x ch) I/O Pins Package Others Available Time GC87C510A0-SP20I GC87C510A0-SO20I GC87C510A0-SO16I GC87C510A0-TS16I GC87C510A0-SO8I - 4K 128 2.4~5.5 20 (10) 2 1 UART 1 10x12 10X12 10X8 10X8 10X2 8x1 18 18 14 14 6 20-SPDIP 20-SOP 16-SOP 16-TSSOP 8-SOP LVD POR Ring OSC Now GC87C510A1-SO8I - 4K 128 2.4~5.5 20 (10) 2 1 UART 1 10X3 8x1 6 8-SOP LVD POR Ring OSC Now GC81C510A0-SP20I GC81C510A0-SO20I GC81C510A0-SO16I GC81C510A0-TS16I GC81C510A0-SO8I 4K - 128 2.4~5.5 20 (10) 2 1 UART 1 10x12 10X12 10X8 10X8 10X2 8x1 18 18 14 14 6 20-SPDIP 20-SOP 16-SOP 16-TSSOP 8-SOIC LVD POR Ring OSC Now GC81C510A1-SO8I 4K - 128 2.4~5.5 20 (10) 2 1 UART 1 10X3 8x1 6 8-SOIC LVD POR Ring OSC Now * MiDAS1.1 제품군의동작주파수는 5.0V 로동작할때 20 MHz 이다. MiDAS1.1 Family [4]

1. 제품군 ( 계속 ) MiDAS1.1 제품군 -GC80C510A 계열 ( 저비용 ADC 응용 MCU) Product Mask-ROM (byte) EPROM (byte) RAM (Byte) Volt (V) Freq. T/C (MHz) (16bits) Serial I/O WDT ADC PWM (bit x ch) (bit x ch) I/O Pins Package Others Available Time GC81C500A0-SP20I GC81C500A0-SO20I GC81C500A0-SO16I GC81C500A0-TS16I GC81C500A0-SO8I 2K - 128 2.4~5.5 20 (10) 2 1 UART 1 10x12 10X12 10X8 10X8 10X2 8x1 18 18 14 14 6 20-SPDIP 20-SOP 16-SOP 16-TSSOP 8-SOIC LVD POR Ring OSC Now GC81C500A1-SO8I 2K - 128 2.4~5.5 20 (10) 2 1 UART 1 10X3 8x1 6 8-SOIC LVD POR Ring OSC Now * Operating frequency of MiDAS1.1 family is 20 MHz at 5.0 voltage. MiDAS1.1 Family [5]

2. 특징 CPU 8-bit turbo 80C52 구조 4 클럭주기 /1 기계어 인텔 80C52 와명령어수준호환 4Kbytes EPROM 128bytes RAM 공급전압 : 2.4V ~ 5.5V 동작주파수 최대 20MHz @4.5V ~ 5.5V 최대 10MHz @2.4V ~ 3.3V -40 C 에서 120 C 까지동작 프로그램이가능한 18 개의입출력 pins 소프트웨어에의해 pull-up 제어 Push-pull 출력 저전압검출기 (Low Voltage Detector) 내부링오실레이터 : 3.6MHz@5V (15%) 16-bit 프로그램가능 Watchdog Timer 2 개의 16-bit 타이머 / 카운터 전이중 UART 1- 채널 8-bit 고속 PWM 12- 채널 10-bit ADC 최대 100KSPS (@Fadc = 8 MHz) 입력클럭주파수를프로그램가능 10 개의인터럽트발생원 Timer0/1, UART, ADC, PWM, WDT, 외부 4 개 2 단계인터럽트우선순위 Reset 방안 On-chip Power-On-Reset 외부 reset 저전압검출기 reset Watchdog timer reset 전력소모 Active current : 최대 10mA @5V, 20MHz Stop current : 최대 1uA E.S.D. 는 2,000V 까지안전함 Latch-up 은 200mA 까지안전함 Package 20-PDIP, 20-SOP 16-TSSOP, 16-SOP 8-SOP MiDAS1.1 Family [6]

3. 블록도표 XTAL1 / P1.0 XTAL2 / P1.1 P0[7:0] / ADC0 ~ ADC6 P2[6:0] / ADC7 ~ ADC11 External Osc. Internal Ring OSC. Port Controller ADC (10 bit) Interrupt Controller OTP I/F Controller TURBO 80C52 CORE CPU BUS POR LVD RAM (128B) EPROM (4KB) Timer0 (8bitx2) Timer1 (16 bit) WDT (16 bit) PWM (8 bit) V DD RESETB / VPP / P1.2 V SS MiDAS1.1 Family [7]

4. Pin 구조 V SS P1.0 / XTAL1 P1.1 / XTAL2 VPP / P1.2 / RESETB T0 / P2.0 P2.1 ADC11 / P2.2 ADC10 / P2.3 ADC9 / P2.4 ADC8 / P2.5 1 2 3 4 5 6 7 8 9 10 GC87C510A0-SO20IP GC87C510A0-SP20IP 20 19 18 17 16 15 14 13 12 11 V DD P0.0 / INT0 / TVO P0.1 / ADC0 / INT1 / RXD P0.2 / ADC1 / INT2 / TXD P0.3 / ADC2 / INT3 P0.4 / ADC3 / AV REF P0.5 / ADC4 P0.6 / ADC5 / PWM P0.7 / ADC6 P2.6 / ADC7 / CLO V SS P1.0 / XTAL1 P1.1 / XTAL2 VPP / P1.2 / RESETB T0 / P2.0 P2.1 ADC11 / P2.2 ADC10 / P2.3 1 2 3 4 5 6 7 8 GC87C510A0-SO16IP GC87C510A0-TS16IP 16 15 14 13 12 11 10 9 V DD P0.0 / INT0 / TVO P0.1 / ADC0 / INT1 / RXD P0.2 / ADC1 / INT2 / TXD P0.3 / ADC2 / INT3 P0.4 / ADC3 / AV REF P0.5 / ADC4 P0.6 / ADC5 / PWM [ 20-SOP / 20-PDIP] [ 16-SOP / 16-TSSOP] 20-SOP 16/8-SOP : Wide : Narrow V SS P1.0 / XTAL1 P1.1 / XTAL2 VPP / P1.2 / RESETB 1 2 3 4 GC-M11P 8S 8 7 6 5 V DD P0.0 / INT0 / PWM / TVO P0.1 / ADC0 / INT1 / RXD P0.2 / ADC1 / INT2 / TXD V SS P1.0 / XTAL1 VPP / P1.2 / RESETB ADC11 / P2.2 1 2 3 4 GC-M111P 8S 8 7 6 5 V DD P0.0 / INT0 / PWM / TVO P0.1 / ADC0 / INT1 / RXD P0.2 / ADC1 / INT2 / TXD [ 8-SOP (A0 version)] [ 8-SOP (A1 version)] MiDAS1.1 Family [8]

5. Pin 설명 기호방향설명공유 Pins V DD 입력전력공급원 - V SS 입력전력용접지 - RESETB / VPP / P1.2 입출력 외부 Reset 입력신호 ( 기본지정 ) 비트단위프로그램가능 VPP (11.5V) XTAL1 / P1.0 XTAL2 / P1.1 입출력 크리스탈입출력 ( 기본지정 ) Schmitt Trigger 입력과비트단위프로그램가능 - Pull-up On/OFF 제어가능 - Push-pull 출력 크리스탈입력 크리스탈출력 ( 오직 A0 종류의경우 ) P0[7:0] 입출력 Schmitt Trigger 입력과비트단위프로그램가능 - Pull-up On/OFF 제어가능 - Push-pull 출력 ( 기본지정 ) RX, TX, TVO INT0 ~ INT3, ADC0 ~ ADC6, PWM AV REF P2[6:0] 입출력 Schmitt Trigger 입력과비트단위프로그램가능 - Pull-up On/OFF 제어가능 - Push-pull 출력 ( 기본지정 ) ADC7 ~ ADC11 CLO T0 MiDAS1.1 Family [9]

6.1. Memory 구조 3FFh 000h Internal ROM (4kBytes) Interrupt Vector 30H 20H 80 x 8bit (Scratch Pad) 16x8bit (128bit) Bit Addressable 7FH 2FH R0 R1 R2 R3 R4 R5 R6 R7 BANK 3 R0 R1 R2 R3 R4 R5 R6 R7 BANK 2 R0 R1 R2 R3 R4 R5 R6 R7 BANK 1 00H R0 R1 R2 R3 R4 R5 R6 R7 BANK 0 80h 00h FFh Internal RAM (Indirect or Direct) SFR (Only Direct) MiDAS1.1 Family [10]

6.2. SFR (Special Function Register) Map Bit 주소지정가능 : MiDAS1.1 제품군에새로첨가된 SFR : Reserved for future use. 7Fh 00h FFh Internal RAM (Indirect or Direct) SFR (Only Direct) F8h EIP FFh F0h B P0DIR P1DIR P2DIR F7h E8h EIE ADCR ADCON EFh E0h ACC ADCSELH ADCSEL ALTSEL P0SEL P1SEL P2SEL E7h D8h WDCON PWMCON PWMD DFh D0h PSW P0TYPE P1TYPE P2TYPE D7h C8h CFh C0h PMR STATUS C7h B8h IP OSCICN BFh B0h B7h A8h IE AFh A0h P2 A7h 98h SCON SBUF 9Fh 90h P1 EXIF 97h 88h TCON TMOD TL0 TL1 TH0 TH1 8Fh 80h P0 SP DPL DPH PCON 87h MiDAS1.1 Family [11]

6.2. SFR 에대한간략한설명 80C52 SFR 레지스터 MiDAS1.1에새로첨가된 SFR 레지스터 Family Register Name Reset Value Register Name Reset Value ACC B PSW SP DPTR DPL DPH P0 P1 P2 Accumulator B Program Status Word Stack Pointer Data Pointer (2 bytes) Low Byte High Byte Port 0 Port 1 Port 2 00000000 00000000 00000000 00000111 00000000 00000000 11111111 *****111 *1111111 P0SEL P1SEL P2SEL P0TYPE P1TYPE P2TYPE P0DIR P1DIR P2DIR ALTSEL Port 0 Pull-up Control Port 1 Pull-up Control Port 2 Pull-up Control Port 0 Type Control Port 1 Type Control Port 2 Type Control Port 0 Input/Output Control Port 1 Input/Output Control Port 2 Input/Output Control Alternative Function Control 00000000 ******11 *0000000 00000000 ******00 *0000000 11111111 *****111 *1111111 000000** IP IE Interrupt Priority Interrupt Enable Control 10*00000 00*00000 PWMCON PWMD PWM Control PWM Duty Data 0000*000 00000000 TCON TMOD TH0 TL0 TH1 TL1 SCON SBUF Timer/Counter 0/1 Control Timer/Counter 0 Mode Control Timer/Counter 0 High Byte Timer/Counter 0 Low Byte Timer/Counter 1 High Byte Timer/Counter 1 Low Byte Serial Control Serial Buffer 00000000 ****0000 00000000 00000000 00000000 00000000 ***0**00 00000000 PCON Power Control 0**10000 ADCON ADCR ADCSEL ADCSELH WDCON PMR EXIF EIP EIE STATUS OSCICN ADC Control & ADC Result Low ADC Result High ADC Channel Selection Low and MUX Selection ADC Channel Selection High Watchdog Timer Control Power Management Control Added External Interrupt and LVD Control Extended Interrupt Priority Extended Interrupt Enable Crystal Status Internal Ring Oscillator Control 00100000 00000000 11111111 11111111 11010000 ****0*** **000101 **00**00 **00**00 ***0**** *****100 * : 사용하지않는비트. MiDAS1.1 Family [12]

6.3. 명령어 Set 요약 더자세한것들은부록 A ( 명령어 Set) 를참조하라. Type Instruction Description Type Instruction Description Arithmetic Logical Data Transfer ADD ADDC SUBB INC DEC MUL DIV DA ANL ORL XRL CLR CPL RL RLC RR RRC SWAP MOV MOVC PUSH POP XCH XCHD Addition Addition with Carry Subtraction with Borrow Increment Decrement Multiply Divide Decimal Adjust AND OR Exclusive OR Clear Complement Rotate Left Rotate Left with Carry Rotate Right Rotate Right with Carry Swap Nibbles Move Data Move Code PUSH POP Exchange Exchange Low-digit Boolean Branch CLR SETB CPL ANL ORL MOV JC JNC JB JNB JBC ACALL LCALL RET RETI AJMP LJMP SJMP JMP JZ JNZ CJNE DJNZ NOP Clear bit Set bit Complement bit AND bit OR bit Move bit Jump if Carry is set Jump if Carry is not set Jump if bit is set Jump if bit is not set Jump if bit is set & clear Absolute Call Long Call Return from Subroutine Return from Interrupt Absolute Jump Long Jump Short Jump Jump with DPTR Jump if ACC is zero Jump if ACC is not zero Compare and Jump if not equal Decrement and Jump if not zero No Operation MiDAS1.1 Family [13]

6.4. CPU Timing Comparative timing of the MiDAS1.1 family and Intel 80C52 XTAL1 CORERIVER MiDAS1.1 IR ALE PSEN PORT0 PORT2 INST0 INST1 INST2 INST3 INST0 ADDL_1 INST1 ADDL_2 INST2 ADDL_3 INST3 ADDH_0 ADDH_1 ADDH_2 ADDH_3 S1 S2 S3 S4 1-byte 1-machine Cycle Instruction (4 clocks) 1-byte 1-machine Cycle Instruction (12 clocks) S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 XTAL1 Intel 80C52 IR ALE INST0 INST1 INST2 PSEN PORT0 ADDL_12 INST12 ADDL_21 INST21 ADDL_22 INST22 PORT2 ADDH_12 ADDH_21 ADDH_22 MiDAS1.1 Family [14]

6.4. CPU Timing : 수행시간표 세계에서가장빠른명령어수행 Instruction MiDAS1.1 (CORERIVER) W77C32 (Winbond) DS80C320 (Maxim) 87C52 (Intel) MUL AB DIV AB 12 clocks 20 clocks 20 clocks 48 clocks MOVC A, @A+PC MOVC A, @A+DPTR 8 clocks 8 clocks 12 clocks 24 clocks JMP @A+DPTR 8 clocks 8 clocks 12 clocks 24 clocks RET RETI 8 clocks 8 clocks 16 clocks 24 clocks INC DPTR 4 clocks 8 clocks 12 clocks 24 clocks Others Same Same Same - MiDAS1.1 Family [15]

6.5. 입출력단자 : PORT0[7:0] 기본지정으로 Pull-up 은 ON 되고 push-pull 출력상태가된다. P0[7:1] 은 ADC6 ~ ADC0 입력으로사용될수있다. 읽기-수정-쓰기명령어들은단자 pin이아니라 SFR 레지스터를읽는다. ANL / ORL / XRL / JBC / CPL / INC / DEC / DJNZ / MOV PX.Y, C / CLR PX.Y / SETB PX.Y P0는전원이인가된후 synchronous internal reset 에의해초기화되기전까지 Register 상태가정의되어있지않다. 만일전원인가직후 Port의상태가일정해야한다면 P1을이용하십시오. ADCSEL (E2h) : ADC 채널선택하위 & MUX 선택 ADC3B ADC2B ADC1B ADC0B CH3 CH2 CH1 CH0 R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) P0DIR.1 P0TYPE.1 P0SEL.1 ADCXB = 0 : ADCX 입력인에이블 & 디지털입력디세이블 P0TYPE (D4h) : Port 0 출력방식제어레지스터 P0TYPE.7 P0TYPE.6 P0TYPE.5 P0TYPE.4 P0TYPE.3 P0TYPE.2 P0TYPE.1 P0TYPE.0 Pullup R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) 0 = Push-pull 출력 ( 기본지정 ) P0DIR (F4h) : Port 0 입출력제어레지스터 CPU BUS Q P0.1 SFR QB 0 P0.1 P0DIR.7 P0DIR.6 P0DIR.5 P0DIR.4 P0DIR.3 P0DIR.2 P0DIR.1 P0DIR.0 R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) 0 = 출력 / 1 = 입력 ( 기본지정 ) Alternate Output Alternate Enable 1 P0SEL (E4h) : Port 0 Pull-up 제어레지스터 P0SEL.7 P0SEL.6 P0SEL.5 P0SEL.4 P0SEL.3 P0SEL.2 P0SEL.1 P0SEL.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) 0 = Pull-up 저항 ON ( 기본지정 ) 1 = ADC_EN (ADCON[7]) = 1 일때, pull-up 저항 OFF. P0 (80h) : Port 0 레지스터 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) Digital Input ADC0 Input ADC0B MiDAS1.1 Family [16]

6.5. 입출력단자 : PORT1[1:0] (XTAL1/XTAL2) XTAL1/XTAL2 은입출력단자로사용될수있다. 읽기 - 수정 - 쓰지명령어는단자 pin 이아니라 SFR 레지스터를읽는다. ANL / ORL / XRL / JBC / CPL / INC / DEC / DJNZ / MOV PX.Y, C / CLR PX.Y / SETB PX.Y P1 는 Asynchronous POR (Power-on-reset) 에의해전압인가와동시에 Register 가초기화된다. P1TYPE (D5h) : Port 1 출력방식제어레지스터 - - - - - - P1TYPE.1 P1TYPE.0 IOXEN P1DIR.0 P1TYPE.0 P1SEL.0 0 = Push-pull 출력 ( 기본지정 ) P1DIR (F5h) : Port 1 입출력제어레지스터 R/W(0) R/W(0) Pullup - - - - - P1DIR.2 P1DIR.1 P1DIR.0 0 = 출력 / 1 = 입력 ( 기본지정 ) P1SEL (E5h) : Port 1 Pull-up 제어레지스터 P1 (90h) : Port 1 레지스터 R/W(1) R/W(1) R/W(1) - - - - - - P1SEL.1 P1SEL.0 0 = Pull-up 저항 ON 1 = Pull-up 저항 OFF ( 기본지정 ) R/W(1) R/W(1) - - - - - P1.2 P1.1 P1.0 Q CPU BUS P1.0 SFR QB Digital Input Pullup AMP XTAL1 / P1.0 XTOFF R/W(1) R/W(1) R/W(1) ALTSEL (E3h) : Alternate 기능제어레지스터 IOXEN IORSTEN CLO PWM00 TV0 TX - - R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) IOXEN = 1 : XTAL1 과 XTAL2은입출력단자로사용된다. CPU BUS Q P1.1 SFR QB XTAL2 / P1.1 PMR (C4h) : 전력관리제어레지스터 Digital Input - - - - XTOFF - - - R/W(0) P1DIR.1 P1TYPE.1 P1SEL.1 MiDAS1.1 Family [17]

6.5. 입출력단자 : PORT1[2] (RESETB) RESETB 은입출력단자로사용될수있다. 읽기 - 수정 - 쓰지명령어는단자 pin 이아니라 SFR 레지스터를읽는다. ANL / ORL / XRL / JBC / CPL / INC / DEC / DJNZ / MOV PX.Y, C / CLR PX.Y / SETB PX.Y P1 는 Asynchronous POR (Power-on-reset) 에의해전압인가와동시에 Register 가초기화된다. P1DIR (F5h) : Port 1 입출력제어레지스터 - - - - - P1DIR.2 P1DIR.1 P1DIR.0 R/W(1) R/W(1) R/W(1) 0 = 출력 / 1 = 입력 ( 기본지정 ) P1 (90h) : Port 1 레지스터 - - - - - P1.2 P1.1 P1.0 CPU BUS Q P1.2 SFR QB RESETB / P1.2 R/W(1) R/W(1) R/W(1) IORSTEN ALTSEL (E3h) : Alternate 기능제어레지스터 P1DIR.2 IOXEN IORSTEN CLO PWM00 TV0 TX - - R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) IORSTEN = 1 : RESETB 은입출력단자로사용된다. Digital Input MiDAS1.1 Family [18]

6.5. 입출력단자 : PORT2[6:0] 기본지정으로 Pull-up 은 ON 되고 push-pull 출력상태가된다. P2[6:2] 은 ADC11 ~ ADC7 입력으로사용될수있다. 읽기-수정-쓰지명령어는단자 pin이아니라 SFR 레지스터를읽는다. ANL / ORL / XRL / JBC / CPL / INC / DEC / DJNZ / MOV PX.Y, C / CLR PX.Y / SETB PX.Y P2는전원이인가된후 synchronous internal reset 에의해초기화되기전까지 Register 상태가정의되어있지않다. 만일전원인가직후 Port의상태가일정해야한다면 P1을이용하십시오. ADCSELH (E1h) : ADC 채널선택상위레지스터 ADC11B ADC10B ADC9B ADC8B ADC7B ADC6B ADC5B ADC4B R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) P2DIR.2 P2TYPE.2 P2SEL.2 ADCXB = 0 : ADCX 입력인에이블 & 디지털입력디세이블 P2TYPE (D6h) : Port 2 출력방식제어레지스터 Pullup - P2TYPE.6 P2TYPE.5 P2TYPE.4 P2TYPE.3 P2TYPE.2 P2TYPE.1 P2TYPE.0 R/W(0)) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) 0 = Push-pull 출력 ( 기본지정 ) P2DIR (F6h) : Port 2 입출력제어레지스터 CPU BUS Q P2.2 SFR QB 0 P2.2 - P2DIR.6 P2DIR.5 P2DIR.4 P2DIR.3 P2DIR.2 P2DIR.1 P2DIR.0 R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) 0 = 출력 / 1 = 입력 ( 기볹지정 ) P2SEL (E6h) : Port 2 Pull-up 제어레지스터 - P2SEL.6 P2SEL.5 P2SEL.4 P2SEL.3 P2SEL.2 P2SEL.1 P2SEL.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) 0 = Pull-up 저항 ON 1 = ADC_EN(ADCON[3]) = 1 일때, pull-up 저항 OFF. P2 (A0h) : Port 2 레지스터 - P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) 1 Alternative Output Alternative Enable Digital Input ADC11 Input ADC11B MiDAS1.1 Family [19]

6.5. 입출력단자 : Feedback Pull-up Issue 내부 pull-up 저항들은 PnSEL SFR 의값을변경함에따라 ON/OFF 된다. ADC 기능으로도사용하는단자는 ADC_EN 를설정해야하며, 그러면내부 pull-up 저항이 Off 된다. XTAL1(P1.0), XTAL2(P1.1) 단자는 P1SEL SFR 의값에따라 pull-up 저항이 on/off 된다. 예제 XTAL1(P1.0), XTAL2(P1.1) 단자의 pull-up 저항 off P1SEL = 0x03; (0 = Pull-up 저항 ON ( 기본지정 ) / 1 = Pull-up 저항 (OFF) P0.1 단자 Pull-up 저항 off P0SEL = 0x02; (0 = Pull-up 저항 ON ( 기본지정 ) / 1 = Pull-up 저항 (OFF) ADCSEL &= 0xEF; (ADC0B = 0, Port 0.1 의내부 pull up 저항 Off) V SS P1.0 / XTAL1 P1.1 / XTAL2 VPP / P1.2 / RESETB T0 / P2.0 P2.1 ADC11 / P2.2 ADC10 / P2.3 ADC9 / P2.4 ADC8 / P2.5 1 2 3 4 5 6 7 8 9 10 GC87C510A0-SO20IP GC87C510A0-SP20IP 20 19 18 17 16 15 14 13 12 11 V DD P0.0 / INT0 / TVO P0.1 / ADC0 / INT1 / RXD P0.2 / ADC1 / INT2 / TXD P0.3 / ADC2 / INT3 P0.4 / ADC3 / AV REF P0.5 / ADC4 P0.6 / ADC5 / PWM P0.7 / ADC6 P2.6 / ADC7 / CLO [ 20-SOIC / 20-SPDIP] 20-SOIC 16/8-SOIC : Wide : Narrow MiDAS1.1 Family [20]

6.6. PAD 의 ESD 보호구조 두개의 ESD diode 와하나의 ESD 저항이 VPP/P1.2/RESETB 를제외한모든 PAD 에포함되어있다. 하나의 ESD diode 와하나의 ESD 저항이 VPP/P1.2/RESETB 에포함되어있다. [VPP/P1.2/RESETB 를제외한모든 PAD] [VPP/P1.2/RESETB] 두개의 ESD Diode (V DD 쪽, GND 쪽 ) 하나의 ESD 저항 하나의 ESD Diode (GND 쪽 ) 하나의 ESD 저항 MiDAS1.1 Family [21]

V DD [V] 6.7. LVD (Low Voltage Detector) On-chip power-on reset : 2.3V EXIF (91h) : 외부인터럽트확장플래그 On-chip 전원오류 reset : 2.3V - - IE3 IE2 XT/RG RGMD RGSL BGS BGS : R/W(0) R/W(0) R/W(0) R(1) R/W(0) R/W(1) Band-gap 선택 0 = 정지모드에서 Band-gap block (LVD) 정지, 그러나정상모드에서동작. 1 = 정지모드에서 Band-gap block (LVD) 동작. PCON (87h) : 전력제어레지스터 SMOD1 - - POF GF1 GF0 PD IDL R/W(0) R/W(1) R/W(0) R/W(0) R/W(0) R/W(0) POF : 전원꺼짐플래그. 전원이켜지면, 하드웨어에의해 POF가 1이됨. PD : 정지모드비트 PCON.1 EXIF.0 5.0 PD BGS 2.3 A B 0 POR Pulse 2.3V 2.3V TIME LVD_OFF LVD POR Pulse PCON.4 POF POR Reset MiDAS1.1 Family [22]

6.8. WDT (Watchdog Timer) 외부잡음이나다른원인들로인하여프로그램이오동작하는것을검출한다. WDT 인터럽트를사용하여동작을정상상태로돌린다. 인에이블이되어있으면 WDT 인터럽트또는 WDT reset 이정지모드 2 에서 MCU 를깨운다. Watchdog Time-out 값 WD1 WD0 Interrupt Time-out (@4MHz) Reset Time-out (@4MHz) 0 0 1x2 16 clocks 16.38 ms 1x2 16 + 256 clocks 16.45 ms 0 1 4x2 16 clocks 65.54 ms 4x2 16 + 256 clocks 65.60 ms 1 0 16x2 16 clocks 262.14 ms 16x2 16 + 256 clocks 262.21 ms 1 1 32x2 16 clocks 524.29 ms 32x2 16 + 256 clocks 524.35 ms WDCON (D8h) : Watchdog Timer 제어레지스터 WD1 WD0 - - WDIF WTRF EWT RWT R/W(1) R/W(1) R/W(0) R/W(1) R/W(0) R/W(0) R/W(0) R/W(0) WD[1:0] : WDT 클럭분주 (1/4/8/32) WDIF : Watchdog Timer 인터럽트플래그 WTRF : Watchdog Timer Reset 플래그. 오직소프트웨어에의해소거된다. EWT : Watchdog Timer Reset 인에이블 RWT : Watchdog Timer 재출발 WDCON[7:6] WD1 WD0 EIE.4 EWDT F OSC / 1 F OSC / 4 F OSC / 16 F OSC / 32 00 01 10 11 Clock 16-bit Counter 0 15 2 16 Overflow WDCON.3 WDIF 256 clocks Delay Interrupt WDT Reset RESET RWT WDCON.0 EWT WDCON.1 WTRF WDCON.2 * MiDAS1.1 제품군의경우, RWT 는오직 WDT 모드 0(WD[1:0] = [0,0]) 에서사용된다. (Application Note #009 (AN009) 참조 ) MiDAS1.1 Family [23]

6.9. Timer/Counter : Timer 0/1 전통적인 80C52 타이머 / 카운터와기능호환 Time base 는 12 클럭주기이다. TCON (88h) : Timer/Counter 0/1 제어레지스터 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) 모드 Timer 모드 0 모드 1 (M1,M0=00) (M1,M0=01) Timer0 13-bit T/C 16-bit T/C Timer1 지원안함 모드 2 (M1,M0=10) 8-bit T/C 자동재입력 (TL0 TH0) 8-bit T/C 자동재입력 (TL1 TH1) 모드 3 (M1,M0=11) 8-bit T/C (TL0) Timer0 interrupt 8-bit T/C (TH0) Timer1 interrupt 지원안함 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 : Timer 1 오버플로우 : Timer 1 동작 : Timer 0 오버플로우 : Timer 0 동작 : External Interrupt 1 플래그 : External Interrupt 1 촉발방식선택 Edge 촉발 (IT1=1). Level 촉발 (IT1=0) : External Interrupt 0 플래그 : External Interrupt 0 촉발방식선택 Edge 촉발 (IT0=1). Level 촉발 (IT0=0) TL0 (8Ah) : Timer/Counter 0 하위바이트레지스터 TMOD (89h) : Timer/Counter 0 모드제어레지스터 - - - - GATE C/T M1 M0 R/W(0) R/W(0) R/W(0) R/W(0) GATE[3] : Timer 0 Gate 제어 C/T[2] : Timer 0 선택. 0 = F OSC /12을계수하는타이머. ( 기본지정 ) 1 = T0 pin 입력을계수하는카운터. M1, M0 : Timer 0 모드선택 [0,0] : 모드 0. 13-bit T/C. [0,1] : 모드 1. 16-bit T/C. [1,0] : 모드 2. 8-bit T/C 자동재입력 [1,1] : 모드 3. Two 8-bit T/C TL0.7 TL0.6 TL0.5 TL0.4 TL0.3 TL0.2 TL0.1 TL0.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) TH0 (8Ch) : Timer/Counter 0 상위바이트레지스터 TH0.7 TH0.6 TH0.5 TH0.4 TH0.3 TH0.2 TH0.1 TH0.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) TL1 (8Bh) : Timer/Counter 1 하위바이트레지스터 TL1.7 TL1.6 TL1.5 TL1.4 TL1.3 TL1.2 TL1.1 TL1.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) TH1 (8Dh) : Timer/Counter 1 상위바이트레지스터 TH1.7 TH1.6 TH1.5 TH1.4 TH1.3 TH1.2 TH1.1 TH1.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) MiDAS1.1 Family [24]

6.9. Timer/Counter : Timer 0 모드설명 TMOD.2 TMOD.2 F OSC 1/12 C/T F OSC 1/12 C/T T0 PIN 0 1 CONTROL TL0 TH0 (5bits) (8bits) TF0 Interrupt T0 PIN 0 1 CONTROL TL0 TH0 (8bits) (8bits) TF0 Interrupt TR0 TR0 GATE INT0 PIN When C/T = 0 (Default), FOSC Time[sec] 12 1 2 13 GATE INT0 PIN When C/T = 0 (Default), FOSC Time[sec] 12 1 2 16 [ 모드 0] [ 모드 1] F OSC 1/12 T0 PIN GATE INT0 PIN TR0 TMOD.2 0 1 C/T CONTROL TL0 (8bits) TH0 (8bits) RELOAD When C/T = 0 (Default), FOSC Time[sec] 12 TF0 1 2 8 Interrupt TH0 F OSC 1/12 T0 PIN GATE INT0 PIN F OSC 1/12 TMOD.2 0 1 C/T TR0 TR1 CONTROL CONTROL TL0 (8bits) TH0 (8bits) TF0 TF1 Timer 0 Interrupt Timer 1 Interrupt [ 모드 2] [ 모드 3] MiDAS1.1 Family [25]

6.9. Timer/Counter : Timer 1 모드설명 F OSC 1/12 CONTROL TL1 (8bits) TF1 Interrupt TR1 RELOAD TH1 (8bits) [ 모드 2] MiDAS1.1 Family [26]

6.10. UART 간소화된 8052 UART ( 오직 UART 모드 1 만지원한다.) PCON (87h) : 전력제어레지스터 SMOD1 - - POF GF1 GF0 PD IDL Data Size Baudrate R/W(0) R/W(1) R/W(0) R/W(0) R/W(0) R/W(0) 모드 1 10 bits Start bit(0) 8 data bit Stop bit(1) 1/32 x Timer 1 오버플로우 (SMOD1=0) 1/16 x Timer 1 오버플로우 (SMOD1=1) SMOD1 : UART 모드에서타이머 1 보레이트 2 배. SCON (98h) : 직렬단자제어레지스터 - - - REN - - TI RI UART 모드 1 (Timer 1 오버플로우사용 ) 2 SMOD1 1 Baudrate = X F OSC X 32 12 X [ 256 (TH1) ] Baudrate UART 모드 [Baudrate Examples] F OSC [MHz] SMOD1 C/T Timer 1 모드 Reload Value (TH1) R/W(0) R/W(0) R/W(0) REN : 직렬수신인에이블. TI : 송신인터럽트플래그. 소프트웨어가소거해야한다. RI : 수신인터럽트플래그. 소프트웨어가소거해야한다. SBUF (99h) : 직렬데이터버퍼레지스터 SBUF.7 SBUF.6 SBUF.5 SBUF.4 SBUF.3 SBUF.2 SBUF.1 SBUF.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) 송신버퍼와수신버퍼는분리되어있다. 읽기와쓰기주소는같다. 62.5 KHz 19.2 KHz 9.6 KHz 4.8 KHz 2.4 KHz 1.2 KHz 137.5 Hz 110 Hz 모드 1 12 11.0592 11.0592 11.0592 11.0592 11.0592 11.0592 6 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 모드 2 8-bit Auto-reload FFh FDh FDh FAh F4h E8h 1Dh 72h MiDAS1.1 Family [27]

6.10. UART : 모드 1 기능 0 Internal BUS SMOD Timer 1 Overflow 1/2 0 1 Write to SBUF D CL S Q SBUF Zero Detector TXD 1/16 Serial Port Interrupt Sample 1-to-0 Transition Detector START SHIFT TX CONTROL TX CLOCK TI 1/16 RX CLOCK RI RX CONTROL START 1FFh DATA SEND LOAD SBUF SHIFT Bit Detector RXD Input Shift Register (9 bits) Load SBUF Shift SBUF Read SBUF Internal BUS MiDAS1.1 Family [28]

6.10. UART : 모드 1 타이밍 [Transmit] TX Clock Write to SBUF SEND S1 Data Shift TXD Start bit D0 D1 D2 D3 D4 D5 D6 D7 Stop bit TI [Receive] /16 Reset RX CLOCK RXD Start bit D0 D1 D2 D3 D4 D5 D6 D7 Stop bit Bit Detector Sample Times Shift RI MiDAS1.1 Family [29]

6.11. PWM (Pulse Width Modulator) 지능형 1- 채널 8-bit PWM PWM 카운터갱신모드 (8-bit 카운터오버플로우때갱신 ) PWM 카운터는소프트웨어에의해소거될수있다. PWM 는소프트웨어에의해정지하거나출발 ( 재개 ) 된다. F OSC Clock Divide (1/2/4/8/16/32/64/128) PWMCON[6:4] F PWM PWM Clock to ADC (except of F OSC /1) 7 6 PWM Counter 5 4 3 2 8-bit 1 0 Overflow Set Clear PWM Pulse Generation P0SEL P0.6 P0.0 PWMCON (DCh) : PWM 제어레지스터 P0SEL PS2_P0 PS1_P0 PS0_P0 - PWMF CLR_P0 RUN_P0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) P0SEL : P0.6으로 PWM 파형출력인에이블 PS2_P0, PS1_P0, PS0_P0 : 클럭분주비선택. [0,0,0] = F OSC /1, [0,0,1] = F OSC /2, [0,1,0] = F OSC /4, [0,1,1] = F OSC /8, [1,0,0] = F OSC /16, [1,0,1] = F OSC /32, [1,1,0] = F OSC /64, [1,1,1] = F OSC /128 * PWM 클럭 (F PWM ) 이 F OSC /1이아니면 ADC에사용가능. PWMF : PWM 인터럽트플래그. 소프트웨어에의해소거 CLR_P0 : 카운터계수값소거. 하드웨어에의해소거. RUN_P0 : 카운터동작. PWMD (DEh) : PWM Duty 데이터레지스터 Comparator PWM00 PWMD.7 PWMD.6 PWMD.5 PWMD.4 PWMD.3 PWMD.2 PWMD.1 PWMD.0 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) 8-bit Buffer ALTSEL (E3h) : Alternate 기능제어레지스터 IOXEN IORSTEN CLO PWM00 TV0 TX - - PWMD R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) PWM00 : P0.0 으로 PWM 파형출력인에이블 MiDAS1.1 Family [30]

6.11. PWM : Pulse Generation Clock Count 000h Clock Count 100h Clock Count 200h Clock Count 300h Clock Count 400h PWM Clock (F OSC /1) PWM Out (PWMD = 00h) Low PWM Out (PWMD = 01h) 1 Clock Cycle PWM Out (PWMD = 80h) (50% Duty) PWM Out (PWMD = FFh) 1 Clock Cycle MiDAS1.1 Family [31]

6.12. ADC (Analog-to-Digital Converter) 12- 채널 10-bit ADC (SAR Type) 최대 104ksps( 초당 sample 수 ) @ F ADC = 10MHz & 5V. ( 최대 52ksps @ F ADC = 5MHz & 3V) ADCSELH (E1h) : ADC 채널선택상위레지스터 ADC11B ADC10B ADC9B ADC8B ADC7B ADC6B ADC5B ADC4B R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) ADCSEL (E2h) : ADC 채널선택하위 & MUX 선택레지스터 ADC3B ADC2B ADC1B ADC0B CH3 CH2 CH1 CH0 R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) R/W(1) ADCON (EFh) : ADC 제어 & ADC 결과하위레지스터 AD_EN AD_REQ AD_END ADCF AVREF ADIV SAR1 SAR0 R/W(0) R/W(0) R(1) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) ADCR (EEh) : ADC 결과상위레지스터 SAR9 SAR8 SAR7 SAR6 SAR5 SAR4 SAR3 SAR2 R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) ADC0B CH[3:0] AD_EN AD_REQ PWM Clock (F PWM ) except of F OSC /1 F OSC / 2 ADC0 (P0.1) Control Circuit ADIV 1 0 F ADC ADC1 (P0.2) ADC1B ADC11B Analog MUX D/A Converter Analog Comparator Successive Approximation Register SAR[9:0] AD_END ADCF ADC Interrupt Flag ADC11 (P2.2) AVREF 1 0 ADCR SAR[9:2] ADCON SAR[1:0] AV REF (P0.4) V DD V SS 9 8 7 6 5 4 3 2 1 0 MiDAS1.1 Family [32]

6.12. ADC : 변환타이밍 AD_EN Set by S/W AD_REQ Set by S/W Cleared by H/W AD_END Cleared by H/W 8F ADC Set by H/W Valid Bit Setup Time 9 8 7 6 5 4 3 2 1 0 Hold Time 8F ADC (8F ADC ) x 10 bits = 80F ADC 8F ADC ADCF 96F ADC Set by H/W ADC Interrupt AD_EN : ADC Block 인에이블 l. 소프트웨어에의하여설정되고소거됨. AD_REQ : ADC 변환요구. 소프트웨어가설정하고하드웨어가소거함. 각샘플을변환할때마다설정되어야한다. AD_END : 하드웨어에의해설정되고소거됨. 변환이시작될때소거됨. 변환이끝날때설정됨. ADCF : ADC 인터럽트플래그. 하드웨어가설정하고소프트웨어가소거함. ADC 인터럽트처리루틴에서 ADCF 를소거해야함. System Clock (F OSC ) [ 클럭주파수별 ADC 변환시간표 ] Divide (ADIV=0) F ADC T ADC (1/F ADC ) 1 Sample Conversion Time 20MHz @ 5V F OSC /2 10MHz 100ns 9.6us 10MHz @ 5V F OSC /2 5MHz 200ns 19.2us 10MHz @ 3V F OSC /2 5MHz 200ns 19.2us 5MHz @ 3V F OSC /2 2.5MHz 400ns 38.4us MiDAS1.1 Family [33]

PRIORITY 6.13. 인터럽트 : 11 개발생원 / 2-level 우선순위 10 개의인터럽트발생원 Timer 0/1, UART, ADC, WDT, PWM, 4 개의외부. 2-level 인터럽트우선순위 * Interrupt related to SFR (refer to Appendix B : SFR Description) TCON (88h) TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 EXIF (91h) - - IE3 IE2 XT/RG RGMD RGSL BGS [Interrupt Vector Address] IE (A8h) EA EADC - ES ET1 EX1 ET0 EX0 HIGH LOW Interrupt Sources Address Priority Level INT0 0003h 2 Levels TF0 000Bh 2 Levels INT1 0013h 2 Levels TF1 001Bh 2 Levels RI+TI 0023h 2 Levels ADC 003Bh 2 Levels INT2 0043h 2 Levels INT3 004Bh 2 Levels WDT 0063h 2 Levels PWM 006Bh 2 Levels IP EIE EIP Interrupt Sources (B8h) (E8h) (F8h) WDCON (D8h) PWMCON (DCh) Interrupt Flag bits - PADC - PS PT1 PX1 PT0 PX0 - PPWM PWDT - - PX3 PX2 WD1 WD0 - - WDIF WTRF EWT RWT [Interrupt Vector Generation Flow] Individual Enable bits - - EPWM EWDT - - EX3 EX2 P0SEL PS2_P0 PS1_P0 PS0_P0 - PWMF CLR_P0 RUN_P0 Global Enable bits Priority bits Polling & Vector Generation Interrupt Vector 0003h IE0 EX0 EA PX0 0003h [Response Sequence] Sample & Flag Set Polling LCALL Service Routine Last Cycle & High Priority & Not-update Interrupt Register MiDAS1.1 Family [34]

6.13. 인터럽트기능적설명 INT0 IT0 0 Flag Bits IE0 Interrupt Enable Bits EX0 EA Priority PX0 1 0 High Priority High Priority High Priority Interrupt Low Priority Interrupt Timer/Counter 0 INT1 Timer/Counter 1 UART ADC INT2 INT3 IT1 1 0 1 RI TI TF0 IE1 TF1 ADCF IE2 IE3 ET0 EX1 ET1 ES EADC EX2 EX3 PT0 PX1 PT1 PS PADC PX2 PX3 1 1 1 1 1 1 1 0 0 0 0 0 0 0 Interrupt Polling Sequence Interrupt Vector WDT WDIF EWDT PWDT 1 0 PWM PWMF EPWM PPWM 1 0 Low Priority MiDAS1.1 Family [35]

6.14. Reset 회로 : 3 개의 Reset 발생원 LVD(POR) Reset 전원을켤때, Power-on Reset. V RST 아래로떨어질때전력오류리셋 External RESET Pin RESETB Pin 은최소 24 클럭주기를 L 상태를유지해야한다. 링오실레이터가동작해야한다. 주의, Reset 신호가 Glitch 잡음이아니어야한다. WDT Reset : 소프트웨어에의해동작여부선택함 WDCON (D8h) : Watchdog Timer 제어레지스터 WD1 WD0 - - WDIF WTRF EWT RWT R/W(1) R/W(1) R/W(0) R/W(1) R/W(0) R/W(0) R/W(0) R/W(0) WTRF : Watchdog Timer Reset 플래그. 소프트웨어만소거함. EWT : Watchdog Timer Reset 인에이블. V DD LVD POR LVD RESET Generation RESETB External RESET Generation (Min. 24 Clocks Period) Internal RESET WTRF Clock WDT 16 bits Counter Delay 256 Clocks WDT RESET Generation Initialize EWT MiDAS1.1 Family [36]

6.15. 클럭회로 2 개의시스템클럭발생원 : 링발진기나외부크리스탈 링발진기로시스템클럭은기본지정됨 링발진기를사용하여정지모드에서신속하게탈출 EXIF (91h) : 외부인터럽트플래그레지스터 - - IE3 IE2 XT/RG RGMD RGSL BGS R/W(0) R/W(0) R/W(0) R(1) R/W(0) R/W(1) OSCICN (BEh) : 내부링발진기제어레지스터 XT/RG 제어플래그 XTOFF RINGON RGSL 시스템클럭 RGMD 상태 Bit XTUP - - - - - RINGON DIV1 DIV0 R/W(1) R/W(0) R/W(0) STATUS (C5h) : 크리스탈상태레지스터 1 0 X X 크리스탈발진기 0 1 0 X 1 X 링발진기 1 0/1 1 0 X 0 0 X 1 1 크리스탈발진기 ( 정지모드탈출하는동안 ) 링발진기 ( 정지모드탈출하는동안 ) 0 0 1 0 - - - XTUP - - - - R(0) PMR (C4h) : 전력관리제어레지스터 - - - - XTOFF - - - R/W(0) PCON (87h) : 전력제어레지스터 SMOD1 - - POF GF1 GF0 PD IDL R/W(0) R/W(1) R/W(0) R/W(0) R/W(0) R/W(0) PD XTOFF XTUP Crystal OSC. Ring OSC. 3.65MHz Clock Stable Circuit (16-bit Counter) 1/2/4/8 Divide Crystal OSC. Ring OSC. Clock Switch Control F OSC (System Clock) Peri. Clock CPU Clock PD RINGON DIV1 DIV0 RGMD XT/RG RGSL PD IDL MiDAS1.1 Family [37]

6.15. 클럭회로 : 구성을위한지침 크리스탈발진기 ( 오직 A0 계열 ) 발진기모듈 내부링발진기 XTAL2 MiDAS XTAL2 MiDAS XTAL2 MiDAS XTAL1 XTAL1 XTAL1 Ring OSC. OSC Oscillator Module RC Oscillator MiDAS1.1 Family [38]

MiDAS Family CORERIVER Semiconductor reserves the right to make corrections, modifications, enhancements, improvements, and other changes to its products and services at any time. CORERIVER shall give customers at least a three month advance notice of intended discontinuation of a product or a service through its homepage. Customers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. The CORERIVER products listed in this document are intended for usage in general electronics applications. These CORERIVER products are neither intended nor warranted for usage in equipment that requires extraordinarily high quality and/or reliability or a malfunction or failure of which may cause loss of human life or bodily injury. www.coreriver.com (E-mail : tech@coreriver.com)

6.16. 전력관리 : 3 가지모드 Active 모드 : CPU 와주변회로동작. Idle 모드 : 오직주변회로만동작. 모든종류의인터럽트로탈출. CPU 는동작재개. 그러나, WDT 와 level 촉발인터럽트는제외된다. 모든종류의 reset 으로탈출. CPU 는재출발. 정지모드 1/2 : CPU 와주변회로정지. 정지모드 1 : WDT 가정지 외부인터럽트 INT0/INT1 (level 촉발 ) 에의해탈출. CPU 동작재개. 모든종류리셋으로탈출. (ex: RESETB, LVD. etc) CPU 는재출발. 정지모드 2 : WDT 가동작 외부인터럽트 INT0/INT1 (level 촉발 ) 또는 WDT 인터럽트로탈출. CPU 는동작재개. 모든종류의 reset 으로탈출. (ex: RESETB, LVD,.etc) CPU 재출발. PCON (87h) : 전력제어레지스터 SMOD1 - - POF GF1 GF0 PD IDL R/W(0) PD : 정지모드 (Power-down). IDL : IDLE 모드. R/W(1) R/W(0) R/W(0) R/W(0) R/W(0) IDL C C XTAL2 XTAL1 CPU On-chip AMP PD Ring OSC. PD Peripheral (Interrupt / Timer / UART / ADC / PWM / WDT / PORT) MiDAS1.1 Family [40]

7. 강점 : On-Chip POR On-Chip POR (Power On Reset) 으로필요없는커패시터를제거하여시스템비용을삭감할수있다. 1 kohms MiDAS1.1 RESETB Cap. is not needed On-Chip POR MiDAS1.1 Family [41]

8. 전력전압상승기울기지침 전력전압의상승기울기는 0.0V/us 에서 1.0V/500us(5V/2.5ms) 의범위에있어야한다. ( 이것은전력전압이정상상태에도달할때까지단조증가해야한다는것을포함한다.) [ VDD ] 5 V Power Slope 1 V 500 us 2.5 ms MiDAS1.1 Family [42]

9. 절대최대동작범위한계 항목조건범위 접지에대한 pin 전압 - -0.5V 에서 (V DD +0.5V) 접지에대한 V DD 전압 - -0.5V 에서 6.5V 출력전압 - -0.5V 에서 (V DD +0.5V) Current High 상태출력전류 단일입출력 pin 동작 모든입출력 pin 동작 -25mA -100mA Low 상태출력전류 단일입출력 pin 동작 모든입출력 pin 동작 +30mA +150mA 동작온도 - -40 o C 에서 120 o C 저장온도 - -65 o C 에서 +150 o C 무연납땜온도 - 250 또는 260 o C 피크, 피크온도에서 5 o C 이내 20 초 MiDAS1.1 Family [43]

10. DC 특성 * 별도로기술되지않았다면, TA = = -20 o C ~ +85 o C, V DD = 2.4V ~ 5.5V. 파라메터기호 Pin 조건 값 최소보통최대 단위 Low 입력전압 High 입력전압 V IL1 P0, P2-0.5-0.2V DD -0.1 V DD = 2.4V~5.5V V IL2 XTAL1, XTAL2, RESETB -0.5-0.3V DD V IH1 P0, P2 0.2V DD +1.0 - V DD +0.5 V DD = 2.4V~5.5V V IH2 XTAL1, XTAL2, RESETB 0.7V DD - V DD +0.5 V V Low 출력전압 V OL1 V OL2 XTAL1, XTAL2, P0, P2 RESETB I OL = 20mA @V DD =5V (I OL = 5mA @V DD =2.6V) I OL = 10mA @V DD =5V (I OL = 2.5mA @V DD =2.6V) - - 0.3V DD - - 0.3V DD V V OH XTAL1, XTAL2, P0, P2 I OH = -15mA @V DD =5V (I OH = -2.5mA @V DD =2.6V) 0.7V DD - - V High 출력전압 V OHP1 P0, P2 (pull-up resistor only) I OH = -140uA @V DD =5V (I OH = -20uA @V DD =2.6V) 0.7V DD - - V V OHP2 XTAL1, XTAL2 (pull-up resistor only) I OH = -10uA @V DD =5V (I OH = -1.5uA @V DD =2.6V) 0.7V DD - - V Input 누설전류 I IL XTAL1,XTAL2 제외한모든 pin V IN = V IH or V IL - - ±1 A Pin 캐패시턴스 C IO 모두 V DD = 5V - 10 - pf MiDAS1.1 Family [44]

11. AC 특성 * 기재되지않았으면 TA = -20 o C ~ +85 o C. 파라메터기호 Pin 조건 값 Min. Typ. Max. 단위 동작주파수 F OSC XTAL1, XTAL2 RESETB 입력폭 t RST RESETB V DD = 5V ± 10% 1-20 V DD = 3V ± 10% 1-10 V DD = 5V ± 10% 24 - - V DD = 3V ± 10% 24 - - MHz F OSC 외부인터럽트입력폭 t INT External Interrupt V DD = 5V ± 10% 4 - - V DD = 3V ± 10% 4 - - F OSC t RST RESETB 0.2V DD 0.2V DD t INT External Interrupt Pin 0.8V DD 0.8V DD 0.2V DD 0.2V DD t INT MiDAS1.1 Family [45]

12. ADC 특성 파라메터기호조건 값 최소보통최대 Unit 전력전압 V DDADC - 2.4-5.5 V 입력전압 V INADC - V SS - V DD V 해상도 RES ADC - - 10 - bit 동작주파수 F ADC V DD = 4.5V ~ 5.5V V DD = 2.4V ~ 3.3V - - 10 5 MHz 변환시간 t ADC - - 96 / F ADC - s 전체적정확성 OA ADC V DD =5V, F ADC =10MHz V DD =3V, F ADC =5MHz 전체적비선형성 INL ADC V DD =5V, F ADC =10MHz V DD =3V, F ADC =5MHz Differential 비선형성 DNL ADC V DD =5V, F ADC =10MHz V DD =3V, F ADC =5MHz 0 입력오류 ZIE ADC V DD =5V, F ADC =10MHz V DD =3V, F ADC =5MHz 최대입력오류 FSE ADC V DD =5V, F ADC =10MHz V DD =3V, F ADC =5MHz - ±2 ±4 LSB - ±2 ±4 LSB - ±0.5 ±1 LSB - ±2 ±4 LSB - ±2 ±4 LSB 아날로그입력커패시턴스 C INADC - - 10 15 pf ADC 전류 V DD = 5V, F ADC =10MHz - 1 2 Active ma V DD = 3V, F ADC =5MHz - 0.3 0.6 I ADC 정지 V DD = 5V - - 100 na MiDAS1.1 Family [46]

13. Package Dimensions : 20-PDIP [20-SPDIP] E 1 A L A 2 S D 20 11 20 pins 1 10 B B 1 e 1 A 1 Base Plane Seating Plane a E c e A Symbol Dimension in Inches Dimension in mm Min. Nom. Max. Min. Nom. Max. A - - 0.200 - - 5.080 A 1 0.015 - - 0.381 - - A 2 0.150 0.155 0.160 3.810 3.937 4.064 B 0.016 0.018 0.022 0.406 0.457 0.559 B 1 0.045 0.055 0.065 1.143 1.397 1.651 c 0.008 0.010 0.012 0.203 0.254 0.356 D 1.045 1.055 1.075 26.543 26.797 27.305 E 0.290 0.300 0.310 7.366 7.62 7.874 E 1 0.249 0.250 0. 251 6.10 6.35 6.60 e 1 0.090 0.100 0.110 2.286 2.540 2.794 L 0.120 0.130 0.140 3.048 3.302 3.556 a 0-15 0-15 e A 0.330 0.350 0.370 8.382 8.89 9.398 S - - 0.090 - - 2.286 Notes: 1. Dimension D Max. & S include mold flash or tie bar Burns. 2. Dimension E 1 dose not include interlead flash. 3. Dimension D & E 1 include mold mismatch and are determined at the mold parting line. 4. Dimension B 1 does not include dambar protrusion/intrusion. 5. General appearance spec. should be based on final visual inspection spec. MiDAS1.1 Family [47]

13. Package Dimensions : 16-TSSOP H D [16-TSSOP] D 16 9 16 pins 1 8 E H E m L L 1 a Symbol Dimension in Inches Dimension in mm Min. Nom. Max. Min. Nom. Max. A 0.037 0.039 0.041 0.95 1.00 1.05 A 1 0.015 0.017 0.019 0.3865 0.4365 0.4865 b 0.008 0.009 0.009 0.20 0.22 0.24 D 0.176 0.179 0.182 4.47 4.55 4.63 E 0.171 0.173 0.175 4.35 4.4 4.45 H D 0.200 0.202 0.204 5.077 5.127 5.177 H E 0.248 0.252 0.248 6.30 6.40 6.30 L 0.033 0.037 0.041 0.85 0.95 1.05 L 1 0.020 0.024 0.028 0.50 0.60 0.70 a 1 3 5 1 3 5 e 0.026 BSC 0.65 BSC m 10 12 14 10 12 14 Seating Plane e A 1 A Notes: 1. Dimension D & E include mold mismatch and are determined at the mold parting line. 2. General appearance spec. should be based on final visual inspection spec. b MiDAS1.1 Family [48]

13. Package Dimensions : 20/16-SOP [20-SOP] H D D 20 11 20 pins 1 10 E H E m L L 1 a Symbol Dimension in Inches Dimension in mm Min. Nom. Max. Min. Nom. Max. A 0.093 0.099 0.104 2.35 2.45 2.65 A 1 0.004 0.008 0.012 0.10 0.20 0.30 b 0.014 0.016 0.019 0.35 0.42 0.49 D - 0.450 - - 11.43 - E 0.291 0.295 0.299 7.40 7.50 7.60 H D 0.496 0.504 0.512 12.60 12.80 13.00 H E 0.404 0.411 0.419 10.26 10.45 10.65 L 0.057 0.058 0.060 1.43 1.48 1.53 L 1 0.034 0.038 0.042 0.86 0.96 1.07 a 0-8 0-8 e 0.050 BSC 1.27 BSC m 0.020 0.025 0.030 0.50 0.62 0.75 Seating Plane b e A 1 A Notes: 1. Dimension D & E include mold mismatch and are determined at the mold parting line. 2. General appearance spec. should be based on final visual inspection spec. [16-SOP] 16 9 16 pins 1 8 m L L 1 a Symbol Dimension in Inches Dimension in mm Min. Nom. Max. Min. Nom. Max. A 0.093 0.099 0.104 2.35 2.45 2.65 A 1 0.004 0.008 0.012 0.10 0.20 0.30 b 0.014 0.016 0.019 0.35 0.42 0.49 D -.350 - - 8.89 - E 0.150 0.153 0.157 3.80 3.90 4.00 H D 0.398 0.405 0.413 10.10 10.29 10.50 H E 0.234 0.239 0.244 5.95 6.07 6.20 L 0.038 0.043 0.048 0.97 1.08 1.2 L 1 0.022 0.027 0.032 0.58 0.70 0.82 a 0-8 0-8 e 0.050 BSC 1.27 BSC m 0.010 0.015 0.020 0.25 0.37 0.50 Seating Plane e A 1 A Notes: 1. Dimension D & E include mold mismatch and are determined at the mold parting line. 2. General appearance spec. should be based on final visual inspection spec. b MiDAS1.1 Family [49]

13. Package Dimensions : 8-SOP [8-SOP] H D D 8 5 8 pins 1 4 E H E m L L 1 a Symbol Dimension in Inches Dimension in mm Min. Nom. Max. Min. Nom. Max. A 0.093 0.099 0.104 2.35 2.45 2.65 A 1 0.004 0.008 0.012 0.10 0.20 0.30 b 0.014 0.016 0.019 0.35 0.42 0.49 D - 0.150 - - 3.81 - E 0.150 0.153 0.157 3.80 3.90 4.00 H D 0.189 0.193 0.197 4.80 4.90 5.00 H E 0.234 0.239 0.244 5.95 6.07 6.20 L 0.038 0.043 0.048 0.97 1.08 1.2 L 1 0.022 0.027 0.032 0.58 0.70 0.82 a 0-8 0-8 e 0.050 BSC 1.27 BSC m 0.010 0.015 0.020 0.25 0.37 0.50 Seating Plane e A 1 A Notes: 1. Dimension D & E include mold mismatch and are determined at the mold parting line. 2. General appearance spec. should be based on final visual inspection spec. b MiDAS1.1 Family [50]

14. Product Numbering System G C X X X X X X X X - X X X X X X X X General Core MCU Series Core Type 8 = 8 bits 16 = 16 bits 32 = 32 bits Version P = Pb-Free Temperature C = 0 o C~ 70 o C I = -20 o C ~ 85 o C E = -40 o C ~ 85 o C A = -40 o C ~ 125 o C ROM Type 0 = ROMless 1 = Mask ROM 7 = EPROM 8 = EEPROM 9 = FLASH Operating Voltage C = Common (2.7V ~ 5.5V) L = Low Voltage (1.2V ~ 2.7V) ROM Size 320 = ROMless 500 = 2KB 501 = 1KB 510 = 4KB 520 = 8KB 54X = 16KB 58X = 32KB 59X = 64KB Package Type P = PDIP SP = SPDIP PL = PLCC SO = SOIC SS = SSOP Application Custom ROM Code G = General (Option) A = ADC B = Battery L = LCD U = USB P = Printer E = Edu./Toy T = Telecom H = Home Application Package Pins TS = TSSOP LQ = LQFP MQ = MQFP TQ = TQFP CO = COB ML = MLF WL = WLCSP W = Wafer Biz. C = Chip Biz. MiDAS1.1 Family [51]

15. 지원툴 MDS (Microprocessor Development System) In-Circuit Debugger Easy-to-Use GUI Code Generation Tools Assembler & Linker for DOS & Windows Optimized Cross-C Compiler Application System User-Friendly User-Friendly Development Development Environment Environment ROM Writer On-board Implemented Various Application Various Sample Test Program Optional Parallel/Serial Program World Wide Programmable in Anywhere MiDAS1.1 Family [52]

부록 A : 명령어 Set (1/19) Note on Instruction Set and Addressing Modes Notation Rn direct Descriptions Register R0 ~ R7 of the currently selected Register Bank (RB0 ~ RB3). The address of 8-bit internal data location. This could be an IRAM location (0x00 ~ 0x7F; 128 bytes) or a SFR (0x80 ~ 0xFF). @Ri 8-bit IRAM location (0x00 ~ 0xFF; 256 bytes) addressed indirectly through register R0 or R1. #data #data16 addr16 8-bit constant included in instruction. 16-bit constant included in instruction. 16-bit destination address. Used by LCALL & LJMP. The branch can be anywhere within the 64kbytes program memory address space. (MiDAS1.1 Family : 4kbytes program memory) addr11 11-bit destination address. Used by ACALL & AJMP. The branch will be within the same 2kbytes page of program memory as the first byte of the following instruction. rel bit Signed (2 s complement number) 8-bit offset byte. Used by SJMP and all conditional jumps. Range is -128 to +127 byte relative to first byte of the following instruction. Direct addressed bit n IRAM of SFR. MiDAS1.1 Family [53]

부록 A : 명령어 Set (2/19) ADD Add A, <src-byte> 1 Machine Cycle = 4 Clocks ADD A, Rn Operation : (A) (A) + (Rn) ADD A, @Ri Operation : (A) (A) + ((Ri)) ADD A, direct Operation : (A) (A) + (direct) ADD A, #date Operation : (A) (A) + data Encoding : HEX: 28h, #bytes: 1, Cycles: 1 0 0 1 0 1 r r r Encoding : HEX: 26h, #bytes: 1, Cycles: 1 0 0 1 0 0 1 1 i Encoding : HEX: 25h, #bytes: 2, Cycles: 2 0 0 1 0 0 1 0 1 direct addr Encoding : HEX: 24h, #bytes: 2, Cycles: 2 0 0 1 0 0 1 0 0 immediate data ADDC A, <src-byte> Add with Carry ADDC A, Rn Operation : (A) (A) + (C) + (Rn) ADDC A, @Ri Operation : (A) (A) + (C) + ((Ri)) ADDC A, direct Operation : (A) (A) + (C) + (direct) ADDC A, #date Operation : (A) (A) + (C) + data Encoding : HEX: 38h, #bytes: 1, Cycles: 1 0 0 1 1 1 r r r Encoding : HEX: 36h, #bytes: 1, Cycles: 1 0 0 1 1 0 1 1 i Encoding : HEX: 35h, #bytes: 2, Cycles: 2 0 0 1 1 0 1 0 1 direct addr Encoding : HEX: 34h, #bytes: 2, Cycles: 2 0 0 1 1 0 1 0 0 immediate data MiDAS1.1 Family [54]

부록 A : 명령어 Set (3/19) SUBB A, <src-byte> Subtract with Borrow SUBB A, Rn Operation : (A) (A) - (C) - (Rn) SUBB A, @Ri Operation : (A) (A) - (C) - ((Ri)) SUBB A, direct Operation : (A) (A) - (C) - (direct) SUBB A, #date Operation : (A) (A) - (C) - data INC <byte> Increment INC A Operation : (A) (A) + 1 INC Rn Operation : (Rn) (Rn) + 1 INC @Ri Operation : ((Ri)) ((Ri)) + 1 INC direct Operation : (direct) (direct) + 1 INC DPTR Operation : (DPTR) (DPTR) + 1 Encoding : HEX: 98h, #bytes: 1, Cycles: 1 1 0 0 1 1 r r r Encoding : HEX: 96h, #bytes: 1, Cycles: 1 1 0 0 1 0 1 1 i Encoding : HEX: 95h, #bytes: 2, Cycles: 2 1 0 0 1 0 1 0 1 direct addr Encoding : HEX: 94h, #bytes: 2, Cycles: 2 1 0 0 1 0 1 0 0 immediate data Encoding : HEX: 04h, #bytes: 1, Cycles: 1 0 0 0 0 0 1 0 0 Encoding : HEX: 08h, #bytes: 1, Cycles: 1 0 0 0 0 1 r r r Encoding : HEX: 06h, #bytes: 1, Cycles: 1 0 0 0 0 0 1 1 i Encoding : HEX: 05h, #bytes: 2, Cycles: 2 0 0 0 0 0 1 0 1 direct addr Encoding : HEX: A3h, #bytes: 1, Cycles: 1 1 0 1 0 0 0 1 1 MiDAS1.1 Family [55]

부록 A : 명령어 Set (4/19) DEC <byte> Decrement DEC A Operation : (A) (A) - 1 DEC Rn Operation : (Rn) (Rn) - 1 DEC @Ri Operation : ((Ri)) ((Ri)) - 1 DEC direct Operation : (direct) (direct) - 1 Encoding : HEX: 14h, #bytes: 1, Cycles: 1 0 0 0 1 0 1 0 0 Encoding : HEX: 18h, #bytes: 1, Cycles: 1 0 0 0 1 1 r r r Encoding : HEX: 16h, #bytes: 1, Cycles: 1 0 0 0 1 0 1 1 i Encoding : HEX: 15h, #bytes: 1, Cycles: 1 0 0 0 1 0 1 0 1 direct addr MUL AB Multiply Operation : Encoding : HEX: A4h, #bytes: 1, Cycles: 3 (A) 7-0 (A) x (B) (B) 15-8 1 0 1 0 0 1 0 0 DIV AB Divide Operation : Encoding : HEX: 84h, #bytes: 1, Cycles: 3 (A) 15-8 (A) / (B) (B) 7-0 1 0 0 0 0 1 0 0 MiDAS1.1 Family [56]

부록 A : 명령어 Set (5/19) DA A Decimal-adjust Accumulator for Addition Operation : IF [[(A 3-0 )>9] [(AC)=1]] THEN (A 3-0 ) (A 3-0 )+6 IF [[(A 7-4 )>9] [(C)=1]] THEN (A 7-4 ) (A 7-4 )+6 Encoding : HEX: D4h, #bytes: 1, Cycles: 1 1 1 0 1 0 1 0 0 ANL <dest-byte>, <src-byte> Logical AND for byte variables ANL A, Rn Operation : (A) (A) ^ (Rn) ANL A, @Ri Operation : (A) (A) ^ ((Ri)) ANL A, direct Operation : (A) (A) ^ (direct) ANL A, #date Operation : (A) (A) ^ data ANL direct, A Operation : (direct) (direct) ^ (A) ANL direct, #data Operation : (direct) (direct) ^ data Encoding : HEX: 58h, #bytes: 1, Cycles: 1 0 1 0 1 1 r r r Encoding : HEX: 56h, #bytes: 1, Cycles: 1 0 1 0 1 0 1 1 i Encoding : HEX: 55h, #bytes: 2, Cycles: 2 0 1 0 1 0 1 0 1 direct addr Encoding : HEX: 54h, #bytes: 2, Cycles: 2 0 1 0 1 0 1 0 0 immediate data Encoding : HEX: 52h, #bytes: 2, Cycles: 2 0 1 0 1 0 0 1 0 direct addr Encoding : HEX: 53h, #bytes: 3, Cycles: 3 0 1 0 1 0 0 1 1 direct addr immediate data MiDAS1.1 Family [57]

부록 A : 명령어 Set (6/19) ANL C, <src-bit> Logical AND for bit variables ANL C, bit Operation : (C) (C) ^ (bit) ANL C, /bit Operation : (C) (C) ^ ~(bit) Encoding : HEX: 82h, #bytes: 2, Cycles: 2 1 0 0 0 0 0 1 0 bit addr Encoding : HEX: B0h, #bytes: 2, Cycles: 2 1 0 1 1 0 0 0 0 bit addr ORL <dest-byte>, <src-byte> Logical OR for byte variables ORL A, Rn Operation : (A) (A) (Rn) ORL A, @Ri Operation : (A) (A) ((Ri)) ORL A, direct Operation : (A) (A) (direct) ORL A, #date Operation : (A) (A) data ORL direct, A Operation : (direct) (direct) (A) ORL direct, #data Operation : (direct) (direct) data Encoding : HEX: 48h, #bytes: 1, Cycles: 1 0 1 0 0 1 r r r Encoding : HEX: 46h, #bytes: 1, Cycles: 1 0 1 0 0 0 1 1 i Encoding : HEX: 45h, #bytes: 2, Cycles: 2 0 1 0 0 0 1 0 1 direct addr Encoding : HEX: 44h, #bytes: 2, Cycles: 2 0 1 0 0 0 1 0 0 immediate data Encoding : HEX: 42h, #bytes: 2, Cycles: 2 0 1 0 0 0 0 1 0 direct addr Encoding : HEX: 43h, #bytes: 3, Cycles: 3 0 1 0 0 0 0 1 1 direct addr immediate data MiDAS1.1 Family [58]

부록 A : 명령어 Set (7/19) ORL C, <src-byte> Logical OR for byte variables ORL C, bit Operation : (C) (C) (bit) ORL C, /bit Operation : (C) (C) ~(bit) Encoding : HEX: 72h, #bytes: 2, Cycles: 2 0 1 1 1 0 0 1 0 bit addr Encoding : HEX: A0h, #bytes: 2, Cycles: 2 1 0 1 0 0 0 0 0 bit addr XRL <dest-byte>, <src-byte> Logical Exclusive-OR for byte variables XRL A, Rn Operation : (A) (A) (Rn) XRL A, @Ri Operation : (A) (A) ((Ri)) XRL A, direct Operation : (A) (A) (direct) XRL A, #date Operation : (A) (A) data XRL direct, A Operation : (direct) (direct) (A) XRL direct, #data Operation : (direct) (direct) data Encoding : HEX: 68h, #bytes: 1, Cycles: 1 0 1 1 0 1 r r r Encoding : HEX: 66h, #bytes: 1, Cycles: 1 0 1 1 0 0 1 1 i Encoding : HEX: 65h, #bytes: 2, Cycles: 2 0 1 1 0 0 1 0 1 direct addr Encoding : HEX: 64h, #bytes: 2, Cycles: 2 0 1 1 0 0 1 0 0 immediate data Encoding : HEX: 62h, #bytes: 2, Cycles: 2 0 1 1 0 0 0 1 0 direct addr Encoding : HEX: 63h, #bytes: 3, Cycles: 3 0 1 1 0 0 0 1 1 direct addr immediate Data MiDAS1.1 Family [59]

부록 A : 명령어 Set (8/19) CLR A Clear Accumulator Operation : (A) 0 Encoding : HEX: E4h, #bytes: 1, Cycles: 1 1 1 1 0 0 1 0 0 CLR <bit> Clear bit CLR C Operation : (C) 0 CLR bit Operation : (bit) 0 Encoding : HEX: C3h, #bytes: 1, Cycles: 1 1 1 0 0 0 0 1 1 Encoding : HEX: C2h, #bytes: 2, Cycles: 2 1 1 0 0 0 0 1 0 bit addr CPL A Complement Accumulator Operation : (A) ~(A) Encoding : HEX: F4h, #bytes: 1, Cycles: 1 1 1 1 1 0 1 0 0 CPL <bit> Complement bit CPL C Operation : (C) ~(C) Encoding : HEX: B3h, #bytes: 1, Cycles: 1 1 0 1 1 0 0 1 1 CPL Operation : bit (bit) ~(bit) Encoding : HEX: B2h, #bytes: 2, Cycles: 2 1 0 1 1 0 0 1 0 bit addr MiDAS1.1 Family [60]

부록 A : 명령어 Set (9/19) RL A Rotate Accumulator Left Operation : (A n+1 ) (A n ) n=0~6 (A 0 ) (A 7 ) Encoding : HEX: 23h, #bytes: 1, Cycles: 1 0 0 1 0 0 0 1 1 RLC A Rotate Accumulator Left through the Carry flag Operation : (A n+1 ) (A n ) n=0~6 (A 0 ) (C) (C) (A 7 ) Encoding : HEX: 33h, #bytes: 1, Cycles: 1 0 0 1 1 0 0 1 1 RR A Rotate Accumulator Right Operation : (A n ) (A n+1 ) n=0~6 (A 7 ) (A 0 ) Encoding : HEX: 03h, #bytes: 1, Cycles: 1 0 0 0 0 0 0 1 1 RRC A Rotate Accumulator Right through the Carry flag Operation : (A n ) (A n+1 ) n=0~6 (A 7 ) (C) (C) (A 0 ) Encoding : HEX: 13h, #bytes: 1, Cycles: 1 0 0 0 1 0 0 1 1 SWAP A Swap nibbles within the Accumulator Operation : (A 3-0 ) (A 7-4 ) Encoding : HEX: C4h, #bytes: 1, Cycles: 1 1 1 0 0 0 1 0 0 MiDAS1.1 Family [61]

부록 A : 명령어 Set (10/19) MOV <dest-byte>, <src-byte> Move byte variable MOV A, Rn Operation : (A) (Rn) MOV A, @Ri Operation : (A) ((Ri)) MOV A, direct Operation : (A) (direct) MOV A, #date Operation : (A) data MOV Rn, A Operation : (Rn) (A) MOV Rn, direct Operation : (Rn) (direct) MOV Rn, #date Operation : (Rn) data MOV direct, A Operation : (direct) (A) MOV direct, Rn Operation : (direct) (Rn) Encoding : HEX: E8h, #bytes: 1, Cycles: 1 1 1 1 0 1 r r r Encoding : HEX: E6h, #bytes: 1, Cycles: 1 1 1 1 0 0 1 1 i Encoding : HEX: E5h, #bytes: 2, Cycles: 2 1 1 1 0 0 1 0 1 direct addr Encoding : HEX: 74h, #bytes: 2, Cycles: 2 0 1 1 1 0 1 0 0 immediate data Encoding : HEX: F8h, #bytes: 1, Cycles: 1 1 1 1 1 1 r r r Encoding : HEX: A8h, #bytes: 2, Cycles: 2 1 0 1 0 1 r r r direct addr Encoding : HEX: 78h, #bytes: 2, Cycles: 2 0 1 1 1 1 r r r immediate data Encoding : HEX: F5h, #bytes: 2, Cycles: 2 1 1 1 1 0 1 0 1 direct addr Encoding : HEX: 88h, #bytes: 2, Cycles: 2 1 0 0 0 1 r r r direct addr MiDAS1.1 Family [62]

부록 A : 명령어 Set (11/19) MOV direct, @Ri Operation : (direct) ((Ri)) MOV direct, direct Operation : (direct) (direct) MOV direct, #data Operation : (direct) data MOV @Ri, A Operation : ((Ri)) (A) MOV @Ri, direct Operation : ((Ri)) (direct) MOV @Ri, #data Operation : ((Ri)) data Encoding : HEX: 86h, #bytes: 2, Cycles: 2 1 0 0 0 0 1 1 i direct addr Encoding : HEX: 85h, #bytes: 3, Cycles: 3 1 0 0 0 0 1 0 1 direct addr(src) direct addr(dest) Encoding : HEX: 75h, #bytes: 3, Cycles: 3 0 1 1 1 0 1 0 1 direct addr immediate data Encoding : HEX: F6h, #bytes: 1, Cycles: 1 1 1 1 1 0 1 1 i Encoding : HEX: A6h, #bytes: 2, Cycles: 2 1 0 1 0 0 1 1 i direct addr Encoding : HEX: 76h, #bytes: 2, Cycles: 2 0 1 1 1 0 1 1 i immediate Data MOV <dest-bit>, <src-bit> Move bit data MOV C, bit Operation : (C) (bit) MOV bit, C Operation : (bit) (C) Encoding : HEX: A2h, #bytes: 2, Cycles: 2 1 0 1 0 0 0 1 0 bit addr Encoding : HEX: 92h, #bytes: 2, Cycles: 2 1 0 0 1 0 0 1 0 bit addr MiDAS1.1 Family [63]

부록 A : 명령어 Set (12/19) MOV DPTR, #data16 Load Data Pointer with a 16-bit constant Operation : (DPTR) data 15-0 (DPH,DPL) (data 15-8,data 7-0 ) Encoding : HEX: 90h, #bytes: 3, Cycles: 3 1 0 0 1 0 0 0 0 immed. data 15-8 immed. data 7-0 MOVC A, @A + <base-reg> Move Code byte MOVC A, @A + DPTR Operation : (A) ((A) + (DPTR)) MOVC Operation : A, @A + PC (PC) (PC) + 1 (A) ((A) + (PC)) Encoding : HEX: 93h, #bytes: 1, Cycles: 2 1 0 0 1 0 0 1 1 Encoding : HEX: 83h, #bytes: 1, Cycles: 2 1 0 0 0 0 0 1 1 MiDAS1.1 Family [64]

부록 A : 명령어 Set (13/19) XCH A, <src-byte> Exchange Accumulator with byte variable XCH A, Rn Operation : (A) (Rn) XCH A, @Ri Operation : (A) ((Ri)) XCH A, direct Operation : (A) (direct) XCHD A, @Ri Exchange Digit Operation : (A 3-0 ) ((Ri)) 3-0 Encoding : HEX: C8h, #bytes: 1, Cycles: 1 1 1 0 0 1 r r r Encoding : HEX: C6h, #bytes: 1, Cycles: 1 1 1 0 0 0 1 1 i Encoding : HEX: C5h, #bytes: 2, Cycles: 2 1 1 0 0 0 1 0 1 direct addr Encoding : HEX: D6h, #bytes: 1, Cycles: 1 1 1 0 1 0 1 1 i PUSH Operation : direct Push onto stack POP Operation : direct Pop onto stack (SP) (SP) + 1 ((SP)) (direct) (direct) ((SP)) (SP) (SP) 1 Encoding : HEX: C0h, #bytes: 2, Cycles: 2 1 1 0 0 0 0 0 0 direct addr Encoding : HEX: D0h, #bytes: 2, Cycles: 2 1 1 0 1 0 0 0 0 direct addr MiDAS1.1 Family [65]

부록 A : 명령어 Set (14/19) SETB <bit> JC Set bit SETB C Operation : (C) 1 SETB bit Operation : (bit) 1 rel Jump if Carry is set Operation : JNC JB rel Jump if Carry is not set Operation : Operation : bit, rel Jump if Bit is set JNB bit, rel Jump if Bit is not set Operation : (PC) (PC) + 2 If (C) = 1, then (PC) (PC) + rel (PC) (PC) + 2 If (C) = 0, then (PC) (PC) + rel (PC) (PC) + 3 If (bit) = 1, then (PC) (PC)+rel (PC) (PC) + 3 If (bit) = 0, then (PC) (PC)+rel Encoding : HEX: D3h, #bytes: 1, Cycles: 1 1 1 0 1 0 0 1 1 Encoding : HEX: D2h, #bytes: 2, Cycles: 2 1 1 0 1 0 0 1 0 bit addr Encoding : HEX: 40h, #bytes: 2, Cycles: 3 0 1 0 0 0 0 0 0 relative addr Encoding : HEX: 50h, #bytes: 2, Cycles: 3 0 1 0 1 0 0 0 0 relative addr Encoding : HEX: 20h, #bytes: 3, Cycles: 4 0 0 1 0 0 0 0 0 bit addr relative addr Encoding : HEX: 30h, #bytes: 3, Cycles: 4 0 0 1 1 0 0 0 0 bit addr relative addr MiDAS1.1 Family [66]