1
4Bit Single Chip Microcontroller
DMC42C2008
DESCRIPTION
The DMC42C2008 is a 4-bit single chip micro-
computer with 8K bytes ROM, and is manufactured
with CMOS silicon gate technology.
The DMC42C2008 includes peripherals such as 8-bit
Timer/Event Counters, 4-bit A/D Converter, 14-bit
PWM, 8-bit PWM, 6-bit PWM, Watchdog Timer, 4-ch
External Interrupts and OSD controller.
It provides the hardware features, architectural
enhancements and instructions that are necessary
to make it a powerful and cost effective controller
for applications requiring up to 64K bytes of program-
mable memory.
FEATURE
Memory Mapped I/O
Program Memory : 8192 x 10 bits
Data Memory
: 512 x 4 bits
Instructions
- Various Bit Manipulation
- 8 bit Data Transfer, Compare, Arithmatic
- 7 bit Relative Branch
- 1 byte Absolute Call
Instruction cycle times
- Main ( XI = 4.19MHz )
. 15.3 us ( XI/64 = 65.5KHz )
. 1.91 us ( XI/8 = 524.0KHz )
. 0.95 us ( XI/4 = 1.05MHz )
4 Register Bank
PIN CONFIGURATION
PC.0/PWM14 1
P8.3
P0.3/INT3
P0.2/INT2
P0.1/INT1
P0.0/INT0
XI
XO
RESETB
P8.2
V
SS
P8.1
P8.0
V
DD
P2.3
P2.2
P2.0
P2.1
OSCIN
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
40
39
38
37
PC.1/PWM60
PC.2/PWM61
PC.3/PWM62
PWMOTB/80
PWMOTB/81
PWMOTB/82
P3.0
P3.1
P3.2
P3.3
P1.0
P1.1
P1.2
P1.3
VBLNKPAD
VBPAD
P6.1/VGPAD
P6.0/VRPAD
VSYNCBP
HSYNCBP
General Register
- 8 x 4 bit x 4 Banks
Accumulator
- Bit Accumulator (CY), 4 bit Accumulator (A),
8 bit Accumulator (XA)
Multiple Vectored Interrupt Source
- External Interrupts : 4
- Internal Interrupts : 3
- Vsync Interrupts : 1
Watch timer
- fast mode : 3.91 msec
- normal mode : 0.5 sec
- buzzer output : 1, 2, 4 KHz
Basic interval timer
- 8 kinds of period
- Used stabilization wait timer to wake up
Stop mode
Two 8-bit timer / event counters
D
M
C
4
2
C
2
0
0
8
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
OSCOUT 20
2
4Bit Single Chip Microcontroller
DMC42C2008
4 Bit A/D Converter
Programmable Comparator Input
AFC Input Signal Detection Circuit
PWM
- 14 Bits PWM Output x 1Ch
- 8 Bits PWM Output x 3Ch
- 6 Bits PWM Output x 3Ch
29 I/O Pins
- CMOS I/O Pins : 22
(Digital CMOS Levels Schmitt Triggered)
- PWM Pins : 7
Power saving mode
- STOP : Main clock, CPU clock stop
- STBY : Only CPU clock stop
Main clock operation
Package : 40 DIP
OSD CONTROLLER SPEC.
Character ROM ; 12 x 16 x 96 bits
Video RAM ; 120 x 10 Bits
OSD Clock ; 4MHz ~ 7MHz
Character Number ; 96
Display Capacity ; 20 Columns x 6 Lines
(120 Character)
Character Size ; 16 Kinds (4 x 4 Kinds)
- Horizontal 1T, 2T, 3T, 4T/Dots
- Vertical 1H, 2H, 3H, 4H/Dots
Character Color ; 8 Colors
Black, Blue, Green, Red,
Magenta, Yellow, White,
Cyan
Display Mode ; 3 Modes
Character, Fringe,
Background
Background Color ; 8 Colors
- Character Background Area Mode
- All TV Display Area Mode
OSD Oscillator Control Modes ;
(Always Oscillate, Oscillates
Only in the Display Period
LC Oscillator)
Display Position ; 1'st line, 2'nd line
Variable
Structure of Character
12 (Width) x 16 (Height) dots
Vsync Interrupt
3
4Bit Single Chip Microcontroller
DMC42C2008
BLOCK DIAGRAM
WATCH DOG
TIMER
PORT 0
P0.0-
P0.3
P1.0-P1.3
P2.0-P2.3
P3.0-P3.3
P6.0-
P8.0-P8.3
PORT 1
BASIC
INTERVAL
TIMER
IRQBT
TI0/P0.0
TO0/P2.2
TI1/P0.1
TO1/P2.3
TIMER/
EVENT
COUNTER 0
IRQTC0
TIMER/
EVENT
COUNTER 1
IRQTC1
INT0/P0.0
INT1/P0.1
INT2/P0.2
INT3/P0.3
14BIT
OUTPUT
8BIT
OUTPUT
6BIT
OUTPUT
INTERRUPT
CONTROL
PORT 8
PORT 2
PORT 3
DMC42CORE
PORT 6
PORTC
PC.0-
PWMOT
B
RED
GREEN
BLUE
PWMOT
PWM
14 BIT
PWM
8 BIT
PWM
6 BIT
4-BIT
ADC
PROGRAM
(8192 x 10BITS)
DATA
MEMORY
(512 x 4BITS)
F x /2
n
CLOCK
CLOCK
CLOCK
OUTPUT
GENERA-
DIVIDER
CONTROL
TOR
CPU
CLOCK
STAND
-BY
CONTROL
OSD
BLANK
HSYNC
VSYNC
OSCIN
OSCOUT
AD0-AD4
V
DD
V
SS
P2.0/CLO
XI
XO
RESETB TEST
4
4Bit Single Chip Microcontroller
DMC42C2008
PROGRAM MEMORY (ROM)
0000H
001FH
0020H
002FH
0060H
VECTOR ADDRESS
0000H
0002H
0004H
0006H
0008H
000AH
000CH
000EH
0010H
0012H
0014H
CONTENTS
VECTOR
ADDRESS AREA
ZERO-PAGE
CALL AREA
Prioty
0
1
2
3
4
5
6
8
10
12
INTERRUPT SUORCE
Reset Signal
RESET
Basic Interval Timer
IRQBT
External interrupt 0
IRQ0
External interrupt 1
IRQ1
IRQTC0
Timer Event Counter 0
IRQTC1
Timer Event Counter 1
External interrupt 2
IRQ2
IRQ3
IRQAD
IRQWT
External interrupt 3
8 bit ADC
Watch Timer
8K Byte
0016H
0018H
001AH
001CH
1FFFH
001EH
15
-
reserved
DATA MEMORY (RAM)
DIRECT
m
$00
PAGE0
(256 Byte)
$FF
$00
PAGE1
(256 Byte)
MB=0
BANK 0
$FF
(1K)
$00
PAGE2
(256 Byte)
$FF
$00
PAGE3
I/O
(256 Byte)MEMORY
$FF
INDIRECT
STACK
@HL
@DE @DL
GENERAL
REGISTER
RB=0
RB=1
RB=2
RB=4
MP=0
SPS=0
MB=0
MP=1
SPS=1
200~27F
OSD RAM
MP=2
SPS=2
MP=3
; Usable
5
4Bit Single Chip Microcontroller
DMC42C2008
I/O ADDRESS MAP
ADDRESS
b3
318H
319H
31AH
31BH
31CH
31DH
320H
321H
322H
323H
324H
325H
326H
327H
328H
329H
32AH
32BH
332H
334H
335H
336H
337H
338H
339H
340H
342H
343H
344H
345H
346H
347H
348H
349H
34AH
34BH
34CH
34DH
354H
355H
358H
35AH
35BH
Hardware Module Name
b2
b1
b0
R/W
R/W
R/W
R/W
R/W
W
R
W
W
R
W
R/W 332H.3
R
R/W 336H.3
W
R
R/W
W
W
W
W
W
W
W
W
W
O
O
326H.3
Stack pointer low (SPL)
Stack pointer high (SPH)
SP3
SP2
SP1
SP0
-
-
SP5
SP4
AC
IS1
IS0
CY
Z
OV
T
T/E counter mode register 0
(TMOD0)
T/E counter register 0
(TMCNT0)
T/E reference register 0
(TMREF0)
T/E counter mode register 1
(TMOD1)
T/E counter register 1
(TMCNT1)
T/E reference register 1
(TMREF1)
Basic Timer mode register(BMOD)
Basic interval timer count
register(BITCNT)
Watch timer mode register
(WMOD)
Watch dog timer mode register
(WDTM)
WDTF
Pwm mode register0(PWMOD0)
Pwm0 data register high
(PWMODH)
Pwm0 data register low
(PWMODL)
Pwm channel start mode register
(PWMSM)
Pwm60 data register (PWMDR0)
Pwm61 data register (PWMDR1)
Pwm62 data register (PWMDR2)
PWM2 PWM1 PWM0
PWM6 PWM5 PWM4
Pwm mode register 1 (PWMOD1)
Pwm80 data register (PWMDR80)
PWM3
R/W
Addressing Unit
1 bit
4 bit
8bit
O
O
O
O
O
O
Stack pointer low
stack pointer high
Stack Page Select Low (SPSL)
Stack Page Select High (SPSh)
Psw low (PSWL)
Psw high (PSWH)
Clock source select. counter
start (ch0)
readable count value (ch0)
count reference register (ch0)
clock source select. counter start
(ch1)
readable count value (ch1)
count reference register (ch1)
clock select, Bit start
readable count register
clock/buzzer select. bit3
readable
clock source sel. timer EN/DIS
WDT flag
6.14bit pwm counter EN/DIS
14bit pwm data register high
14bit pwm data register low
6bit*6ch, 14bit pwm start EN/DIS
6bit pwm channel 0 data register
6bit pwm channel 1 data register
6bit pwm channel 2 data register
pwm output enable mode
register (PWM0 = 14bit)
8bit pwm control
8bit pwm channel 0 data register
REMARKS
INITIAL
VALUE
E
F
0
0
0
0
00
00
FF
00
00
FF
0
00
00
00
0
0
00
00
00
00
00
00
00
O
320H.3
O
O
O
O
O
O
O
O
00