R8C18 [RENESAS]

RENESAS 16-BIT SINGLE-CHIP MCU R8C FAMILY / R8C/1x SERIES; 瑞萨16位单片机MCU R8C族/ R8C / 1X系列
R8C18
型号: R8C18
厂家: RENESAS TECHNOLOGY CORP    RENESAS TECHNOLOGY CORP
描述:

RENESAS 16-BIT SINGLE-CHIP MCU R8C FAMILY / R8C/1x SERIES
瑞萨16位单片机MCU R8C族/ R8C / 1X系列

文件: 总257页 (文件大小:2321K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Hardware Manual  
16  
RENESAS 16-BIT SINGLE-CHIP MCU  
R8C FAMILY / R8C/1x SERIES  
All information contained in these materials, including products and product specifications,  
represents information on the product at the time of publication and is subject to change by  
Renesas Technology Corp. without notice. Please review the latest information published  
by Renesas Technology Corp. through various means, including the Renesas Technology  
Corp. website (http://www.renesas.com).  
Rev.1.30  
Revision Date: Apr 14, 2006  
www.renesas.com  
Keep safety first in your circuit designs!  
1.  
Renesas Technology Corp. puts the maximum effort into making semiconductor products  
better and more reliable, but there is always the possibility that trouble may occur with  
them. Trouble with semiconductors may lead to personal injury, fire or property damage.  
Remember to give due consideration to safety when making your circuit designs, with ap-  
propriate measures such as (i) placement of substitutive, auxiliary circuits, (ii) use of non-  
flammable material or (iii) prevention against any malfunction or mishap.  
Notes regarding these materials  
1.  
These materials are intended as a reference to assist our customers in the selection of the  
Renesas Technology Corp. product best suited to the customer's application; they do not  
convey any license under any intellectual property rights, or any other rights, belonging to  
Renesas Technology Corp. or a third party.  
2.  
3.  
Renesas Technology Corp. assumes no responsibility for any damage, or infringement of  
any third-party's rights, originating in the use of any product data, diagrams, charts, pro-  
grams, algorithms, or circuit application examples contained in these materials.  
All information contained in these materials, including product data, diagrams, charts, pro-  
grams and algorithms represents information on products at the time of publication of these  
materials, and are subject to change by Renesas Technology Corp. without notice due to  
product improvements or other reasons. It is therefore recommended that customers con-  
tact Renesas Technology Corp. or an authorized Renesas Technology Corp. product dis-  
tributor for the latest product information before purchasing a product listed herein.  
The information described here may contain technical inaccuracies or typographical errors.  
Renesas Technology Corp. assumes no responsibility for any damage, liability, or other  
loss rising from these inaccuracies or errors.  
Please also pay attention to information published by Renesas Technology Corp. by vari-  
ous means, including the Renesas Technology Corp. Semiconductor home page (http://  
www.renesas.com).  
4.  
5.  
When using any or all of the information contained in these materials, including product  
data, diagrams, charts, programs, and algorithms, please be sure to evaluate all informa-  
tion as a total system before making a final decision on the applicability of the information  
and products. Renesas Technology Corp. assumes no responsibility for any damage, liabil-  
ity or other loss resulting from the information contained herein.  
Renesas Technology Corp. semiconductors are not designed or manufactured for use in a  
device or system that is used under circumstances in which human life is potentially at  
stake. Please contact Renesas Technology Corp. or an authorized Renesas Technology  
Corp. product distributor when considering the use of a product contained herein for any  
specific purposes, such as apparatus or systems for transportation, vehicular, medical,  
aerospace, nuclear, or undersea repeater use.  
6.  
7.  
The prior written approval of Renesas Technology Corp. is necessary to reprint or repro-  
duce in whole or in part these materials.  
If these products or technologies are subject to the Japanese export control restrictions,  
they must be exported under a license from the Japanese government and cannot be im-  
ported into a country other than the approved destination.  
Any diversion or reexport contrary to the export control laws and regulations of Japan and/  
or the country of destination is prohibited.  
8.  
Please contact Renesas Technology Corp. for further details on these materials or the  
products contained therein.  
General Precautions in the Handling of MPU/MCU Products  
The following usage notes are applicable to all MPU/MCU products from Renesas. For detailed usage notes on the  
products covered by this manual, refer to the relevant sections of the manual. If the descriptions under General  
Precautions in the Handling of MPU/MCU Products and in the body of the manual differ from each other, the description  
in the body of the manual takes precedence.  
1. Handling of Unused Pins  
Handle unused pins in accord with the directions given under Handling of Unused Pins in the manual.  
The input pins of CMOS products are generally in the high-impedance state. In operation with an  
unused pin in the open-circuit state, extra electromagnetic noise is induced in the vicinity of LSI, an  
associated shoot-through current flows internally, and malfunctions occur due to the false  
recognition of the pin state as an input signal become possible. Unused pins should be handled as  
described under Handling of Unused Pins in the manual.  
2. Processing at Power-on  
The state of the product is undefined at the moment when power is supplied.  
The states of internal circuits in the LSI are indeterminate and the states of register settings and pins  
are undefined at the moment when power is supplied.  
In a finished product where the reset signal is applied to the external reset pin, the states of pins are  
not guaranteed from the moment when power is supplied until the reset process is completed.  
In a similar way, the states of pins in a product that is reset by an on-chip power-on reset function  
are not guaranteed from the moment when power is supplied until the power reaches the level at  
which resetting has been specified.  
3. Prohibition of Access to Reserved Addresses  
Access to reserved addresses is prohibited.  
The reserved addresses are provided for the possible future expansion of functions. Do not access  
these addresses; the correct operation of LSI is not guaranteed if they are accessed.  
4. Clock Signals  
After applying a reset, only release the reset line after the operating clock signal has become stable.  
When switching the clock signal during program execution, wait until the target clock signal has  
stabilized.  
When the clock signal is generated with an external resonator (or from an external oscillator) during  
a reset, ensure that the reset line is only released after full stabilization of the clock signal. Moreover,  
when switching to a clock signal produced with an external resonator (or by an external oscillator)  
while program execution is in progress, wait until the target clock signal is stable.  
5. Differences between Products  
Before changing from one product to another, i.e. to one with a different type number, confirm that the  
change will not lead to problems.  
The characteristics of MPU/MCU in the same group but having different type numbers may differ  
because of the differences in internal memory capacity and layout pattern. When changing to  
products of different type numbers, implement a system-evaluation test for each of the products.  
How to Use This Manual  
1. Purpose and Target Readers  
This manual is designed to provide the user with an understanding of the hardware functions and electrical  
characteristics of the MCU. It is intended for users designing application systems incorporating the MCU. A basic  
knowledge of electric circuits, logical circuits, and MCUs is necessary in order to use this manual.  
The manual comprises an overview of the product; descriptions of the CPU, system control functions, peripheral  
functions, and electrical characteristics; and usage notes.  
Particular attention should be paid to the precautionary notes when using the manual. These notes occur  
within the body of the text, at the end of each section, and in the Usage Notes section.  
The revision history summarizes the locations of revisions and additions. It does not list all revisions. Refer  
to the text of the manual for details.  
The following documents apply to the R8C/18 Group, R8C/19 Group. Make sure to refer to the latest versions of these  
documents. The newest versions of the documents listed may be obtained from the Renesas Technology Web site.  
Document Type  
Datasheet  
Description  
Document Title  
Document No.  
REJ03B0124  
Hardware overview and electrical characteristics R8C/18 Group,  
R8C/19 Group  
Datasheet  
Hardware manual Hardware specifications (pin assignments,  
memory maps, peripheral function  
R8C/18 Group,  
R8C/19 Group  
Hardware Manual  
This hardware  
manual  
specifications, electrical characteristics, timing  
charts) and operation description  
Note: Refer to the application notes for details on  
using peripheral functions.  
Software manual Description of CPU instruction set  
R8C/Tiny Series  
Software Manual  
REJ09B0001  
Application note Information on using peripheral functions and  
application examples  
Available from Renesas  
Technology Web site.  
Sample programs  
Information on writing programs in assembly  
language and C  
Renesas  
Product specifications, updates on documents,  
technical update etc.  
2. Notation of Numbers and Symbols  
The notation conventions for register names, bit names, numbers, and symbols used in this manual are described  
below.  
(1) Register Names, Bit Names, and Pin Names  
Registers, bits, and pins are referred to in the text by symbols. The symbol is accompanied by the word  
“register,” “bit,” or “pin” to distinguish the three categories.  
Examples the PM03 bit in the PM0 register  
P3_5 pin, VCC pin  
(2) Notation of Numbers  
The indication “b” is appended to numeric values given in binary format. However, nothing is appended to the  
values of single bits. The indication “h” is appended to numeric values given in hexadecimal format. Nothing  
is appended to numeric values given in decimal format.  
Examples Binary: 11b  
Hexadecimal: EFA0h  
Decimal: 1234  
3. Register Notation  
The symbols and terms used in register diagrams are described below.  
*1  
XXX Register  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
XXX  
Address  
XXX  
After Reset  
00h  
0
RW  
RW  
Bit Symbol  
XXX0  
Bit Name  
XXX bits  
Function  
*2  
b1 b0  
1 0: XXX  
0 1: XXX  
1 0: Do not set.  
1 1: XXX  
XXX1  
(b2)  
RW  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
*3  
Reserved bits  
XXX bits  
Set to 0.  
RW  
(b3)  
XXX4  
XXX5  
*4  
Function varies according to the operating  
mode.  
RW  
WO  
RW  
RO  
XXX6  
XXX7  
0: XXX  
1: XXX  
XXX bit  
*1  
*2  
Blank: Set to 0 or 1 according to the application.  
0: Set to 0.  
1: Set to 1.  
X: Nothing is assigned.  
RW: Read and write.  
RO: Read only.  
WO: Write only.  
: Nothing is assigned.  
*3  
*4  
• Reserved bit  
Reserved bit. Set to specified value.  
• Nothing is assigned  
Nothing is assigned to the bit. As the bit may be used for future functions, if necessary, set to 0.  
• Do not set to a value  
Operation is not guaranteed when a value is set.  
• Function varies according to the operating mode.  
The function of the bit varies with the peripheral function mode. Refer to the register diagram for information  
on the individual modes.  
4. List of Abbreviations and Acronyms  
Abbreviation  
Full Form  
ACIA  
bps  
Asynchronous Communication Interface Adapter  
bits per second  
CRC  
DMA  
DMAC  
GSM  
Hi-Z  
Cyclic Redundancy Check  
Direct Memory Access  
Direct Memory Access Controller  
Global System for Mobile Communications  
High Impedance  
IEBus  
I/O  
Inter Equipment bus  
Input/Output  
IrDA  
LSB  
Infrared Data Association  
Least Significant Bit  
MSB  
NC  
Most Significant Bit  
Non-Connection  
PLL  
Phase Locked Loop  
PWM  
SFR  
SIM  
Pulse Width Modulation  
Special Function Registers  
Subscriber Identity Module  
Universal Asynchronous Receiver/Transmitter  
Voltage Controlled Oscillator  
UART  
VCO  
Table of Contents  
SFR Page Reference  
1. Overview  
B - 1  
1
1.1  
1.2  
1.3  
1.4  
1.5  
1.6  
Applications.................................................................................................1  
Performance Overview................................................................................2  
Block Diagram.............................................................................................4  
Product Information.....................................................................................5  
Pin Assignments..........................................................................................7  
Pin Functions.............................................................................................10  
2. Central Processing Unit (CPU)  
13  
2.1  
2.2  
2.3  
2.4  
2.5  
2.6  
2.7  
2.8  
Data Registers (R0, R1, R2, and R3)........................................................14  
Address Registers (A0 and A1).................................................................14  
Frame Base Register (FB) ........................................................................14  
Interrupt Table Register (INTB).................................................................14  
Program Counter (PC) ..............................................................................14  
User Stack Pointer (USP) and Interrupt Stack Pointer (ISP).....................14  
Static Base Register (SB)..........................................................................14  
Flag Register (FLG)...................................................................................14  
Carry Flag (C).....................................................................................14  
Debug Flag (D)...................................................................................14  
Zero Flag (Z).......................................................................................14  
Sign Flag (S).......................................................................................14  
Register Bank Select Flag (B) ............................................................14  
Overflow Flag (O) ...............................................................................14  
Interrupt Enable Flag (I)......................................................................15  
Stack Pointer Select Flag (U) .............................................................15  
Processor Interrupt Priority Level (IPL) ..............................................15  
2.8.1  
2.8.2  
2.8.3  
2.8.4  
2.8.5  
2.8.6  
2.8.7  
2.8.8  
2.8.9  
2.8.10 Reserved Bit.......................................................................................15  
3. Memory  
16  
R8C/18 Group ...........................................................................................16  
R8C/19 Group ...........................................................................................17  
3.1  
3.2  
A - 1  
4. Special Function Registers (SFRs)  
5. Resets  
18  
22  
5.1  
5.1.1  
5.1.2  
5.2  
Hardware Reset ........................................................................................24  
When Power Supply is Stable ............................................................24  
Power On............................................................................................24  
Power-On Reset Function.........................................................................26  
Voltage Monitor 1 Reset ...........................................................................27  
Voltage Monitor 2 Reset............................................................................27  
Watchdog Timer Reset..............................................................................27  
Software Reset..........................................................................................27  
5.3  
5.4  
5.5  
5.6  
6. Programmable I/O Ports  
28  
6.1  
6.2  
6.3  
6.4  
6.5  
Functions of Programmable I/O Ports.......................................................28  
Effect on Peripheral Functions ..................................................................28  
Pins Other than Programmable I/O Ports..................................................28  
Port settings ..............................................................................................35  
Unassigned Pin Handling..........................................................................39  
7. Voltage Detection Circuit  
40  
7.1  
VCC Input Voltage.....................................................................................46  
Monitoring Vdet1 ................................................................................46  
Monitoring Vdet2 ................................................................................46  
Digital Filter.........................................................................................46  
Voltage Monitor 1 Reset............................................................................48  
Voltage Monitor 2 Interrupt and Voltage Monitor 2 Reset .........................49  
7.1.1  
7.1.2  
7.1.3  
7.2  
7.3  
8. Processor Mode  
51  
8.1  
Processor Modes ......................................................................................51  
9. Bus  
52  
10. Clock Generation Circuit  
53  
10.1 Main Clock.................................................................................................60  
10.2 On-Chip Oscillator Clocks .........................................................................61  
10.2.1 Low-Speed On-Chip Oscillator Clock.................................................61  
10.2.2 High-Speed On-Chip Oscillator Clock ................................................61  
A - 2  
10.3 CPU Clock and Peripheral Function Clock................................................62  
10.3.1 System Clock......................................................................................62  
10.3.2 CPU Clock..........................................................................................62  
10.3.3 Peripheral Function Clock (f1, f2, f4, f8, and f32)...............................62  
10.3.4 fRING and fRING128..........................................................................62  
10.3.5 fRING-fast...........................................................................................62  
10.3.6 fRING-S..............................................................................................62  
10.4 Power Control............................................................................................63  
10.4.1 Standard Operating Mode ..................................................................63  
10.4.2 Wait Mode ..........................................................................................64  
10.4.3 Stop Mode ..........................................................................................66  
10.5 Oscillation Stop Detection Function ..........................................................68  
10.5.1 How to Use Oscillation Stop Detection Function................................68  
10.6 Notes on Clock Generation Circuit............................................................70  
10.6.1 Stop Mode and Wait Mode.................................................................70  
10.6.2 Oscillation Stop Detection Function....................................................70  
10.6.3 Oscillation Circuit Constants...............................................................70  
10.6.4 High-Speed On-Chip Oscillator Clock ................................................70  
11. Protection  
12. Interrupts  
71  
72  
12.1 Interrupt Overview.....................................................................................72  
12.1.1 Types of Interrupts..............................................................................72  
12.1.2 Software Interrupts .............................................................................73  
12.1.3 Special Interrupts................................................................................74  
12.1.4 Peripheral Function Interrupt..............................................................74  
12.1.5 Interrupts and Interrupt Vectors..........................................................75  
12.1.6 Interrupt Control..................................................................................77  
12.2 INT Interrupt ..............................................................................................85  
12.2.1 INT0 Interrupt .....................................................................................85  
12.2.2 INT0 Input Filter..................................................................................86  
12.2.3 INT1 Interrupt .....................................................................................87  
12.2.4 INT3 Interrupt .....................................................................................88  
12.3 Key Input Interrupt.....................................................................................90  
12.4 Address Match Interrupt............................................................................92  
A - 3  
12.5 Notes on Interrupts....................................................................................94  
12.5.1 Reading Address 00000h...................................................................94  
12.5.2 SP Setting...........................................................................................94  
12.5.3 External Interrupt and Key Input Interrupt ..........................................94  
12.5.4 Watchdog Timer Interrupt...................................................................94  
12.5.5 Changing Interrupt Sources................................................................95  
12.5.6 Changing Interrupt Control Register Contents ...................................96  
13. Watchdog Timer  
97  
13.1 Count Source Protection Mode Disabled ................................................100  
13.2 Count Source Protection Mode Enabled.................................................101  
14. Timers  
102  
14.1 Timer X....................................................................................................103  
14.1.1 Timer Mode ......................................................................................106  
14.1.2 Pulse Output Mode...........................................................................107  
14.1.3 Event Counter Mode.........................................................................109  
14.1.4 Pulse Width Measurement Mode .....................................................110  
14.1.5 Pulse Period Measurement Mode ....................................................113  
14.1.6 Notes on Timer X..............................................................................116  
14.2 Timer Z....................................................................................................117  
14.2.1 Timer Mode ......................................................................................122  
14.2.2 Programmable Waveform Generation Mode....................................124  
14.2.3 Programmable One-shot Generation Mode .....................................127  
14.2.4 Programmable Wait One-Shot Generation Mode.............................130  
14.2.5 Notes on Timer Z..............................................................................134  
14.3 Timer C....................................................................................................135  
14.3.1 Input Capture Mode..........................................................................141  
14.3.2 Output Compare Mode.....................................................................143  
14.3.3 Notes on Timer C .............................................................................145  
15. Serial Interface  
146  
15.1 Clock Synchronous Serial I/O Mode .......................................................152  
15.1.1 Polarity Select Function....................................................................155  
15.1.2 LSB First/MSB First Select Function ................................................155  
15.1.3 Continuous Receive Mode ...............................................................156  
A - 4  
15.2 Clock Asynchronous Serial I/O (UART) Mode ........................................157  
15.2.1 CNTR0 Pin Select Function..............................................................160  
15.2.2 Bit Rate.............................................................................................161  
15.3 Notes on Serial Interface.........................................................................162  
16. Comparator  
163  
16.1 One-Shot Mode.......................................................................................167  
16.2 Repeat Mode...........................................................................................169  
16.3 Notes on Comparator..............................................................................171  
17. Flash Memory Version  
172  
17.1 Overview .................................................................................................172  
17.2 Memory Map ...........................................................................................174  
17.3 Functions to Prevent Rewriting of Flash Memory....................................176  
17.3.1 ID Code Check Function ..................................................................176  
17.3.2 ROM Code Protect Function ............................................................177  
17.4 CPU Rewrite Mode..................................................................................178  
17.4.1 EW0 Mode........................................................................................179  
17.4.2 EW1 Mode........................................................................................179  
17.4.3 Software Commands........................................................................188  
17.4.4 Status Register.................................................................................192  
17.4.5 Full Status Check .............................................................................193  
17.5 Standard Serial I/O Mode........................................................................195  
17.5.1 ID Code Check Function ..................................................................195  
17.6 Parallel I/O Mode.....................................................................................199  
17.6.1 ROM Code Protect Function ............................................................199  
17.7 Notes on Flash Memory Version.............................................................200  
17.7.1 CPU Rewrite Mode...........................................................................200  
18. Electrical Characteristics  
19. Usage Notes  
202  
217  
19.1 Notes on Clock Generation Circuit..........................................................217  
19.1.1 Stop Mode and Wait Mode...............................................................217  
19.1.2 Oscillation Stop Detection Function..................................................217  
19.1.3 Oscillation Circuit Constants.............................................................217  
19.1.4 High-Speed On-Chip Oscillator Clock ..............................................217  
A - 5  
19.2 Notes on Interrupts..................................................................................218  
19.2.1 Reading Address 00000h.................................................................218  
19.2.2 SP Setting.........................................................................................218  
19.2.3 External Interrupt and Key Input Interrupt ........................................218  
19.2.4 Watchdog Timer Interrupt.................................................................218  
19.2.5 Changing Interrupt Sources..............................................................219  
19.2.6 Changing Interrupt Control Register Contents .................................220  
19.3 Notes on Timers......................................................................................221  
19.3.1 Notes on Timer X..............................................................................221  
19.3.2 Notes on Timer Z..............................................................................222  
19.3.3 Notes on Timer C .............................................................................222  
19.4 Notes on Serial Interface.........................................................................223  
19.5 Notes on Comparator..............................................................................224  
19.6 Notes on Flash Memory Version.............................................................225  
19.6.1 CPU Rewrite Mode...........................................................................225  
19.7 Notes on Noise........................................................................................227  
19.7.1 Inserting a Bypass Capacitor between VCC and VSS Pins as  
a Countermeasure against Noise and Latch-Up ..............................227  
19.7.2 Countermeasures against Noise Error of Port Control Registers.....227  
20. Notes on On-chip Debugger  
Appendix 1. Package Dimensions  
228  
229  
Appendix 2. Connection Examples between Serial Writer and  
On-Chip Debugging Emulator  
231  
232  
233  
Appendix 3. Example of Oscillation Evaluation Circuit  
Register Index  
A - 6  
SFR Page Reference  
Address  
0000h  
0001h  
0002h  
0003h  
0004h  
0005h  
0006h  
0007h  
0008h  
0009h  
000Ah  
000Bh  
000Ch  
000Dh  
000Eh  
000Fh  
0010h  
0011h  
0012h  
0013h  
0014h  
0015h  
0016h  
0017h  
0018h  
0019h  
001Ah  
001Bh  
001Ch  
001Dh  
001Eh  
Register  
Symbol  
Page  
Address  
0040h  
0041h  
0042h  
0043h  
0044h  
0045h  
0046h  
0047h  
0048h  
0049h  
004Ah  
004Bh  
004Ch  
004Dh  
004Eh  
004Fh  
0050h  
0051h  
0052h  
0053h  
0054h  
0055h  
0056h  
0057h  
0058h  
0059h  
Register  
Symbol  
Page  
Processor Mode Register 0  
Processor Mode Register 1  
System Clock Control Register 0  
System Clock Control Register 1  
PM0  
51  
51  
55  
56  
PM1  
CM0  
CM1  
Address Match Interrupt Enable Register  
Protect Register  
AIER  
PRCR  
93  
71  
Oscillation Stop Detection Register  
Watchdog Timer Reset Register  
Watchdog Timer Start Register  
Watchdog Timer Control Register  
Address Match Interrupt Register 0  
OCD  
57  
99  
99  
98  
93  
WDTR  
WDTS  
WDC  
Key Input Interrupt Control Register  
Comparator Conversion Interrupt Control Register ADIC  
KUPIC  
77  
77  
RMAD0  
Compare 1 Interrupt Control Register  
CMP1IC  
77  
77  
77  
77  
77  
UART0 Transmit Interrupt Control Register  
UART0 Receive Interrupt Control Register  
UART1 Transmit Interrupt Control Register  
UART1 Receive Interrupt Control Register  
S0TIC  
S0RIC  
S1TIC  
S1RIC  
Address Match Interrupt Register 1  
RMAD1  
93  
Timer X Interrupt Control Register  
TXIC  
77  
Timer Z Interrupt Control Register  
INT1 Interrupt Control Register  
TZIC  
INT1IC  
77  
77  
005Ah  
INT3IC  
77  
INT3 Interrupt Control Register  
Timer C Interrupt Control Register  
Compare 0 Interrupt Control Register  
005Bh  
005Ch  
005Dh  
TCIC  
CMP0IC  
INT0IC  
77  
77  
78  
Count Source Protection Mode Register  
INT0 Input Filter Select Register  
CSPR  
INT0F  
99  
85  
INT0 Interrupt Control Register  
005Eh  
005Fh  
0060h  
0061h  
0062h  
0063h  
0064h  
0065h  
0066h  
0067h  
0068h  
0069h  
006Ah  
006Bh  
006Ch  
006Dh  
006Eh  
006Fh  
0070h  
0071h  
0072h  
0073h  
0074h  
0075h  
0076h  
0077h  
0078h  
0079h  
007Ah  
007Bh  
007Ch  
007Dh  
007Eh  
007Fh  
001Fh  
0020h  
High-Speed On-Chip Oscillator Control  
Register 0  
High-Speed On-Chip Oscillator Control  
Register 1  
High-Speed On-Chip Oscillator Control  
Register 2  
HRA0  
HRA1  
HRA2  
58  
59  
59  
0021h  
0022h  
0023h  
0024h  
0025h  
0026h  
0027h  
0028h  
0029h  
002Ah  
002Bh  
002Ch  
002Dh  
002Eh  
002Fh  
0030h  
0031h  
0032h  
0033h  
0034h  
0035h  
0036h  
0037h  
0038h  
0039h  
003Ah  
003Bh  
003Ch  
003Dh  
003Eh  
003Fh  
Voltage Detection Register 1  
Voltage Detection Register 2  
VCA1  
VCA2  
43  
43  
Voltage Monitor 1 Circuit Control Register  
Voltage Monitor 2 Circuit Control Register  
VW1C  
VW2C  
44  
45  
NOTE:  
1. The blank regions are reserved. Do not access locations  
in these regions.  
B - 1  
Address Register  
Timer Z Mode Register  
Symbol  
TZMR  
Page  
118  
Address Register  
A/D Register  
Symbol  
AD  
Page  
166  
0080h  
0081h  
0082h  
0083h  
0084h  
0085h  
0086h  
0087h  
0088h  
0089h  
008Ah  
008Bh  
008Ch  
008Dh  
008Eh  
008Fh  
0090h  
0091h  
0092h  
0093h  
0094h  
0095h  
0096h  
0097h  
0098h  
0099h  
009Ah  
009Bh  
009Ch  
009Dh  
009Eh  
009Fh  
00A0h  
00A1h  
00A2h  
00A3h  
00A4h  
00A5h  
00A6h  
00A7h  
00A8h  
00A9h  
00AAh  
00ABh  
00ACh  
00ADh  
00AEh  
00AFh  
00B0h  
00B1h  
00B2h  
00B3h  
00B4h  
00B5h  
00B6h  
00B7h  
00B8h  
00B9h  
00BAh  
00BBh  
00BCh  
00BDh  
00BEh  
00BFh  
00C0h  
00C1h  
00C2h  
00C3h  
00C4h  
00C5h  
00C6h  
00C7h  
00C8h  
00C9h  
00CAh  
00CBh  
00CCh  
00CDh  
00CEh  
00CFh  
00D0h  
00D1h  
00D2h  
00D3h  
00D4h  
00D5h  
00D6h  
00D7h  
00D8h  
00D9h  
00DAh  
00DBh  
00DCh  
00DDh  
00DEh  
00DFh  
00E0h  
00E1h  
00E2h  
00E3h  
00E4h  
00E5h  
00E6h  
00E7h  
00E8h  
00E9h  
00EAh  
00EBh  
00ECh  
00EDh  
00EEh  
00EFh  
00F0h  
00F1h  
00F2h  
00F3h  
00F4h  
00F5h  
00F6h  
00F7h  
00F8h  
00F9h  
00FAh  
00FBh  
00FCh  
00FDh  
00FEh  
00FFh  
Timer Z Waveform Output Control Register  
Prescaler Z Register  
Timer Z Secondary Register  
Timer Z Primary Register  
PUM  
120  
119  
119  
119  
PREZ  
TZSC  
TZPR  
Timer Z Output Control Register  
Timer X Mode Register  
Prescaler X Register  
Timer X Register  
Timer Count Source Set Register  
TZOC  
TXMR  
PREX  
TX  
120  
104  
105  
105  
105,121  
TCSS  
Timer C Register  
TC  
137  
A/D Control Register 2  
ADCON2  
166  
External Input Enable Register  
Key Input Enable Register  
INTEN  
KIEN  
85  
91  
A/D Control Register 0  
A/D Control Register 1  
ADCON0  
ADCON1  
165  
165  
Timer C Control Register 0  
Timer C Control Register 1  
Capture, Compare 0 Register  
TCC0  
TCC1  
TM0  
138  
139  
137  
Compare 1 Register  
TM1  
137  
UART0 Transmit/Receive Mode Register  
UART0 Bit Rate Register  
UART0 Transmit Buffer Register  
U0MR  
U0BRG  
U0TB  
149  
148  
148  
Port P1 Register  
P1  
33  
33  
33  
Port P1 Direction Register  
Port P3 Register  
PD1  
P3  
UART0 Transmit/Receive Control Register 0 U0C0  
UART0 Transmit/Receive Control Register 1 U0C1  
UART0 Receive Buffer Register  
150  
151  
148  
U0RB  
Port P3 Direction Register  
Port P4 Register  
PD3  
P4  
33  
33  
UART1 Transmit/Receive Mode Register  
UART1 Bit Rate Register  
UART1 Transmit Buffer Register  
U1MR  
U1BRG  
U1TB  
149  
148  
148  
Port P4 Direction Register  
PD4  
33  
UART1 Transmit/Receive Control Register 0 U1C0  
UART1 Transmit/Receive Control Register 1 U1C1  
UART1 Receive Buffer Register  
150  
151  
148  
U1RB  
UART Transmit/Receive Control Register 2  
UCON  
151  
Pull-Up Control Register 0  
Pull-Up Control Register 1  
Port P1 Drive Capacity Control Register  
Timer C Output Control Register  
PUR0  
PUR1  
DRR  
34  
34  
34  
TCOUT  
140  
NOTE:  
01B3h  
01B4h  
01B5h  
01B6h  
01B7h  
Flash Memory Control Register 4  
Flash Memory Control Register 1  
Flash Memory Control Register 0  
FMR4  
FMR1  
FMR0  
OFS  
184  
183  
1. The blank regions, 0100h to 01AFh, and 01C0h to 02FFh  
are reserved. Do not access locations in these regions.  
182  
0FFFFh Optional Function Select Register  
98,177  
B - 2  
R8C/18 Group, R8C/19 Group  
SINGLE-CHIP 16-BIT CMOS MCU  
REJ09B0222-0130  
Rev.1.30  
Apr 14, 2006  
1. Overview  
These MCUs are fabricated using a high-performance silicon gate CMOS process, embedding the  
R8C/Tiny Series CPU core, and is packaged in a 20-pin molded-plastic LSSOP, SDIP or a 28-pin plastic  
molded-HWQFN. It implements sophisticated instructions for a high level of instruction efficiency. With 1  
Mbyte of address space, they are capable of executing instructions at high speed.  
Furthermore, the R8C/19 Group has on-chip data flash ROM (1 KB × 2 blocks).  
The difference between the R8C/18 Group and R8C/19 Group is only the presence or absence of data  
flash ROM. Their peripheral functions are the same.  
1.1  
Applications  
Electric household appliances, office equipment, housing equipment (sensors, security systems), general  
industrial equipment, audio equipment, etc.  
Rev.1.30 Apr 14, 2006 Page 1 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
1.2  
Performance Overview  
Table 1.1 outlines the Functions and Specifications for R8C/18 Group and Table 1.2 outlines the  
Functions and Specifications for R8C/19 Group.  
Table 1.1  
Functions and Specifications for R8C/18 Group  
Item  
Specification  
CPU  
Number of fundamental  
89 instructions  
instructions  
Minimum instruction execution 50 ns (f(XIN) = 20 MHz, VCC = 3.0 to 5.5 V)  
time  
100 ns (f(XIN) = 10 MHz, VCC = 2.7 to 5.5 V)  
Single-chip  
1 Mbyte  
Operation mode  
Address space  
Memory capacity  
Refer to Table 1.3 Product Information for R8C/18  
Group  
Peripheral  
Functions  
Ports  
I/O ports: 13 pins (including LED drive port)  
Input port: 3 pins  
LED drive ports  
Timers  
I/O ports: 4 pins  
Timer X: 8 bits × 1 channel, timer Z: 8 bits × 1 channel  
(Each timer equipped with 8-bit prescaler)  
Timer C: 16 bits × 1 channel  
(Input capture and output compare circuits)  
1 channel  
Serial interfaces  
Clock synchronous serial I/O, UART  
1 channel  
UART  
Comparator  
Watchdog timer  
1-bit comparator: 1 circuit, 4 channels  
15 bits × 1 channel (with prescaler)  
Reset start selectable, count source protection mode  
Internal: 10 sources, External: 4 sources, Software: 4  
sources,  
Interrupts  
Priority levels: 7 levels  
Clock generation circuits  
2 circuits  
• Main clock oscillation circuit (with on-chip feedback  
resistor)  
• On-chip oscillator (high speed, low speed)  
High-speed on-chip oscillator has frequency  
adjustment function  
Oscillation stop detection  
function  
Main clock oscillation stop detection function  
Voltage detection circuit  
Power-on reset circuit  
Supply voltage  
On-chip  
On-chip  
Electric  
Characteristics  
VCC = 3.0 to 5.5 V (f(XIN) = 20 MHz)  
VCC = 2.7 to 5.5 V (f(XIN) = 10 MHz)  
Typ. 9 mA (VCC = 5.0 V, f(XIN) = 20 MHz, comparator stopped)  
Typ. 5 mA (VCC = 3.0V, f(XIN) = 10 MHz, comparator stopped)  
Current consumption  
Typ. 35  
Typ. 0.7 µA (VCC = 3.0 V, stop mode)  
Flash Memory Programming and erasure voltage VCC = 2.7 to 5.5 V  
µA (VCC = 3.0 V, wait mode, peripheral clock off)  
Programming and erasure  
100 times  
endurance  
Operating Ambient Temperature  
-20 to 85°C  
-40 to 85°C (D version)  
20-pin molded-plastic LSSOP  
20-pin molded-plastic SDIP  
28-pin molded-plastic HWQFN  
Package  
Rev.1.30 Apr 14, 2006 Page 2 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
Table 1.2  
Functions and Specifications for R8C/19 Group  
Item  
Specification  
CPU  
Number of fundamental  
89 instructions  
instructions  
Minimum instruction  
execution time  
Operation mode  
Address space  
Memory capacity  
50 ns (f(XIN) = 20 MHz, VCC = 3.0 to 5.5 V)  
100 ns (f(XIN) = 10 MHz, VCC = 2.7 to 5.5 V)  
Single-chip  
1 Mbyte  
Refer to Table 1.4 Product Information for R8C/19  
Group  
Peripheral  
Functions  
Ports  
I/O ports: 13 pins (including LED drive port)  
Input port: 3 pins  
LED drive ports  
Timers  
I/O ports: 4 pins  
Timer X: 8 bits × 1 channel, timer Z: 8 bits × 1 channel  
(Each timer equipped with 8-bit prescaler)  
Timer C: 16 bits × 1 channel  
(Input capture and output compare circuits)  
1 channel  
Serial interfaces  
Clock synchronous serial I/O, UART  
1 channel  
UART  
Comparator  
Watchdog timer  
1-bit comparator: 1 circuit, 4 channels  
15 bits × 1 channel (with prescaler)  
Reset start selectable, count source protection mode  
Internal: 10 sources, External: 4 sources, Software: 4  
sources,  
Interrupts  
Priority levels: 7 levels  
Clock generation circuits  
2 circuits  
• Main clock generation circuit (with on-chip feedback  
resistor)  
• On-chip oscillator (high speed, low speed)  
High-speed on-chip oscillator has frequency  
adjustment function  
Oscillation stop detection  
function  
Main clock oscillation stop detection function  
Voltage detection circuit  
Power-on reset circuit  
Supply voltage  
On-chip  
On-chip  
Electric  
Characteristics  
VCC = 3.0 to 5.5 V (f(XIN) = 20 MHz)  
VCC = 2.7 to 5.5 V (f(XIN) = 10 MHz)  
Typ. 9 mA (VCC = 5.0 V, f(XIN) = 20 MHz, comparator stopped)  
Typ. 5 mA (VCC = 3.0 V, f(XIN) = 10MHz, comparator stopped)  
Typ. 35 µA (VCC = 3.0 V, wait mode, peripheral clock off)  
Typ. 0.7 µA (VCC = 3.0 V, stop mode)  
Current consumption  
Flash Memory Programming and erasure voltage VCC = 2.7 to 5.5 V  
Programming and erasure  
endurance  
Operating Ambient Temperature  
10,000 times (data flash)  
1,000 times (program ROM)  
-20 to 85°C  
-40 to 85°C (D version)  
20-pin molded-plastic LSSOP  
20-pin molded-plastic SDIP  
28-pin molded-plastic HWQFN  
Package  
Rev.1.30 Apr 14, 2006 Page 3 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
1.3  
Block Diagram  
Figure 1.1 shows a Block Diagram.  
8
1
3
4
I/O ports  
Port P1  
Port P3  
Port P4  
Peripheral Functions  
System clock generator  
Comparator  
(1 bit × 4 channels)  
Timers  
XIN-XOUT  
High-speed on-chip  
oscillator  
Low-speed on-chip  
oscillator  
Timer X (8 bits)  
Timer Z (8 bits)  
Timer C (16 bits)  
UART or  
clock synchronous serial I/O  
(8 bits × 1 channel)  
UART  
(8 bits × 1 channel)  
Watchdog timer  
(15 bits)  
Memory  
R8C/Tiny Series CPU core  
ROM(1)  
R0H  
R1H  
R0L  
R1L  
SB  
USP  
ISP  
INTB  
PC  
FLG  
R2  
R3  
RAM(2)  
A0  
A1  
FB  
Multiplier  
NOTES:  
1. ROM size varies with MCU type.  
2. RAM size varies with MCU type.  
Figure 1.1  
Block Diagram  
Rev.1.30 Apr 14, 2006 Page 4 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
1.4  
Product Information  
Table 1.3 lists Product Information for R8C/18 Group and Table 1.4 lists Product Information for R8C/19  
Group.  
Table 1.3  
Product Information for R8C/18 Group  
ROM Capacity RAM Capacity Package Type  
Current of Apr. 2006  
Type No.  
Remarks  
R5F21181SP  
4 Kbytes  
8 Kbytes  
12 Kbytes  
16 Kbytes  
4 Kbytes  
8 Kbytes  
12 Kbytes  
16 Kbytes  
4 Kbytes  
8 Kbytes  
12 Kbytes  
16 Kbytes  
8 Kbytes  
12 Kbytes  
16 Kbytes  
384 bytes  
512 bytes  
768 bytes  
1 Kbyte  
PLSP0020JB-A  
PLSP0020JB-A  
PLSP0020JB-A  
PLSP0020JB-A  
PLSP0020JB-A  
PLSP0020JB-A  
PLSP0020JB-A  
PLSP0020JB-A  
Flash memory version  
R5F21182SP  
R5F21183SP  
R5F21184SP  
R5F21181DSP (D)  
R5F21182DSP (D)  
R5F21183DSP (D)  
R5F21184DSP (D)  
R5F21181DD  
R5F21182DD  
R5F21183DD  
R5F21184DD  
R5F21182NP  
384 bytes  
512 bytes  
768 bytes  
1 Kbyte  
D version  
384 bytes  
512 bytes  
768 bytes  
1 Kbyte  
PRDP0020BA-A Flash memory version  
PRDP0020BA-A  
PRDP0020BA-A  
PRDP0020BA-A  
512 bytes  
768 bytes  
1 Kbyte  
PWQN0028KA-B Flash memory version  
PWQN0028KA-B  
R5F21183NP  
R5F21184NP  
PWQN0028KA-B  
(D): Under Development  
Type No. R 5 F 21 18 4 D SP  
Package type:  
SP: PLSP0020JB-A  
DD: PRDP0020BA-A  
NP: PWQN0028KA-B  
Classification  
D: Operating ambient temperature -40°C to 85°C  
No Symbol: Operating ambient temperature -20°C to 85°C  
ROM capacity  
2: 8 KB  
3: 12 KB  
4: 16 KB  
R8C/18 Group  
R8C/Tiny Series  
Memory type  
F: Flash memory  
Renesas MCU  
Renesas semiconductors  
Figure 1.2  
Type Number, Memory Size, and Package of R8C/18 Group  
Rev.1.30 Apr 14, 2006 Page 5 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
Table 1.4  
Product Information for R8C/19 Group  
Current of Apr. 2006  
ROM Capacity  
RAM  
Capacity  
Type No.  
Package Type  
Remarks  
Program ROM Data flash  
R5F21191SP  
R5F21192SP  
R5F21193SP  
R5F21194SP  
4 Kbytes  
8 Kbytes  
12 Kbytes  
16 Kbytes  
1 Kbyte × 2 384 bytes PLSP0020JB-A Flash memory version  
1 Kbyte × 2 512 bytes PLSP0020JB-A  
1 Kbyte × 2 768 bytes PLSP0020JB-A  
1 Kbyte × 2 1 Kbyte  
PLSP0020JB-A  
R5F21191DSP (D) 4 Kbytes  
R5F21192DSP (D) 8 Kbytes  
R5F21193DSP (D) 12 Kbytes  
R5F21194DSP (D) 16 Kbytes  
1 Kbyte × 2 384 bytes PLSP0020JB-A D version  
1 Kbyte × 2 512 bytes PLSP0020JB-A  
1 Kbyte × 2 768 bytes PLSP0020JB-A  
1 Kbyte × 2 1 Kbyte  
PLSP0020JB-A  
R5F21191DD  
R5F21192DD  
R5F21193DD  
R5F21194DD  
R5F21192NP  
R5F21193NP  
R5F21194NP  
4 Kbytes  
8 Kbytes  
12 Kbytes  
16 Kbytes  
8 Kbytes  
12 Kbytes  
16 Kbytes  
1 Kbyte × 2 384 bytes PRDP0020BA-A Flash memory version  
1 Kbyte × 2 512 bytes PRDP0020BA-A  
1 Kbyte × 2 768 bytes PRDP0020BA-A  
1 Kbyte × 2 1 Kbyte  
PRDP0020BA-A  
1 Kbyte × 2 512 bytes PWQN0028KA-B Flash memory version  
1 Kbyte × 2 768 bytes PWQN0028KA-B  
1 Kbyte × 2 1 Kbyte  
PWQN0028KA-B  
(D): Under Development  
Type No. R 5 F 21 19 4 D SP  
Package type:  
SP: PLSP0020JB-A  
DD: PRDP0020BA-A  
NP: PWQN0028KA-B  
Classification  
D: Operating ambient temperature -40°C to 85°C  
No Symbol: Operating ambient temperature -20°C to 85°C  
ROM capacity  
2: 8 KB  
3: 12 KB  
4: 16 KB  
R8C/19 Group  
R8C/Tiny Series  
Memory type  
F: Flash memory  
Renesas MCU  
Renesas semiconductors  
Figure 1.3  
Type Number, Memory Size, and Package of R8C/19 Group  
Rev.1.30 Apr 14, 2006 Page 6 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
1.5  
Pin Assignments  
Figure 1.4 shows Pin Assignments for PLSP0020JB-A Package (Top View), Figure 1.5 shows Pin  
Assignments for PRDP0020BA-A Package (Top View) and Figure 1.6 shows Pin Assignments for  
PWQN0028KA-B Package (Top View).  
PIN assignments (top view)  
P3_5/CMP1_2  
20  
19  
18  
17  
16  
15  
14  
13  
12  
11  
P3_4/CMP1_1  
1
2
3
4
5
6
7
8
9
10  
P3_3/TCIN/INT3/CMP1_0  
P1_0/KI0/AN8/CMP0_0  
P1_1/KI1/AN9/CMP0_1  
P4_2/VREF  
P3_7/CNTR0/TXD1  
RESET  
XOUT/P4_7(1)  
VSS/AVSS  
P1_2/KI2/AN10/CMP0_2  
P1_3/KI3/AN11/TZOUT  
P1_4/TXD0  
XIN/P4_6  
VCC/AVCC  
MODE  
P4_5/INT0/RXD1  
P1_5/RXD0/CNTR01/INT11  
P1_6/CLK0  
P1_7/CNTR00/INT10  
NOTE:  
1. P4_7 is an input-only port.  
Package: PLSP0020JB-A(20P2F-A)  
Figure 1.4  
Pin Assignments for PLSP0020JB-A Package (Top View)  
Rev.1.30 Apr 14, 2006 Page 7 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
PIN assignments (top view)  
P3_5/CMP1_2  
20  
19  
18  
17  
16  
15  
14  
13  
12  
11  
P3_4/CMP1_1  
1
P3_3/TCIN/INT3/CMP1_0  
P1_0/KI0/AN8/CMP0_0  
P1_1/KI1/AN9/CMP0_1  
P4_2/VREF  
2
P3_7/CNTR0/TXD1  
RESET  
3
XOUT/P4_7(1)  
VSS/AVSS  
4
5
P1_2/KI2/AN10/CMP0_2  
P1_3/KI3/AN11/TZOUT  
P1_4/TXD0  
6
XIN/P4_6  
7
VCC/AVCC  
8
MODE  
P1_5/RXD0/CNTR01/INT11  
P1_6/CLK0  
P4_5/INT0/RXD1  
9
10  
P1_7/CNTR00/INT10  
NOTE:  
1. P4_7 is an input-only port.  
Package: PRDP0020BA-A(20P4B)  
Pin Assignments for PRDP0020BA-A Package (Top View)  
Figure 1.5  
Rev.1.30 Apr 14, 2006 Page 8 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
PIN Assignment (top view)  
21 20 19 18 17 16 15  
P1_1/AN9/KI1/CMP0_1  
22  
23  
24  
25  
26  
27  
28  
14  
13  
12  
11  
10  
9
P1_4/TXD0  
P1_5/RXD0/CNTR01/INT11  
P1_6/CLK0  
P1_0/AN8/KI0/CMP0_0  
P3_3/TCIN/INT3/CMP1_0  
P3_4/CMP1_1  
R8C/18 Group  
R8C/19 Group  
P1_7/CNTR00/INT10  
P4_5/INT0/RXD1  
MODE  
P3_5/CMP1_2  
P3_7/CNTR0/TXD1  
RESET  
8
VCC/AVCC  
1
2
3
4
5
6
7
NOTES:  
1. P4_7 is a port for the input.  
Package: PWQN0028KA-B(28PJW-B)  
Figure 1.6  
Pin Assignments for PWQN0028KA-B Package (Top View)  
Rev.1.30 Apr 14, 2006 Page 9 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
1.6  
Pin Functions  
Table 1.5 lists Pin Functions, Table 1.6 lists Pin Name Information by Pin Number of PLSP0020JB-A,  
PRDP0020BA-A packages, and Table 1.7 lists Pin Name Information by Pin Number of PWQN0028KA-  
B package.  
Table 1.5  
Type  
Pin Functions  
Symbol  
I/O Type  
I
Description  
Power supply input VCC  
VSS  
Apply 2.7 V to 5.5 V to the VCC pin. Apply 0 V to  
the VSS pin.  
Analog power  
supply input  
AVCC, AVSS  
I
Power supply for the comparator  
Connect a capacitor between AVCC and AVSS.  
Reset input  
MODE  
RESET  
MODE  
XIN  
I
I
I
Input “L” on this pin resets the MCU.  
Connect this pin to VCC via a resistor.  
Main clock input  
These pins are provided for main clock generation  
circuit I/O. Connect a ceramic resonator or a  
crystal oscillator between the XIN and XOUT pins.  
To use an external clock, input it to the XIN pin  
and leave the XOUT pin open.  
Main clock output  
INT interrupt  
XOUT  
O
INT0, INT1, INT3  
I
I
INT interrupt input pins  
Key input interrupt input pins  
Timer X I/O pin  
Key input interrupt KI0 to KI3  
Timer X  
CNTR0  
CNTR0  
TZOUT  
TCIN  
I/O  
O
O
I
Timer X output pin  
Timer Z output pin  
Timer C input pin  
Timer Z  
Timer C  
CMP0_0 to CMP0_2,  
CMP1_0 to CMP1_2  
O
Timer C output pins  
Serial interface  
CLK0  
I/O  
Transfer clock I/O pin  
RXD0, RXD1  
TXD0, TXD1  
I
O
I
Serial data input pins  
Serial data output pins  
Reference voltage VREF  
input  
Reference voltage input pin to comparator  
Comparator  
I/O port  
AN8 to AN11  
I
Analog input pins to comparator  
P1_0 to P1_7, P3_3  
to P3_5, P3_7, P4_5  
I/O  
CMOS I/O ports. Each port has an I/O select  
direction register, allowing each pin in the port to  
be directed for input or output individually.  
Any port set to input can be set to use a pull-up  
resistor or not by a program.  
P1_0 to P1_3 also function as LED drive ports.  
Input port  
I: Input  
P4_2, P4_6, P4_7  
I
Input-only ports  
O: Output  
I/O: Input and output  
Rev.1.30 Apr 14, 2006 Page 10 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
Table 1.6  
Pin Name Information by Pin Number of PLSP0020JB-A, PRDP0020BA-A packages  
I/O Pin Functions for Peripheral Modules  
Pin  
Number  
Control  
Pin  
Port  
Interrupt  
Timer  
Serial Interface  
Comparator  
1
2
P3_5  
P3_7  
CMP1_2  
TXD1  
CNTR0  
3
RESET  
XOUT  
4
5
6
7
8
9
P4_7  
P4_6  
VSS/AVSS  
XIN  
VCC/AVCC  
MODE  
P4_5  
P1_7  
RXD1  
INT0  
10  
CNTR00  
CNTR01  
INT10  
11  
12  
P1_6  
P1_5  
CLK0  
RXD0  
INT11  
13  
14  
P1_4  
P1_3  
TXD0  
TZOUT  
AN11  
AN10  
KI3  
KI2  
15  
P1_2  
CMP0_2  
16  
17  
VREF  
P4_2  
P1_1  
CMP0_1  
CMP0_0  
AN9  
AN8  
KI1  
KI0  
18  
19  
20  
P1_0  
P3_3  
P3_4  
TCIN/CMP1_0  
CMP1_1  
INT3  
Rev.1.30 Apr 14, 2006 Page 11 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
1.Overview  
Table 1.7  
Pin Name Information by Pin Number of PWQN0028KA-B package  
I/O Pin of Peripheral Function  
Pin  
Number  
Control  
Pin  
Port  
Interrupt  
Timer  
Serial Interface  
Comparator  
1
2
NC  
XOUT  
P4_7  
3
4
5
6
7
8
9
VSS/AVSS  
NC  
NC  
XIN  
P4_6  
NC  
VCC/AVCC  
MODE  
10  
11  
12  
13  
14  
15  
16  
17  
18  
P4_5  
P1_7  
P1_6  
P1_5  
P1_4  
RXD1  
INT0  
CNTR00  
CNTR01  
INT10  
CLK0  
RXD0  
TXD0  
INT11  
NC  
NC  
P1_3  
P1_2  
TZOUT  
AN11  
AN10  
KI3  
KI2  
CMP0_2  
19  
20  
21  
22  
NC  
VREF  
NC  
P4_2  
P1_1  
P1_0  
CMP0_1  
CMP0_0  
AN9  
AN8  
KI1  
KI0  
23  
24  
25  
26  
27  
P3_3  
P3_4  
P3_5  
P3_7  
TCIN/CMP1_0  
CMP1_1  
INT3  
CMP1_2  
TXD1  
CNTR0  
28  
RESET  
Rev.1.30 Apr 14, 2006 Page 12 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
2. Central Processing Unit (CPU)  
2. Central Processing Unit (CPU)  
Figure 2.1 shows the CPU Registers. The CPU contains 13 registers. R0, R1, R2, R3, A0, A1, and FB  
configure a register bank. There are two sets of register bank.  
b31  
b15  
b8b7  
b0  
R0H (high-order of R0) R0L (low-order of R0)  
R1H (high-order of R1) R1L (low-order of R1)  
R2  
R2  
R3  
Data registers (1)  
R3  
A0  
Address registers (1)  
A1  
FB  
Frame base register (1)  
b19  
b15  
b0  
Interrupt table register  
Program counter  
INTBH  
INTBL  
The 4-high order bits of INTB are INTBH and  
the 16-low bits of INTB are INTBL.  
b19  
b0  
PC  
b15  
b0  
User stack pointer  
Interrupt stack pointer  
Static base register  
USP  
ISP  
SB  
b15  
b0  
b0  
Flag register  
FLG  
b15  
b8  
b7  
IPL  
U I O B S Z D C  
Carry flag  
Debug flag  
Zero flag  
Sign flag  
Register bank select flag  
Overflow flag  
Interrupt enable flag  
Stack pointer select flag  
Reserved bit  
Processor interrupt priority level  
Reserved bit  
NOTE:  
1. These registers comprise a register bank. There are two register banks.  
Figure 2.1  
CPU Registers  
Rev.1.30 Apr 14, 2006 Page 13 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
2. Central Processing Unit (CPU)  
2.1  
Data Registers (R0, R1, R2, and R3)  
R0 is a 16-bit register for transfer, arithmetic, and logic operations. The same applies to R1 to R3. R0  
can be split into high-order bits (R0H) and low-order bits (R0L) to be used separately as 8-bit data  
registers. R1H and R1L are analogous to R0H and R0L. R2 can be combined with R0 and used as a  
32-bit data register (R2R0). R3R1 is analogous to R2R0.  
2.2  
Address Registers (A0 and A1)  
A0 is a 16-bit register for address register indirect addressing and address register relative addressing.  
It is also used for transfer, arithmetic and logic operations. A1 is analogous to A0. A1 can be combined  
with A0 and used as a 32-bit address register (A1A0).  
2.3  
Frame Base Register (FB)  
FB is a 16-bit register for FB relative addressing.  
2.4  
Interrupt Table Register (INTB)  
INTB is a 20-bit register that indicates the start address of an interrupt vector table.  
2.5  
Program Counter (PC)  
PC is 20 bits wide, indicates the address of the next instruction to be executed.  
2.6  
User Stack Pointer (USP) and Interrupt Stack Pointer (ISP)  
The stack pointer (SP), USP, and ISP, are each 16 bits wide. The U flag of FLG is used to switch  
between USP and ISP.  
2.7  
Static Base Register (SB)  
SB is a 16-bit register for SB relative addressing.  
2.8  
Flag Register (FLG)  
FLG is an 11-bit register indicating the CPU state.  
2.8.1  
Carry Flag (C)  
The C flag retains a carry, borrow, or shift-out bits that have been generated by the arithmetic and logic  
unit.  
2.8.2  
Debug Flag (D)  
The D flag is for debugging only. Set it to 0.  
2.8.3  
Zero Flag (Z)  
The Z flag is set to 1 when an arithmetic operation results in 0; otherwise to 0.  
2.8.4  
Sign Flag (S)  
The S flag is set to 1 when an arithmetic operation results in a negative value; otherwise to 0.  
2.8.5  
Register Bank Select Flag (B)  
Register bank 0 is selected when the B flag is 0. Register bank 1 is selected when this flag is set to 1.  
2.8.6  
Overflow Flag (O)  
The O flag is set to 1 when the operation results in an overflow; otherwise to 0.  
Rev.1.30 Apr 14, 2006 Page 14 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
2. Central Processing Unit (CPU)  
2.8.7  
Interrupt Enable Flag (I)  
The I flag enables maskable interrupts.  
Interrupts are disabled when the I flag is set to 0, and are enabled when the I flag is set to 1. The I flag is  
set to 0 when an interrupt request is acknowledged.  
2.8.8  
Stack Pointer Select Flag (U)  
ISP is selected when the U flag is set to 0; USP is selected when the U flag is set to 1.  
The U flag is set to 0 when a hardware interrupt request is acknowledged or the INT instruction of  
software interrupt numbers 0 to 31 is executed.  
2.8.9  
Processor Interrupt Priority Level (IPL)  
IPL is 3 bits wide, assigns processor interrupt priority levels from level 0 to level 7.  
If a requested interrupt has higher priority than IPL, the interrupt is enabled.  
2.8.10 Reserved Bit  
If necessary, set to 0. When read, the content is undefined.  
Rev.1.30 Apr 14, 2006 Page 15 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
3.Memory  
3. Memory  
3.1  
R8C/18 Group  
Figure 3.1 is a Memory Map of R8C/18 Group. The R8C/18 Group has 1 Mbyte of address space from  
addresses 00000h to FFFFFh.  
The internal ROM area is allocated lower addresses, beginning with address 0FFFFh. For example, a  
16-Kbyte internal ROM is allocated addresses 0C000h to 0FFFFh.  
The fixed interrupt vector table is allocated addresses 0FFDCh to 0FFFFh. They store the starting  
address of each interrupt routine.  
The internal RAM is allocated higher addresses, beginning with address 00400h. For example, a 1-  
Kbyte internal RAM area is allocated addresses 00400h to 007FFh. The internal RAM is used not only  
for storing data but also for calling subroutines and as stacks when interrupt requests are  
acknowledged.  
Special function registers (SFRs) are allocated addresses 00000h to 002FFh. The peripheral function  
control registers are allocated here. All addresses within the SFR, which have nothing allocated are  
reserved for future use and cannot be accessed by users.  
00000h  
SFR  
(See 4. Special Function  
Registers (SFRs))  
002FFh  
00400h  
Internal RAM  
0XXXXh  
0FFDCh  
Undefined instruction  
Overflow  
BRK instruction  
Address match  
Single step  
Watchdog timer oscillation stop detection voltage monitor 2  
0YYYYh  
Address break  
(Reserved)  
Reset  
Internal ROM  
0FFFFh  
0FFFFh  
FFFFFh  
Expanded area  
NOTE:  
1. The blank regions are reserved. Do not access locations in these regions.  
Internal ROM  
Part Number  
Internal RAM  
Size  
Address 0YYYYh  
0C000h  
Size  
Address 0XXXXh  
007FFh  
R5F21184SP, R5F21184DSP, R5F21184DD, R5F21184NP  
R5F21183SP, R5F21183DSP, R5F21183DD, R5F21183NP  
R5F21182SP, R5F21182DSP, R5F21182DD, R5F21182NP  
R5F21181SP, R5F21181DSP, R5F21181DD  
16 Kbytes  
12 Kbytes  
8 Kbytes  
4 Kbytes  
1 Kbyte  
768 bytes  
512 bytes  
384 bytes  
0D000h  
006FFh  
0E000h  
005FFh  
0F000h  
0057Fh  
Figure 3.1  
Memory Map of R8C/18 Group  
Rev.1.30 Apr 14, 2006 Page 16 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
3.Memory  
3.2  
R8C/19 Group  
Figure 3.2 is a Memory Map of R8C/19 Group. The R8C/19 group has 1 Mbyte of address space from  
addresses 00000h to FFFFFh.  
The internal ROM (program ROM) is allocated lower addresses, beginning with address 0FFFFh. For  
example, a 16-Kbyte internal ROM area is allocated addresses 0C000h to 0FFFFh.  
The fixed interrupt vector table is allocated addresses 0FFDCh to 0FFFFh. They store the starting  
address of each interrupt routine.  
The internal ROM (data flash) is allocated addresses 02400h to 02BFFh.  
The internal RAM is allocated higher addresses, beginning with address 00400h. For example, a 1-  
Kbyte internal RAM area is allocated addresses 00400h to 007FFh. The internal RAM is used not only  
for storing data but also for calling subroutines and as stacks when interrupt requests are  
acknowledged.  
Special function registers (SFRs) are allocated addresses 00000h to 002FFh. The peripheral function  
control registers are allocated here. All addresses within the SFR, which have nothing allocated are  
reserved for future use and cannot be accessed by users.  
00000h  
SFR  
(See 4. Special Function  
Registers (SFRs))  
002FFh  
00400h  
Internal RAM  
0XXXXh  
02400h  
Internal ROM  
0FFDCh  
(data flash)(1)  
Undefined instruction  
02BFFh  
Overflow  
BRK instruction  
Address match  
Single step  
Watchdog timer oscillation stop detection voltage monitor 2  
0YYYYh  
0FFFFh  
Address break  
(Reserved)  
Reset  
Internal ROM  
(program ROM)  
0FFFFh  
Expanded area  
FFFFFh  
NOTES:  
1. Data flash block A (1 Kbyte) and B (1 Kbyte) are shown.  
2. The blank regions are reserved. Do not access locations in these regions.  
Internal ROM  
Part Number  
Internal RAM  
Size  
Address 0YYYYh  
0C000h  
Size  
Address 0XXXXh  
007FFh  
R5F21194SP, R5F21194DSP, R5F21194DD, R5F21194NP  
R5F21193SP, R5F21193DSP, R5F21193DD, R5F21193NP  
R5F21192SP, R5F21192DSP, R5F21192DD, R5F21192NP  
R5F21191SP, R5F21191DSP, R5F21191DD  
16 Kbytes  
12 Kbytes  
8 Kbytes  
4 Kbytes  
1 Kbyte  
768 bytes  
512 bytes  
384 bytes  
0D000h  
006FFh  
0E000h  
005FFh  
0F000h  
0057Fh  
Figure 3.2  
Memory Map of R8C/19 Group  
Rev.1.30 Apr 14, 2006 Page 17 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
4. Special Function Registers (SFRs)  
4. Special Function Registers (SFRs)  
An SFR (special function register) is a control register for a peripheral function. Tables 4.1 to 4.4 list the  
special function registers.  
(1)  
Table 4.1  
SFR Information (1)  
Address  
0000h  
0001h  
0002h  
0003h  
0004h  
0005h  
0006h  
0007h  
0008h  
0009h  
000Ah  
000Bh  
000Ch  
000Dh  
000Eh  
000Fh  
0010h  
0011h  
0012h  
0013h  
0014h  
0015h  
0016h  
0017h  
0018h  
0019h  
001Ah  
001Bh  
001Ch  
001Dh  
001Eh  
Register  
Symbol  
After reset  
Processor Mode Register 0  
Processor Mode Register 1  
System Clock Control Register 0  
System Clock Control Register 1  
PM0  
PM1  
CM0  
CM1  
00h  
00h  
01101000b  
00100000b  
Address Match Interrupt Enable Register  
Protect Register  
AIER  
PRCR  
00h  
00h  
Oscillation Stop Detection Register  
Watchdog Timer Reset Register  
Watchdog Timer Start Register  
Watchdog Timer Control Register  
Address Match Interrupt Register 0  
OCD  
00000100b  
XXh  
WDTR  
WDTS  
WDC  
XXh  
00011111b  
00h  
RMAD0  
00h  
X0h  
Address Match Interrupt Register 1  
RMAD1  
00h  
00h  
X0h  
Count Source Protection Mode Register  
INT0 Input Filter Select Register  
CSPR  
INT0F  
00h  
00h  
001Fh  
0020h  
0021h  
0022h  
0023h  
High-Speed On-Chip Oscillator Control Register 0  
High-Speed On-Chip Oscillator Control Register 1  
High-Speed On-Chip Oscillator Control Register 2  
HRA0  
HRA1  
HRA2  
00h  
When shipping  
00h  
002Ah  
002Bh  
002Ch  
002Dh  
002Eh  
002Fh  
0030h  
0031h  
0032h  
(2)  
VCA1  
VCA2  
00001000b  
Voltage Detection Register 1  
(2)  
(3)  
Voltage Detection Register 2  
00h  
(4)  
01000000b  
0033h  
0034h  
0035h  
0036h  
(2)  
(3)  
VW1C  
VW2C  
Voltage Monitor 1 Circuit Control Register  
0000X000b  
(4)  
0100X001b  
00h  
(5)  
0037h  
0038h  
0039h  
003Ah  
003Bh  
003Ch  
003Dh  
003Eh  
003Fh  
Voltage Monitor 2 Circuit Control Register  
X: Undefined  
NOTES:  
1. The blank regions are reserved. Do not access locations in these regions.  
2. Software reset, watchdog timer reset, and voltage monitor 2 reset do not affect this register.  
3. After hardware reset.  
4. After power-on reset or voltage monitor 1 reset.  
5. Software reset, watchdog timer reset, and voltage monitor 2 reset do not affect b2 and b3.  
Rev.1.30 Apr 14, 2006 Page 18 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
4. Special Function Registers (SFRs)  
(1)  
Table 4.2  
SFR Information (2)  
Address  
0040h  
0041h  
0042h  
0043h  
0044h  
0045h  
0046h  
0047h  
0048h  
0049h  
004Ah  
004Bh  
004Ch  
004Dh  
004Eh  
004Fh  
0050h  
0051h  
0052h  
0053h  
0054h  
0055h  
0056h  
0057h  
0058h  
0059h  
Register  
Symbol  
After reset  
Key Input Interrupt Control Register  
KUPIC  
ADIC  
XXXXX000b  
XXXXX000b  
Comparator Conversion Interrupt Control Register  
Compare 1 Interrupt Control Register  
CMP1IC  
S0TIC  
S0RIC  
S1TIC  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
UART0 Transmit Interrupt Control Register  
UART0 Receive Interrupt Control Register  
UART1 Transmit Interrupt Control Register  
UART1 Receive Interrupt Control Register  
S1RIC  
Timer X Interrupt Control Register  
TXIC  
XXXXX000b  
Timer Z Interrupt Control Register  
INT1 Interrupt Control Register  
TZIC  
XXXXX000b  
XXXXX000b  
INT1IC  
005Ah  
INT3IC  
XXXXX000b  
INT3 Interrupt Control Register  
005Bh  
005Ch  
005Dh  
Timer C Interrupt Control Register  
Compare 0 Interrupt Control Register  
TCIC  
CMP0IC  
INT0IC  
XXXXX000b  
XXXXX000b  
XX00X000b  
INT0 Interrupt Control Register  
005Eh  
005Fh  
0060h  
0061h  
0062h  
0063h  
0064h  
0065h  
0066h  
0067h  
0068h  
0069h  
006Ah  
006Bh  
006Ch  
006Dh  
006Eh  
006Fh  
0070h  
0071h  
0072h  
0073h  
0074h  
0075h  
0076h  
0077h  
0078h  
0079h  
007Ah  
007Bh  
007Ch  
007Dh  
007Eh  
007Fh  
X: Undefined  
NOTE:  
1. The blank regions are reserved. Do not access locations in these regions.  
Rev.1.30 Apr 14, 2006 Page 19 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
4. Special Function Registers (SFRs)  
(1)  
Table 4.3  
SFR Information (3)  
Address  
0080h  
0081h  
0082h  
0083h  
0084h  
0085h  
0086h  
0087h  
0088h  
0089h  
008Ah  
008Bh  
008Ch  
008Dh  
008Eh  
008Fh  
0090h  
0091h  
0092h  
0093h  
0094h  
0095h  
0096h  
0097h  
0098h  
0099h  
009Ah  
009Bh  
009Ch  
009Dh  
009Eh  
009Fh  
00A0h  
00A1h  
00A2h  
00A3h  
00A4h  
00A5h  
00A6h  
00A7h  
00A8h  
00A9h  
00AAh  
00ABh  
00ACh  
00ADh  
00AEh  
00AFh  
00B0h  
00B1h  
00B2h  
00B3h  
00B4h  
00B5h  
00B6h  
00B7h  
00B8h  
00B9h  
00BAh  
00BBh  
00BCh  
00BDh  
00BEh  
00BFh  
Register  
Symbol  
After reset  
Timer Z Mode Register  
TZMR  
00h  
Timer Z Waveform Output Control Register  
Prescaler Z Register  
PUM  
00h  
FFh  
FFh  
FFh  
PREZ  
TZSC  
TZPR  
Timer Z Secondary Register  
Timer Z Primary Register  
Timer Z Output Control Register  
Timer X Mode Register  
Prescaler X Register  
Timer X Register  
Timer Count Source Setting Register  
TZOC  
TXMR  
PREX  
TX  
00h  
00h  
FFh  
FFh  
00h  
TCSS  
Timer C Register  
TC  
00h  
00h  
External Input Enable Register  
Key Input Enable Register  
INTEN  
KIEN  
00h  
00h  
Timer C Control Register 0  
Timer C Control Register 1  
Capture, Compare 0 Register  
TCC0  
TCC1  
TM0  
00h  
00h  
00h  
(2)  
00h  
FFh  
FFh  
00h  
XXh  
XXh  
XXh  
Compare 1 Register  
TM1  
UART0 Transmit/Receive Mode Register  
UART0 Bit Rate Register  
U0MR  
U0BRG  
U0TB  
UART0 Transmit Buffer Register  
UART0 Transmit/Receive Control Register 0  
UART0 Transmit/Receive Control Register 1  
UART0 Receive Buffer Register  
U0C0  
U0C1  
U0RB  
00001000b  
00000010b  
XXh  
XXh  
00h  
XXh  
XXh  
UART1 Transmit/Receive Mode Register  
UART1 Bit Rate Register  
U1MR  
U1BRG  
U1TB  
UART1 Transmit Buffer Register  
XXh  
UART1 Transmit/Receive Control Register 0  
UART1 Transmit/Receive Control Register 1  
UART1 Receive Buffer Register  
U1C0  
U1C1  
U1RB  
00001000b  
00000010b  
XXh  
XXh  
00h  
UART Transmit/Receive Control Register 2  
UCON  
X: Undefined  
NOTES:  
1. The blank regions are reserved. Do not access locations in these regions.  
2. When the output compare mode is selected (the TCC13 bit in the TCC1 register = 1), the value is set to FFFF16.  
Rev.1.30 Apr 14, 2006 Page 20 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
4. Special Function Registers (SFRs)  
(1)  
Table 4.4  
SFR Information (4)  
Address  
00C0h  
00C1h  
00C2h  
00C3h  
00C4h  
00C5h  
00C6h  
00C7h  
00C8h  
00C9h  
00CAh  
00CBh  
00CCh  
00CDh  
00CEh  
00CFh  
00D0h  
00D1h  
00D2h  
00D3h  
00D4h  
00D5h  
00D6h  
00D7h  
00D8h  
00D9h  
00DAh  
00DBh  
00DCh  
00DDh  
00DEh  
00DFh  
00E0h  
00E1h  
00E2h  
00E3h  
00E4h  
00E5h  
00E6h  
00E7h  
00E8h  
00E9h  
00EAh  
00EBh  
00ECh  
00EDh  
00EEh  
00EFh  
00F0h  
00F1h  
00F2h  
00F3h  
00F4h  
00F5h  
00F6h  
00F7h  
00F8h  
00F9h  
00FAh  
00FBh  
00FCh  
00FDh  
00FEh  
00FFh  
Register  
Symbol  
After reset  
A/D Register  
AD  
XXh  
A/D Control Register 2  
ADCON2  
00h  
A/D Control Register 0  
A/D Control Register 1  
ADCON0  
ADCON1  
00000XXXb  
00h  
Port P1 Register  
P1  
XXh  
00h  
XXh  
Port P1 Direction Register  
Port P3 Register  
PD1  
P3  
Port P3 Direction Register  
Port P4 Register  
PD3  
P4  
00h  
XXh  
Port P4 Direction Register  
PD4  
00h  
Pull-Up Control Register 0  
Pull-Up Control Register 1  
PUR0  
PUR1  
DRR  
00XX0000b  
XXXXXX0Xb  
00h  
Port P1 Drive Capacity Control Register  
Timer C Output Control Register  
TCOUT  
00h  
01B3h  
01B4h  
01B5h  
01B6h  
01B7h  
Flash Memory Control Register 4  
Flash Memory Control Register 1  
Flash Memory Control Register 0  
Optional Function Select Register  
FMR4  
FMR1  
FMR0  
OFS  
01000000b  
1000000Xb  
00000001b  
(Note 2)  
0FFFFh  
X: Undefined  
NOTES:  
1. The blank regions, 0100h to 01B2h and 01B8h to 02FFh are all reserved. Do not access locations in these regions.  
2. The OFS register cannot be changed by a program. Use a flash programmer to write to it.  
Rev.1.30 Apr 14, 2006 Page 21 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
5.Resets  
5. Resets  
The following resets are implemented: hardware reset, power-on reset, voltage monitor 1 reset, voltage  
monitor 2 reset, watchdog timer reset, and software reset. Table 5.1 lists the Reset Names and Sources.  
Table 5.1  
Reset Names and Sources  
Reset Name  
Source  
Hardware reset  
Input voltage of RESET pin is held “L”  
VCC rises.  
Power-on reset  
Voltage monitor 1 reset  
Voltage monitor 2 reset  
Watchdog timer reset  
Software reset  
VCC falls (monitor voltage: Vdet1).  
VCC falls (monitor voltage: Vdet2).  
Underflow of watchdog timer  
Write 1 to PM03 bit in PM0 register.  
Hardware reset  
RESET  
VCC  
SFRs  
Bits VCA26,  
VW1C0, and  
VW1C6  
Power-on reset  
Power-on reset  
circuit  
Voltage monitor 1 reset  
Voltage monitor 2 reset  
SFRs  
Bits VCA13, VCA27,  
VW1C1, VW1C2,  
VW1F0, VW1F1, VW1C7,  
VW2C2, and VW2C3  
Voltage  
detection  
circuit  
Watchdog timer  
reset  
Watchdog  
timer  
Pin, CPU, and  
SFR bits other than  
those listed above  
CPU  
Software reset  
VCA13: Bit in VCA1 register  
VCA26, VCA27: Bits in VCA2 register  
VW1C0 to VW1C2, VW1F0, VW1F1, VW1C6, VW1C7: Bits in VW1C register  
VW2C2, VW2C3: Bits in VW2C register  
Figure 5.1  
Block Diagram of Reset Circuit  
Rev.1.30 Apr 14, 2006 Page 22 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
5.Resets  
Table 5.2 shows the Pin Functions after Reset, Figure 5.2 shows CPU Register Status after Reset and  
Figure 5.3 shows Reset Sequence.  
Table 5.2  
Pin Functions after Reset  
Pin Name  
Pin Functions  
P1  
Input port  
Input port  
Input port  
P3_3 to P3_5, P3_7  
P4_2, P4_5 to P4_7  
b15  
b0  
0000h  
Data register (R0)  
0000h  
0000h  
Data register (R1)  
Data register (R2)  
Data register (R3)  
0000h  
0000h  
0000h  
0000h  
Address register (A0)  
Address register (A1)  
Frame base register (FB)  
b19  
b0  
00000h  
Content of addresses 0FFFEh to 0FFFCh  
Interrupt table register (INTB)  
Program counter (PC)  
b15  
b0  
User stack pointer (USP)  
Interrupt stack pointer (ISP)  
Static base register (SB)  
0000h  
0000h  
0000h  
b15  
b0  
b0  
Flag register (FLG)  
0000h  
b15  
b8  
b7  
IPL  
U I O B S Z D C  
Figure 5.2  
CPU Register Status after Reset  
fRING-S  
20 cycles or more needed(1)  
Flash memory activation  
Internal reset  
signal  
CPU clock × 28 cycles  
(CPU clock × 11 cycles)  
CPU clock  
0FFFEh  
0FFFCh  
Address  
(internal address  
signal)  
Content of reset vector  
0FFFDh  
NOTE:  
1. Hardware reset  
Figure 5.3  
Reset Sequence  
Rev.1.30 Apr 14, 2006 Page 23 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
5.Resets  
5.1  
Hardware Reset  
A reset is applied using the RESET pin. When an “L” signal is applied to the RESET pin while the supply  
voltage meets the recommended operating conditions, pins, CPU, and SFRs are reset (refer to Table  
5.2 Pin Functions after Reset). When the input level applied to the RESET pin changes from “L” to “H”,  
a program is executed beginning with the address indicated by the reset vector. After reset, the low-  
speed on-chip oscillator clock divided by 8 is automatically selected as the CPU clock.  
Refer to 4. Special Function Registers (SFRs) for the state of the SFRs after reset.  
The internal RAM is not reset. If the RESET pin is pulled “L” while writing to the internal RAM is in  
progress, the contents of internal RAM will be undefined.  
Figure 5.4 shows an Example of Hardware Reset Circuit and Operation and Figure 5.5 shows an  
Example of Hardware Reset Circuit (Usage Example of External Supply Voltage Detection Circuit) and  
Operation.  
5.1.1  
When Power Supply is Stable  
(1) Apply “L” to the RESET pin.  
(2) Wait for 500 µs (1/fRING-S × 20).  
(3) Apply “H” to the RESET pin.  
5.1.2  
Power On  
(1) Apply “L” to the RESET pin.  
(2) Let the supply voltage increase until it meets the recommended operating condition.  
(3) Wait for td(P-R) or more to allow the internal power supply to stabilize (refer to 18. Electrical  
Characteristics).  
(4) Wait for 500 µs (1/fRING-S × 20).  
(5) Apply “H” to the RESET pin.  
Rev.1.30 Apr 14, 2006 Page 24 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
5.Resets  
VCC  
2.7 V  
VCC  
0V  
RESET  
RESET  
0V  
0.2 VCC or below  
td(P-R) + 500 µs or more  
NOTE:  
1. Refer to 18. Electrical Characteristics.  
Figure 5.4  
Example of Hardware Reset Circuit and Operation  
5 V  
VCC  
Power supply  
voltage detection  
circuit  
2.7 V  
RESET  
VCC  
0 V  
5 V  
RESET  
0 V  
td(P-R) + 500 µs or above  
Example when  
VCC = 5 V  
NOTE:  
1. Refer to 18. Electrical Characteristics.  
Figure 5.5  
Example of Hardware Reset Circuit (Usage Example of External Supply Voltage  
Detection Circuit) and Operation  
Rev.1.30 Apr 14, 2006 Page 25 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
5.Resets  
5.2  
Power-On Reset Function  
When the RESET pin is connected to the VCC pin via a pull-up resistor of about 5 k, and the VCC pin  
voltage level rises, the power-on reset function is enabled and the MCU resets its pins, CPU, and SFR.  
When a capacitor is connected to the RESET pin, always keep the voltage to the RESET pin 0.8VCC or  
more.  
When the input voltage to the VCC pin reaches the Vdet1 level or above, the low-speed on-chip  
oscillator clock starts counting. When the low-speed on-chip oscillator clock count reaches 32, the  
internal reset signal is held “H” and the MCU enters the reset sequence (refer to Figure 5.3). The low-  
speed on-chip oscillator clock divided by 8 is automatically selected as the CPU after reset.  
Refer to 4. Special Function Registers (SFRs) for the status of the SFR after power-on reset.  
The voltage monitor 1 reset is enabled after power-on reset.  
Figure 5.6 shows an Example of Power-On Reset Circuit and Operation.  
0.1 V to 2.7 V  
VCC  
0 V  
VCC  
About  
5 kΩ  
0.8 VCC or above  
RESET  
0 V  
RESET  
within td(P-R)  
(3)  
(3)  
Vdet1  
Vdet1  
Vccmin  
Vpor2  
Vpor1  
Sampling time(1, 2)  
tw(Vpor1–Vdet1)  
tw(por1)  
tw(por2) tw(Vpor2–Vdet1)  
Internal reset signal  
(active “L”)  
1
1
× 32  
× 32  
fRING-S  
fRING-S  
NOTES:  
1. The supply voltage must be held within the MCU’s operating voltage range (Vccmin or above) over the sampling time.  
2. A sampling clock can be selected. Refer to 7. Voltage Detection Circuit for details.  
3. Vdet1 indicates voltage detection level for the voltage detection 1 circuit. Refer to 7. Voltage Detection Circuit for details.  
4. Refer to 18. Electrical Characteristics.  
Figure 5.6  
Example of Power-On Reset Circuit and Operation  
Rev.1.30 Apr 14, 2006 Page 26 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
5.Resets  
5.3  
Voltage Monitor 1 Reset  
A reset is applied using the on-chip voltage detection 1 circuit. The voltage detection 1 circuit monitors  
the input voltage to the VCC pin. The voltage to monitor is Vdet1.  
When the input voltage to the VCC pin reaches the Vdet1 level or below, the pins, CPU, and SFR are  
reset.  
When the input voltage to the VCC pin reaches the Vdet1 level or above, the low-speed on-chip  
oscillator clock starts counting. When the low-speed on-chip oscillator clock count reaches 32, the  
internal reset signal is held “H” and the MCU enters the reset sequence (refer to Figure 5.3). The low-  
speed on-chip oscillator clock divided by 8 is automatically selected as the CPU after reset.  
Refer to 4. Special Function Registers (SFRs) for the status of the SFR after voltage monitor 1 reset.  
The internal RAM is not reset. When the input voltage to the VCC pin reaches the Vdet1 level or below  
while writing to the internal RAM is in progress, the contents of internal RAM are undefined.  
Refer to 7. Voltage Detection Circuit for details of voltage monitor 1 reset.  
5.4  
Voltage Monitor 2 Reset  
A reset is applied using the on-chip voltage detection 2 circuit. The voltage detection 2 circuit monitors  
the input voltage to the VCC pin. The voltage to monitor is Vdet2.  
When the input voltage to the VCC pin reaches the Vdet2 level or below, pins, CPU, and SFR are reset  
and the program beginning with the address indicated by the reset vector is executed. After reset, the  
low-speed on-chip oscillator clock divided by 8 is automatically selected as the CPU clock.  
The voltage monitor 2 does not reset some SFRs. Refer to 4. Special Function Registers (SFRs) for  
details.  
The internal RAM is not reset. When the input voltage to the VCC pin reaches the Vdet2 level or below  
while writing to the internal RAM is in progress, the contents of internal RAM are undefined.  
Refer to 7. Voltage Detection Circuit for details of voltage monitor 2 reset.  
5.5  
Watchdog Timer Reset  
When the PM12 bit in the PM1 register is set to 1 (reset when watchdog timer underflows), the MCU  
resets its pins, CPU, and SFR if the watchdog timer underflows. Then the program beginning with the  
address indicated by the reset vector is executed. After reset, the low-speed on-chip oscillator clock  
divided by 8 is automatically selected as the CPU clock.  
The watchdog timer reset does not reset some SFRs. Refer to 4. Special Function Registers (SFRs)  
for details.  
The internal RAM is not reset. When the watchdog timer underflows, the contents of internal RAM are  
undefined.  
Refer to 13. Watchdog Timer for details of watchdog timer.  
5.6  
Software Reset  
When the PM03 bit in the PM0 register is set to 1 (MCU reset), the MCU resets its pins, CPU, and SFR.  
The program beginning with the address indicated by the reset vector is executed. After reset, the low-  
speed on-chip oscillator clock divided by 8 is automatically selected for the CPU clock.  
The software reset does not reset some SFRs. Refer to 4. Special Function Registers (SFRs) for  
details.  
The internal RAM is not reset.  
Rev.1.30 Apr 14, 2006 Page 27 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
6. Programmable I/O Ports  
There are 13 programmable Input/Output ports (I/O ports) P1, P3_3 to P3_5, P3_7, and P4_5. P4_2 can be  
used as an input-only port. Also, P4_6 and P4_7 can be used as input-only ports if the main clock oscillation  
circuit is not used. Table 6.1 lists an Overview of Programmable I/O Ports.  
Table 6.1  
Ports  
Overview of Programmable I/O Ports  
Internal Pull-Up  
Resistor  
Drive Capacity  
Selection  
I/O  
I/O  
Type of Output  
CMOS3 State  
I/O Setting  
Set per bit  
(1)  
(2)  
P1  
Set every 4 bits  
Set every bit of P1_0  
to P1_3  
(1)  
P3_3, P4_5  
I/O  
I/O  
I
CMOS3 State  
Set per bit  
Set per bit  
None  
None  
Set every bit  
(1)  
P3_4, P3_5, P3_7  
CMOS3 State  
None  
None  
Set every 3 bits  
(3)  
(No output function)  
None  
P4_2, P4_6, P4_7  
NOTES:  
1. In input mode, whether an internal pull-up resistor is connected or not can be selected by registers PUR0 and  
PUR1.  
2. These ports can be used as the LED drive port by setting the DRR register to 1 (high).  
3. When the main clock oscillation circuit is not used, P4_6 and P4_7 can be used as input-only ports.  
6.1  
Functions of Programmable I/O Ports  
The PDi_j (j=0 to 7) bit in the PDi (i=1, 3, and 4) register controls I/O of ports P1, P3_3 to P3_5, P3_7,  
and P4_5. The Pi register consists of a port latch to hold output data and a circuit to read pin states.  
Figures 6.1 to 6.3 show the Configurations of Programmable I/O Ports.  
Table 6.2 lists the Functions of Programmable I/O Ports. Also, Figure 6.5 shows Registers PD1, PD3,  
and PD4. Figure 6.6 shows Registers P1, P3, and P4, Figure 6.7 shows Registers PUR0 and PUR1, and  
Figure 6.8 shows the DRR Register.  
Table 6.2  
Functions of Programmable I/O Ports  
Value of PDi_j Bit in PDi Register  
(1)  
Operation when  
Accessing  
Pi Register  
When PDi_j Bit is Set to 0 (Input Mode)  
When PDi_j Bit is Set to 1 (Output Mode)  
Reading  
Read pin input level  
Write to the port latch  
Read the port latch  
Writing  
Write to the port latch. The value written to the  
port latch is output from the pin.  
NOTE:  
1. Nothing is assigned to bits PD3_0 to PD3_2, PD3_6, PD4_0 to PD4_4, PD4_6, and PD4_7.  
6.2  
Effect on Peripheral Functions  
Programmable I/O ports function as I/O ports for peripheral functions (Refer to Table 1.6 Pin Name  
Information by Pin Number of PLSP0020JB-A, PRDP0020BA-A packages). Table 6.3 lists the  
Settings of PDi_j Bit when Functioning as I/O Ports for Peripheral Functions. Refer to the description of  
each function for information on how to set peripheral functions.  
Table 6.3  
I/O of Peripheral Functions  
Input  
Output  
Settings of PDi_j Bit when Functioning as I/O Ports for Peripheral Functions  
PPDi_j Bit Settings for Shared Pin Functions  
Set this bit to 0 (input mode).  
This bit can be set to either 0 or 1 (output regardless of the port setting).  
6.3  
Pins Other than Programmable I/O Ports  
Figure 6.4 shows the Configuration of I/O Pins.  
Rev.1.30 Apr 14, 2006 Page 28 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
P1_0 to P1_3  
Pull-up selection  
Direction  
register  
1
Output from individual peripheral function  
Data bus  
Port latch  
(Note 1)  
Drive capacity selection  
Input to individual peripheral function  
Analog input  
P1_4  
Pull-up selection  
Direction  
register  
1
Output from individual peripheral function  
Data bus  
Port latch  
(Note 1)  
P1_5  
Pull-up selection  
Direction  
register  
Data bus  
Port latch  
(Note 1)  
Input to individual peripheral function  
NOTE:  
1.  
symbolizes a parasitic diode.  
Ensure the input voltage to each port will not exceed VCC.  
Figure 6.1  
Configuration of Programmable I/O Ports (1)  
Rev.1.30 Apr 14, 2006 Page 29 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
P1_6, P1_7  
6. Programmable I/O Ports  
Pull-up selection  
Direction  
register  
1
Output from individual peripheral function  
Data bus  
Port latch  
(Note 1)  
Input to individual peripheral function  
P3_3  
Pull-up selection  
Direction  
register  
1
Output from individual peripheral function  
Data bus  
Port latch  
(Note 1)  
Digital  
filter  
Input to individual peripheral function  
P3_4, P3_5, P3_7  
Pull-up selection  
Direction  
register  
1
Output from individual peripheral function  
Data bus  
Port latch  
(Note 1)  
Input to individual peripheral function  
symbolizes a parasitic diode.  
NOTE:  
1.  
Ensure the input voltage to each port will not exceed VCC.  
Figure 6.2  
Configuration of Programmable I/O Ports (2)  
Rev.1.30 Apr 14, 2006 Page 30 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
P4_2  
Vref of comparator  
Data bus  
(Note 4)  
P4_5  
Pull-up selection  
Direction  
register  
Data bus  
Port latch  
(Note 4)  
Digital  
filter  
Input to individual peripheral function  
P4_6/XIN  
Data bus  
(Note 4)  
Clocked inverter(1)  
(Note 2)  
P4_7/XOUT  
(Note 3)  
Data bus  
(Note 4)  
NOTES:  
1. When CM05 = 1, CM10 = 1, or CM13 = 0, the clocked inverter is cut off.  
2. When CM10 = 1 or CM13 = 0, the feedback resistor is disconnected.  
3. When CM05 = CM13 = 1 or CM10 = CM13 = 1, this pin is pulled up.  
4.  
symbolizes a parasitic diode.  
Ensure the input voltage to each port does not exceed VCC.  
Figure 6.3  
Configuration of Programmable I/O Ports (3)  
Rev.1.30 Apr 14, 2006 Page 31 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
MODE  
MODE signal input  
(Note 1)  
RESET  
RESET signal input  
(Note 1)  
NOTES :  
1.  
symbolizes a parasitic diode.  
Ensure the input voltage to each port does not exceed VCC.  
Figure 6.4  
Configuration of I/O Pins  
Rev.1.30 Apr 14, 2006 Page 32 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
Port Pi Direction Register (i = 1, 3, 4)(1, 2)  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
PD1  
Address  
00E3h  
After Reset  
00h  
00h  
00E7h  
PD3  
00EAh  
Bit Name  
00h  
PD4  
Bit Symbol  
Function  
RW  
RW  
RW  
RW  
RW  
RW  
RW  
RW  
RW  
PDi_0  
PDi_1  
PDi_2  
PDi_3  
PDi_4  
PDi_5  
PDi_6  
PDi_7  
Port Pi0 direction bit  
Port Pi1 direction bit  
0 : Input mode  
(functions as an input port)  
1 : Output mode  
Port Pi2 direction bit  
Port Pi3 direction bit  
Port Pi4 direction bit  
Port Pi5 direction bit  
Port Pi6 direction bit  
Port Pi7 direction bit  
(functions as an output port)  
NOTES:  
1. Bits PD3_0 to PD3_2, and PD3_6 in the PD3 register are unavailable on this MCU.  
If it is necessary to set bits PD3_0 to PD3_2, and PD3_6, set to 0 (input mode). When read, the content is 0.  
2. Bits PD4_0 to PD4_4, PD4_6, and PD4_7 in the PD4 register are unavailable on this MCU. If it is necessary to set bits  
PD4_0 to PD4_4, PD4_6, and PD4_7, set to 0 (input mode). When read, the content is 0.  
Figure 6.5  
Registers PD1, PD3, and PD4  
Port Pi Register (i = 1, 3, 4)(1, 2)  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
P1  
Address  
00E1h  
After Reset  
Undefined  
Undefined  
Undefined  
Function  
00E5h  
P3  
00E8h  
P4  
Bit Symbol  
Pi_0  
Bit Name  
RW  
RW  
RW  
RW  
RW  
RW  
RW  
RW  
RW  
Port Pi0 bit  
Port Pi1 bit  
Port Pi2 bit  
Port Pi3 bit  
Port Pi4 bit  
Port Pi5 bit  
Port Pi6 bit  
Port Pi7 bit  
The pin level of any I/O port w hich is set  
to input mode can be read by reading the  
corresponding bit in this register. The pin  
level of any I/O port w hich is set to output  
mode can be controlled by w riting to the  
corresponding bit in this register.  
0 : “L” level  
Pi_1  
Pi_2  
Pi_3  
Pi_4  
Pi_5  
Pi_6  
1 : “H” level(1)  
Pi_7  
NOTES:  
1. Bits P3_0 to P3_2, and P3_6 in the P3 register are unavailable on this MCU.  
If it is necessary to set bits P3_0 to P3_2, and P3_6, set to 0 (“L” level). When read, the content is 0.  
2. Bits P4_0 to P4_1, and P4_3 to P4_4 in the P4 register are unavailable on this MCU.  
If it is necessary to set bits P4_0 to PD4_1, and P4_3 to P4_4, set to 0 (“L” level). When read, the content is 0.  
Figure 6.6  
Registers P1, P3, and P4  
Rev.1.30 Apr 14, 2006 Page 33 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Pull-Up Control Register 0  
6. Programmable I/O Ports  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
Symbol  
Address  
00FCh  
After Reset  
00XX0000b  
Function  
PUR0  
Bit Symbol  
(b1-b0)  
PU02  
Bit Name  
RW  
RW  
RW  
RW  
Reserved bits  
Set to 0.  
P1_0 to P1_3 pull-up(1)  
P1_4 to P1_7 pull-up(1)  
0 : Not pulled up  
1 : Pulled up  
PU03  
(b5-b4)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
PU06  
P3_3 pull-up(1)  
P3_4 to P3_5, and P3_7 pll-up(1)  
0 : Not pulled up  
1 : Pulled up  
RW  
RW  
PU07  
NOTE:  
1. When this bit is set to 1 (pulled up), the pin w hose direction bit is set to 0 (input mode) is pulled up.  
Pull-Up Control Register 1  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
PUR1  
Bit Symbol  
Address  
00FDh  
After Reset  
XXXXXX0Xb  
Function  
Bit Name  
RW  
(b0)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
P4_5 pull-up(1)  
0 : Not pulled up  
1 : Pulled up  
PU11  
RW  
(b7-b2)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
NOTE:  
1. When the PU11 bit is set to 1 (pulled up), and the PD4_5 bit is set to 0 (input mode), the P4_5 pin is pulled up.  
Figure 6.7  
Registers PUR0 and PUR1  
Port P1 Drive Capacity Control Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0  
Symbol  
Address  
00FEh  
After Reset  
00h  
DRR  
Bit Symbol  
Bit Name  
P1_0 drive capacity  
P1_1 drive capacity  
Function  
RW  
RW  
RW  
RW  
RW  
RW  
DRR0  
DRR1  
DRR2  
DRR3  
(b7-b4)  
Set P1 N-channel output transistor drive  
capacity.  
0 : Low  
1 : High  
P1_2 drive capacity  
P1_3 drive capacity  
Reserved bits  
Set to 0.  
Figure 6.8  
DRR Register  
Rev.1.30 Apr 14, 2006 Page 34 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
6.4  
Port Settings  
Tables 6.4 to 6.17 list the port settings.  
Table 6.4  
Port P1_0/KI0/AN8/CMP0_0  
Register  
Bit  
PD1  
PUR0 DRR  
KIEN  
ADCON0  
TCOUT  
Function  
PD1_0 PU02 DRR0 KI0EN CH2, CH1, CH0, ADGSEL0 TCOUT0  
0
0
0
0
1
1
X
0
1
0
0
X
X
X
X
X
X
X
0
X
X
1
XXXX  
XXXX  
XXXX  
1001b  
XXXX  
XXXX  
XXXX  
0
0
0
0
0
0
1
Input port (not pulled up)  
Input port (pulled up)  
KI0 input  
Setting  
Value  
X
X
X
X
Comparator input (AN8)  
Output port  
1
Output port (high drive)  
CMP0_0 output  
X
X: 0 or 1  
Table 6.5  
Port P1_1/KI1/AN9/CMP0_1  
Register  
Bit  
PD1  
PUR0 DRR  
KIEN  
ADCON0  
TCOUT  
Function  
PD1_1 PU02 DRR1 KI1EN CH2, CH1, CH0, ADGSEL0 TCOUT1  
0
0
0
0
1
1
X
0
1
0
0
X
X
X
X
X
X
X
0
X
X
1
XXXX  
XXXX  
XXXX  
1011b  
XXXX  
XXXX  
XXXX  
0
0
0
0
0
0
1
Input port (not pulled up)  
Input port (pulled up)  
KI1 input  
Setting  
Value  
X
X
X
X
Comparator input (AN9)  
Output port  
1
Output port (high drive)  
CMP0_1 output  
X
X: 0 or 1  
Table 6.6  
Port P1_2/KI2/AN10/CMP0_2  
Register  
Bit  
PD1  
PUR0 DRR  
KIEN  
ADCON0  
TCOUT  
Function  
PD1_2 PU02 DRR2 KI2EN CH2, CH1, CH0, ADGSEL0 TCOUT2  
0
0
0
0
1
1
X
0
1
0
0
X
X
X
X
X
X
X
0
X
X
1
XXXX  
XXXX  
XXXX  
1101b  
XXXX  
XXXX  
XXXX  
0
0
0
0
0
0
1
Input port (not pulled up)  
Input port (pulled up)  
KI2 input  
Setting  
Value  
X
X
X
X
Comparator input (AN10)  
Output port  
1
Output port (high drive)  
CMP0_2 input  
X
X: 0 or 1  
Rev.1.30 Apr 14, 2006 Page 35 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
Table 6.7  
Port P1_3/KI3/AN11/TZOUT  
Register  
PD1  
PUR0  
PU02  
DRR  
KIEN  
ADCON0  
TZMR  
TZOC  
Function  
CH2, CH1, CH0,  
ADGSEL0  
TZMOD1,  
TZMOD0  
Bit  
PD1_3  
DRR3  
KI3EN  
TZOCNT  
0
0
0
0
1
1
X
X
X
X
0
1
X
X
X
X
0
X
X
1
XXXX  
XXXX  
XXXX  
1111b  
XXXX  
XXXX  
XXXX  
XXXX  
XXXX  
XXXX  
00b  
00b  
00b  
00b  
00b  
00b  
01b  
01b  
01b  
1Xb  
X
X
X
X
X
X
1
Input port (not pulled up)  
Input port (pulled up)  
KI3 input  
0
0
X
X
X
X
X
X
X
Comparator input (AN11)  
Output port  
X
X
X
X
X
X
Setting  
Value  
1
Output port (high drive)  
Output port  
0
1
1
Output port (high drive)  
TZOUT output  
X
X
0
X
TZOUT output  
X: 0 or 1  
Table 6.8  
Port P1_4/TXD0  
Register  
Bit  
PD1  
PUR0  
U0MR  
U0C0  
NCH  
X
Function  
PD1_4  
PU03  
SMD2 to SMD0  
000b  
0
0
1
0
1
X
Input port (not pulled up)  
Input port (pulled up)  
Output port  
000b  
X
000b  
X
001b  
100b  
X
X
X
X
0
1
TXD0 output, CMOS output  
Setting  
Value  
101b  
110b  
001b  
100b  
TXD0 output, N-channel open output  
101b  
110b  
X: 0 or 1  
Table 6.9  
Port P1_5/RXD0/CNTR01/INT11  
Register  
Bit  
PD1  
PUR0  
UCON  
TXMR  
Function  
PD1_5  
PU03  
CNTRSEL  
TXMOD1, TXMOD0  
XX  
0
0
0
0
1
1
0
1
X
X
X
1
Input port (not pulled up)  
Input port (pulled up)  
RXD0 input  
XX  
X
X
X
X
Other than 01b  
Other than 01b  
Other than 01b  
01b  
Setting  
Value  
CNTR01/INT11 input  
Output port  
X
1
CNTR01 output  
X: 0 or 1  
Rev.1.30 Apr 14, 2006 Page 36 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
Table 6.10  
Port P1_6/CLK0  
Register  
Bit  
PD1  
PUR0  
U0MR  
SMD2, SMD0, CKDIR  
Other than 010b  
Other than 010b  
XX1  
Function  
PD1_6  
PU03  
0
0
0
1
X
0
1
Input port (not pulled up)  
Input port (pulled up)  
CLK0 (external clock) input  
Output port  
Setting  
Value  
0
X
X
Other than 010b  
010b  
CLK0 (internal clock) output  
X: 0 or 1  
Table 6.11  
Port P1_7/CNTR00/INT10  
Register  
Bit  
PD1  
PUR0  
TXMR  
UCON  
Function  
Input port (not pulled up)  
PD1_7  
PU03  
TXMOD1, TXMOD0  
Other than 01b  
Other than 01b  
Other than 01b  
Other than 01b  
01b  
CNTRSEL  
0
0
0
1
X
0
1
X
X
0
Input port (pulled up)  
CNTR00/INT10 input  
Output port  
Setting  
Value  
0
X
X
X
0
CNTR00 output  
X: 0 or 1  
Table 6.12  
Port P3_3/TCIN/INT3/CMP1_0  
Register  
Bit  
PD3  
PUR0  
TCOUT  
Function  
PD3_3  
PU06  
TCOUT3  
0
0
1
X
0
0
1
0
0
0
1
0
Input port (not pulled up)  
Input port (pulled up)  
Output port  
Setting  
Value  
X
X
X
CMP1_0 output  
TCIN input/INT3  
X: 0 or 1  
Table 6.13  
Port P3_4/CMP1_1  
Register  
Bit  
PD3  
PUR0  
TCOUT  
Function  
PD3_4  
PU07  
TCOUT4  
0
0
1
X
0
1
0
0
0
1
Input port (not pulled up)  
Input port (pulled up)  
Output port  
Setting  
Value  
X
X
CMP1_1 output  
X: 0 or 1  
Rev.1.30 Apr 14, 2006 Page 37 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
Table 6.14  
Port P3_5/CMP1_2  
Register  
Bit  
PD3  
PUR0  
TCOUT  
Function  
PD3_5  
PU07  
TCOUT5  
0
0
1
X
0
1
0
0
0
1
Input port (not pulled up)  
Input port (pulled up)  
Output port  
Setting  
Value  
X
X
CMP1_2 output  
X: 0 or 1  
Table 6.15  
Port P3_7/CNTR0/TXD1  
Register  
Bit  
PD3  
PUR0  
U1MR  
SMD2 to SMD0  
000b  
TXMR  
UCON  
U1SEL1, U1SEL0  
Function  
PD3_7  
PU07  
TXOCNT  
0
0
1
0
1
0
0
0
0X  
0X  
0X  
Input port (not pulled up)  
Input port (pulled up)  
Output port  
000b  
X
000b  
001b  
Setting  
Value  
100b  
X
X
X
X
X
1
11b  
XX  
TXD1 output pin  
101b  
110b  
000b  
CNTR0 output pin  
X: 0 or 1  
Table 6.16  
Port XIN/P4_6, XOUT/P4_7  
Register  
CM1  
CM13  
1
CM1  
CM10  
1
CM0  
CM05  
1
Circuit specification  
Function  
Oscillation  
buffer  
Feedback  
resistance  
Bit  
OFF  
OFF  
OFF  
ON  
XIN-XOUT oscillation stop  
External input to XIN pin, “H” output  
from XOUT pin  
1
0
1
Setting  
Value  
1
1
0
0
0
1
0
OFF  
ON  
ON  
ON  
XIN-XOUT oscillation stop  
XIN-XOUT oscillation  
Input port  
X
X
OFF  
OFF  
X: 0 or 1  
Table 6.17  
Port P4_5/INT0/RXD1  
Register  
Bit  
PD4  
PUR1  
UCON  
INTEN  
Function  
PD4_5  
PU11  
U1SEL1, U1SEL0  
INT0EN  
0
0
0
0
1
0
00b  
00b  
00b  
01b  
10b  
00b  
0
0
1
Input port (not pulled up)  
Input port (pulled up)  
INT0 input  
Setting  
Value  
X
1
0
0
RXD1 input  
Output port  
X
X
X: 0 or 1  
Rev.1.30 Apr 14, 2006 Page 38 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
6. Programmable I/O Ports  
6.5  
Unassigned Pin Handling  
Table 6.18 lists Unassigned Pin Handling. Figure 6.9 shows Unassigned Pin Handling.  
Table 6.18  
Unassigned Pin Handling  
Pin Name  
Connection  
Ports P1, P3_3 to P3_5,  
P3_7, P4_5  
• After setting to input mode, connect each pin to VSS via a resistor (pull-  
(2)  
down) or connect each pin to VCC via a resistor (pull-up).  
(1, 2)  
• After setting to output mode, leave these pins open.  
(2)  
Ports P4_6, P4_7  
Port P4_2/VREF  
Connect to VCC via a pull-up resistor  
Connect to VCC  
(3)  
(2)  
RESET  
Connect to VCC via a pull-up resistor  
NOTES:  
1. If these ports are set to output mode and left open, they remain in input mode until they are switched  
to output mode by a program. The voltage level of these pins may be undefined and the power  
supply current may increase while the ports remain in input mode.  
The content of the direction registers may change due to noise or program runaway caused by  
noise. In order to enhance program reliability, the program should periodically repeat the setting of  
the direction registers.  
2. Connect these unassigned pins to the MCU using the shortest wire length (2 cm or less) possible.  
3. When the power-on reset function is in use.  
MCU  
Port P1, P3_3 to P3_5, (Input mode)  
:
:
P3_7, P4_5  
:
:
(Input mode)  
(Output mode)  
Open  
Port P4_6, P4_7  
RESET(1)  
Port P4_2/VREF  
NOTE:  
1. When the power-on reset function is in use.  
Figure 6.9  
Unassigned Pin Handling  
Rev.1.30 Apr 14, 2006 Page 39 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
7. Voltage Detection Circuit  
The voltage detection circuit monitors the input voltage to the VCC pin. This circuit can be used to monitor  
the VCC input voltage by a program. Alternately, voltage monitor 1 reset, voltage monitor 2 interrupt, and  
voltage monitor 2 reset can also be used.  
Table 7.1 lists the Specifications of Voltage Detection Circuit and Figures 7.1 to 7.3 show the Block  
Diagrams. Figures 7.4 to 7.6 show the Associated Registers.  
Table 7.1  
Specifications of Voltage Detection Circuit  
Item Voltage Detection 1  
Voltage to monitor  
Voltage Detection 2  
Vdet2  
VCC monitor  
Vdet1  
Detection target  
Passing through Vdet1  
by rising or falling  
None  
Passing through Vdet2 by  
rising or falling  
Monitor  
VCA13 bit in VCA1  
register  
Whether VCC is higher or  
lower than Vdet2  
Process when voltage is Reset  
detected  
Voltage monitor 1 reset Voltage monitor 2 reset  
Reset at Vdet1 > VCC; Reset at Vdet2 > VCC;  
restart CPU operation at restart CPU operation  
VCC > Vdet1  
None  
after a specified time  
Voltage monitor 2  
interrupt  
Interrupt  
Interrupt request at Vdet2  
> VCC and VCC > Vdet2  
when digital filter is  
enabled;  
interrupt request at Vdet2  
> VCC or VCC > Vdet2  
when digital filter is  
disabled  
Digital filter  
Switch  
Available  
Available  
enabled/disabled  
Sampling time  
(Divide-by-n of fRING-S) (Divide-by-n of fRING-S)  
x 4  
x 4  
n: 1, 2, 4, and 8  
n: 1, 2, 4, and 8  
Rev.1.30 Apr 14, 2006 Page 40 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
VCA27  
VCC  
Voltage detection 2  
signal  
+
-
Noise filter  
Internal  
reference  
voltage  
Vdet2  
VCA1 register  
b3  
VCA26  
VCA13 bit  
Voltage detection 1  
signal  
+
-
Vdet1  
Figure 7.1  
Block Diagram of Voltage Detection Circuit  
Voltage monitor 1 reset generation circuit  
VW1F1 to VW1F0  
= 00b  
= 01b  
Voltage detection 1 circuit  
= 10b  
= 11b  
fRING-S  
1/2  
1/2  
1/2  
VCA26  
VCC  
+
-
Digital  
filter  
Internal  
reference  
voltage  
Voltage  
detection 1  
signal  
Voltage detection 1  
Voltage  
monitor 1  
reset  
signal is held “H” when  
VCA26 bit is set to 0  
(disabled).  
VW1C1  
signal  
VW1C0  
VW1C6  
VW1C7  
VW1C0 to VW1C1, VW1F0 to VW1F1, VW1C6, VW1C7: Bits in VW1C register  
VCA26: Bit in VCA2 register  
Figure 7.2  
Block Diagram of Voltage Monitor 1 Reset Generation Circuit  
Rev.1.30 Apr 14, 2006 Page 41 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
Voltage monitor 2 interrupt/reset generation circuit  
VW2F1 to VW2F0  
= 00b  
= 01b  
Voltage detection 2 circuit  
VCA27  
= 10b  
= 11b  
VW2C2 bit is set to 0 (not detected) by  
writing 0 by a program.  
When VCA27 bit is set to 0 (voltage  
detection 2 circuit disabled), VW2C2  
bit is set to 0.  
fRING-S  
1/2  
1/2  
1/2  
Watchdog  
timer interrupt  
signal  
VCA13  
VCC  
+
-
Digital  
filter  
Noise filter  
VW2C2  
Voltage  
detection  
2 signal  
Internal  
reference  
voltage  
(Filter width: 200 ns)  
Voltage detection 2 signal  
is held “H” when VCA27 bit  
is set to 0 (disabled).  
Voltage monitor 2  
interrupt signal  
Non-maskable  
interrupt signal  
VW2C1  
Oscillation stop  
detection  
interrupt signal  
Watchdog timer block  
VW2C3  
VW2C7  
Voltage  
monitor 2  
reset signal  
Watchdog timer  
underflow signal  
VW2C0  
VW2C6  
This bit is set to 0 (not detected) by writing 0  
by a program.  
VW2C0 to VW2C3, VW2F0, VW2F1, VW2C6, VW2C7: Bits in VW2C register  
VCA13: Bit in VCA1 register  
VCA27: Bit in VCA2 register  
Figure 7.3  
Block Diagram of Voltage Monitor 2 Interrupt/Reset Generation Circuit  
Rev.1.30 Apr 14, 2006 Page 42 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
Voltage Detection Register 1  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0  
0 0 0  
Symbol  
Address  
0031h  
After Reset(2)  
00001000b  
Function  
VCA1  
Bit Symbol  
Bit Name  
RW  
RW  
Reserved bits  
Set to 0.  
(b2-b0)  
Voltage detection 2 signal monitor  
flag(1)  
0 : VCC < Vdet2  
1 : VCC Vdet2 or voltage detection 2  
VCA13  
RO  
circuit disabled  
(b7-b4)  
Reserved bits  
Set to 0.  
RW  
NOTES:  
1. The VCA13 bit is enabled w hen the VCA27 bit in the VCA2 register is set to 1 (voltage detection 2 circuit enabled).  
The VCA13 bit is set to 1 (VCC Vdet 2) w hen the VCA27 bit in the VCA2 register is set to 0 (voltage detection 2  
circuit disabled).  
2. The softw are reset, w atchdog timer reset, and voltage monitor 2 reset do not affect this register.  
Voltage Detection Register 2(1)  
After Reset(4)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0 0  
Hardw are reset : 00h  
Symbol  
VCA2  
Address  
0032h  
Pow er-on reset, voltage monitor 1 reset  
: 01000000b  
Bit Symbol  
(b5-b0)  
Bit Name  
Function  
Set to 0.  
RW  
RW  
Reserved bits  
Voltage detection 1 enable bit(2)  
Voltage detection 1 enable bit(3)  
0 : Voltage detection 1 circuit disabled  
1 : Voltage detection 1 circuit enabled  
VCA26  
VCA27  
RW  
RW  
0 : Voltage detection 2 circuit disabled  
1 : Voltage detection 2 circuit enabled  
NOTES:  
1. Set the PRC3 bit in the PRCR register to 1 (w rite enable) before w riting to this register.  
2. To use the voltage monitor 1 reset, set the VCA26 bit to 1.  
After the VCA26 bit is set to 1 from 0, the voltage detection circuit w aits for td(E-A) to elapse before starting  
operation.  
3. To use the voltage monitor 2 interrupt/reset or the VCA13 bit in the VCA1 register, set the VCA27 bit to 1.  
After the VCA27 bit is set to 1 from 0, the voltage detection circuit w aits for td(E-A) to elapse before starting  
operation.  
4. Softw are reset, w atchdog timer reset, and voltage monitor 2 reset do not affect this register.  
Figure 7.4  
Registers VCA1 and VCA2  
Rev.1.30 Apr 14, 2006 Page 43 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
Voltage Monitor 1 Circuit Control Register(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
VW1C  
Address  
0036h  
After reset(2)  
Hardw are reset : 0000X000b  
Pow er-on reset, voltage monitor 1 reset :  
0100X001b  
Bit Symbol  
VW1C0  
Bit Name  
Function  
RW  
RW  
Voltage monitor 1 reset enable  
bit(3)  
0 : Disable  
1 : Enable  
Voltage monitor 1 digital filter  
disable mode select bit  
0 : Digital filter enabled mode  
(digital filter circuit enabled)  
1 : Digital filter disabled mode  
(digital filter circuit disabled)  
VW1C1  
VW1C2  
RW  
Reserved bit  
Set to 0.  
RW  
RO  
(b3)  
Reserved bit  
When read, the content is undefined.  
b5 b4  
Sampling clock select bits  
0 0 : fRING-S divided by 1  
0 1 : fRING-S divided by 2  
1 0 : fRING-S divided by 4  
VW1F0  
VW1F1  
RW  
RW  
1 1 : fRING-S divided by 8  
Voltage monitor 1 circuit mode  
select bit  
When the VW1C0 bit is set to 1 (voltage  
monitor 1 reset enabled), set to 1.  
VW1C6  
VW1C7  
RW  
RW  
Voltage monitor 1 reset generation When the VW1C1 bit is set to 1 (digital filter  
condition select bit disabled mode), set to 1.  
NOTES:  
1. Set the PRC3 bit in the PRCR register to 1 (w rite enable) before w riting to this register.  
When rew riting the VW1C register, the VW1C2 bit may be set to 1. Set the VW1C2 bit to 0 after rew riting the VW1C  
register.  
2. The value remains unchanged after a softw are reset, w atchdog timer reset, or voltage monitor 2 reset.  
3. The VW1C0 bit is enabled w hen the VCA26 bit in the VCA2 register is set to 1 (voltage detection 1 circuit enabled).  
Set the VW1C0 bit to 0 (disable), w hen the VCA26 bit is set to 0 (voltage detection 1 circuit disabled).  
Figure 7.5  
VW1C Register  
Rev.1.30 Apr 14, 2006 Page 44 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
Voltage Monitor 2 Circuit Control Register(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
VW2C  
Address  
0037h  
After Reset(8)  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Voltage monitor 2 interrupt/reset  
enable bit(6, 10)  
0 : Disable  
1 : Enable  
VW2C0  
VW2C1  
Voltage monitor 2 digital filter  
disable mode select bit(2)  
0 : Digital filter enabled mode  
(digital filter circuit enabled)  
1 : Digital filter disabled mode  
(digital filter circuit disabled)  
RW  
Voltage change detection flag(3, 4, 8) 0 : Not detected  
1 : Vdet2 crossing detected  
0 : Not detected  
VW2C2  
VW2C3  
RW  
RW  
WDT detection flag(4, 8)  
1 : Detected  
b5 b4  
Sampling clock select bits  
0 0 : fRING-S divide by 1  
VW2F0  
RW  
0 1 : fRING-S divide by 2  
1 0 : fRING-S divide by 4  
1 1 : fRING-S divide by 8  
VW2F1  
VW2C6  
RW  
RW  
Voltage monitor 2 circuit mode  
select bit(5)  
0 : Voltage monitor 2 interrupt mode  
1 : Voltage monitor 2 reset mode  
Voltage monitor 2 interrupt/reset  
generation condition select bit(7, 9)  
0 : When VCC reaches Vdet2 or above.  
1 : When VCC reaches Vdet2 or below .  
VW2C7  
RW  
NOTES:  
1. Set the PRC3 bit in the PRCR register to 1 (rew rite enable) before w riting to this register.  
When rew riting the VW2C register, the VW2C2 bit may be set to 1. Set the VW2C2 bit to 0 after rew riting the VW2C  
register.  
2. When the voltage monitor 2 interrupt is used to exit stop mode and to return again, w rite 0 to the VW2C1bit before  
w riting 1.  
3. This bit is enabled w hen the VCA27 bit in the VCA2 register is set to 1 (voltage detection 2 circuit enabled).  
4. Set this bit to 0 by a program. When 0 is w ritten by a program, it is set to 0 (and remains unchanged even if 1 is  
w ritten to it).  
5. This bit is enabled w hen the VW2C0 bit is set to 1 (voltage monitor 2 interrupt/enabled reset).  
6. The VW2C0 bit is enabled w hen the VCA27 bit in the VCA2 register is set to 1 (voltage detection 2 circuit  
enabled). Set the VW2C0 bit to 0 (disable) w hen the VCA27 bit is set to 0 (voltage detection 2 circuit disabled).  
7. The VW2C7 bit is enabled w hen the VW2C1 bit is set to 1 (digital filter disabled mode).  
8. Bits VW2C2 and VW2C3 remain unchanged after a softw are reset, w atchdog timer reset, or voltage monitor 2  
9. When the VW2C6 bit is set to 1 (voltage monitor 2 reset mode), set the VW2C7 bit to 1 (w hen VCC reaches Vdet2 or  
below ). (Do not set to 0.)  
10. Set the VW2C0 bit to 0 (disabled) w hen the VCA13 bit in the VCA1 register is set to 1 (VCC Vdet2 or voltage  
detection 2 circuit disabled), the VW2C1 bit is set to 1 (digital filter disabled mode), and the VW2C7 bit is set to 0  
(w hen VCC reaches Vdet2 or above).  
Set the VW2C0 bit to 0 (disabled) w hen the VCA13 bit is set to 0 (VCC < Vdet2), the VW2C1 bit is set to 1 (digital  
filter disabled mode), and the VW2C7 bit is set to 1 (w hen VCC reaches Vdet2 or below ).  
Figure 7.6  
VW2C Register  
Rev.1.30 Apr 14, 2006 Page 45 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
7.1  
7.1.1  
VCC Input Voltage  
Monitoring Vdet1  
Vdet1 cannot be monitored.  
7.1.2  
Monitoring Vdet2  
Set the VCA27 bit in the VCA2 register to 1 (voltage detection 2 circuit enabled). After td(E-A) has  
elapsed (refer to 18. Electrical Characteristics), Vdet2 can be monitored by the VCA13 bit in the  
VCA1 register.  
7.1.3  
Digital Filter  
A digital filter can be used for monitoring the VCC input voltage. When the VW1C1 bit in the VW1C  
register is set to 0 (digital filter enabled) for the voltage monitor 1 circuit and the VW2C1 bit in the  
VW2C register is set to 0 (digital filter enabled) for the voltage monitor 2 circuit, the digital filter circuit  
is enabled.  
fRING-S divided by 1, 2, 4, or 8 may be selected as a sampling clock.  
The level of VCC input voltage is sampled every sampling clock cycle, and when the sampled input  
level matches two times, the internal reset signal changes to “L” or a voltage monitor 2 interrupt  
request is generated.  
Rev.1.30 Apr 14, 2006 Page 46 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
Voltage monitor 1 reset  
VCC  
Vdet1  
Sampling  
timing  
Internal reset signal  
Sampling clock of digital filter x 4 cycles  
Operation when the VW1C1 bit in the VW1C register is set to 0 (digital filter enabled).  
Voltage monitor 2 interrupt  
VCC  
Vdet2  
Sampling  
timing  
Sampling clock of digital filter x 4 cycles  
Sampling clock of digital filter x 4 cycles  
1
0
VW2C2 bit in  
VW2C register  
Set to 0 by a program  
1
0
Voltage monitor 2  
interrupt request  
Set to 0 by an interrupt  
request acknowledgment  
Operation when the VW2C1 bit in the VW2C register is set to 0 (digital filter enabled)  
and the VW2C6 bit is set to 0 (voltage monitor 2 interrupt mode).  
Figure 7.7  
Operating Example of Digital Filter  
Rev.1.30 Apr 14, 2006 Page 47 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
7.2  
Voltage Monitor 1 Reset  
Table 7.2 lists the Setting Procedure of Voltage Monitor 1 Reset Associated Bits and Figure 7.8 shows  
an Operating Example of Voltage Monitor 1 Reset. To use voltage monitor 1 reset to exit stop mode, set  
the VW1C1 bit in the VW1C register to 1 (digital filter disabled).  
Table 7.2  
Setting Procedure of Voltage Monitor 1 Reset Associated Bits  
Step  
When Using Digital Filter  
When Not Using Digital Filter  
1
2
Set the VCA26 bit in the VCA2 register to 1 (voltage detection 1 circuit enabled).  
Wait for td(E-A)  
Select the sampling clock of the digital filter Set the VW1C7 bit in the VW1C register to 1.  
by bits VW1F0 to VW1F1 in the VW1C  
(1)  
3
register.  
Set the VW1C1 bit in the VW1C register to 0 Set the VW1C1 bit in the VW1C register to 1  
(1)  
4
(digital filter enabled).  
(digital filter disabled).  
(1)  
Set the VW1C6 bit in the VW1C register to 1 (voltage monitor 1 reset mode).  
Set the VW1C2 bit in the VW1C register to 0.  
5
6
7
Set the CM14 bit in the CM1 register to 0  
(low-speed on-chip oscillator on).  
8
Wait for 4 cycles of the sampling clock of the (No wait time)  
digital filter.  
9
Set the VW1C0 bit in the VW1C register to 1 (voltage monitor 1 reset enabled).  
NOTE:  
1. When the VW1C0 bit is set to 0 (disabled), steps 3, 4, and 5 can be executed simultaneously (with  
1 instruction).  
VCC  
Vdet1  
(Typ. 2.85 V)  
1
× 32  
Sampling clock of  
digital filter × 4 cycles  
fRING-S  
When the VW1C1 bit is set  
to 0 (digital filter enabled).  
Internal reset signal  
1
× 32  
fRING-S  
When the VW1C1 bit is set  
to 1 (digital filter disabled)  
and the VW1C7 bit is set  
to 1.  
Internal reset signal  
VW1C1 and VW1C7: Bits in VW1C register  
The above applies under the following conditions.  
• VCA26 bit in VCA2 register = 1 (voltage detection 1 circuit enabled)  
• VW1C0 bit in VW1C register = 1 (voltage monitor 1 reset enabled)  
• VW1C6 bit in VW1C register = 1 (voltage monitor 1 reset mode)  
When the internal reset signal is held “L”, the pins, CPU and SFR are reset.  
The internal reset signal level changes from “L” to “H”, and a program is executed beginning with the address indicated by  
the reset vector.  
Refer to 4. Special Function Registers (SFRs), for the SFR status after reset.  
Figure 7.8  
Operating Example of Voltage Monitor 1 Reset  
Rev.1.30 Apr 14, 2006 Page 48 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
7.3  
Voltage Monitor 2 Interrupt and Voltage Monitor 2 Reset  
Table 7.3 lists the Setting Procedure of Voltage Monitor 2 Interrupt and Voltage Monitor 2 Reset  
Associated Bits. Figure 7.9 shows an Operating Example of Voltage Monitor 2 Interrupt and Voltage  
Monitor 2 Reset. To use voltage monitor 2 interrupt or voltage monitor 2 reset to exit stop mode, set the  
VW2C1 bit in the VW2C register to 1 (digital filter disabled).  
Table 7.3  
Setting Procedure of Voltage Monitor 2 Interrupt and Voltage Monitor 2 Reset  
Associated Bits  
When Using Digital Filter  
When Not Using Digital Filter  
Voltage Monitor 2 Voltage Monitor 2  
Interrupt Reset  
Step  
Voltage Monitor 2  
Interrupt  
Voltage Monitor 2  
Reset  
1
2
Set the VCA27 bit in the VCA2 register to 1 (voltage detection 2 circuit enabled).  
Wait for td(E-A)  
Select the sampling clock of the digital filter Select the timing of the interrupt and reset  
(2)  
by bits VW2F0 to VW2F1 in the VW2C  
register.  
request by the VW2C7 bit in the VW2C  
3
(1)  
register  
.
Set the VW2C1 bit in the VW2C register to 0 Set the VW2C1 bit in the VW2C register to 1  
(digital filter enabled). (digital filter disabled).  
(2)  
4
(2)  
Set the VW2C6 bit in Set the VW2C6 bit in Set the VW2C6 bit in Set the VW2C6 bit in  
the VW2C register to the VW2C register to the VW2C register to the VW2C register to  
0 (voltage monitor 2 1 (voltage monitor 2 0 (voltage monitor 2 1 (voltage monitor 2  
5
interrupt mode).  
reset mode).  
interrupt mode).  
reset mode).  
6
7
Set the VW2C2 bit in the VW2C register to 0 (passing of Vdet2 is not detected).  
Set the CM14 bit in the CM1 register to 0  
(low-speed on-chip oscillator on).  
8
Wait for 4 cycles of the sampling clock of the (No wait time)  
digital filter.  
9
Set the VW2C0 bit in the VW2C register to 1 (voltage monitor 2 interrupt/reset enabled).  
NOTES:  
1. Set the VW2C7 bit to 1 (when VCC reaches Vdet2 or below) for the voltage monitor 2 reset.  
2. When the VW2C0 bit is set to 0 (disabled), steps 3, 4 and 5 can be executed simultaneously (with 1  
instruction).  
Rev.1.30 Apr 14, 2006 Page 49 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
7. Voltage Detection Circuit  
VCC  
Vdet2  
(Typ. 3.30 V)  
2.7 V(1)  
1
0
VCA13 bit  
VW2C2 bit  
Sampling clock of digital filter  
Sampling clock of digital filter  
× 4 cycles  
× 4 cycles  
1
0
Set to 0 by a program  
When the VW2C1 bit is set  
to 0 (digital filter enabled).  
Set to 0 by interrupt request  
acknowledgement  
Voltage monitor 2  
interrupt request  
(VW2C6 = 0)  
Internal reset signal  
(VW2C6 = 1)  
Set to 0 by a program  
1
0
VW2C2 bit  
When the VW2C1 bit is  
set to 1 (digital filter  
disabled) and the  
VW2C7 bit is set to 0  
(Vdet2 or above).  
Set to 0 by interrupt  
request  
acknowledgement  
Voltage monitor 2  
interrupt request  
(VW2C6 = 0)  
Set to 0 by a program  
1
0
VW2C2 bit  
Set to 0 by interrupt  
When the VW2C1 bit is  
set to 1 (digital filter  
disabled) and the  
VW2C7 bit is set to 1  
(Vdet2 or below).  
request acknowledgement  
Voltage monitor 2  
interrupt request  
(VW2C6 = 0)  
Internal reset signal  
(VW2C6 = 1)  
VCA13: Bit in VCA1 register  
VW2C1, VW2C2, VW2C6, VW2C7: Bit in VW2C register  
The above applies under the following conditions.  
• VCA27 bit in VCA2 register = 1 (voltage detection 2 circuit enabled)  
• VW2C0 bit in VW2C register = 1 (voltage monitor 2 interrupt and voltage monitor 2 reset enabled)  
NOTE:  
1. If voltage monitor 1 reset is not used, set the power supply to VCC 2.7.  
Figure 7.9  
Operating Example of Voltage Monitor 2 Interrupt and Voltage Monitor 2 Reset  
Rev.1.30 Apr 14, 2006 Page 50 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
8. Processor Mode  
8. Processor Mode  
8.1  
Processor Modes  
Single-chip mode can be selected as the processor mode. Table 8.1 lists Features of Processor Mode.  
Figure 8.1 shows the PM0 Register and Figure 8.2 shows the PM1 Register.  
Table 8.1  
Processor Mode  
Single-chip mode  
Features of Processor Mode  
Accessible Areas  
Pins Assignable as I/O Port Pins  
SFR, internal RAM, internal ROM All pins are I/O ports or peripheral function  
I/O pins.  
Processor Mode Register 0(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0  
Symbol  
PM0  
Address  
0004h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b2-b0)  
Reserved bits  
Set to 0.  
Softw are reset bit  
The MCU is reset w hen this bit is set to 1.  
When read, the content is 0.  
PM03  
RW  
(b7-b4)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
NOTE:  
1. Set the PRC1 bit in the PRCR register to 1 (w rite enable) before rew riting the PM0 register.  
Figure 8.1  
PM0 Register  
Processor Mode Register 1(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0
0
Symbol  
PM1  
Address  
0005h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
(b0)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
(b1)  
Reserved bit  
Set to 0.  
RW  
RW  
WDT interrupt/reset sw itch bit  
0 : Watchdog timer interrupt  
1 : Watchdog timer reset(2)  
PM12  
(b6-b3)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
(b7)  
Reserved bit  
Set to 0.  
RW  
NOTES:  
1. Set the PRC1 bit in the PRCR register to 1 (w rite enable) before rew riting the PM1 register.  
2. The PM12 bit is set to 1 by a program (and remains unchanged even if 0 is w ritten to it).  
When the CSPRO bit in the CSPR register is set to 1 (count source protect mode enabled), the PM12 bit is  
automatically set to 1.  
Figure 8.2  
PM1 Register  
Rev.1.30 Apr 14, 2006 Page 51 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
9.Bus  
9. Bus  
The bus cycles differ when accessing ROM/RAM, and when accessing SFR. Table 9.1 lists Bus Cycles by  
Access Space of the R8C/18 Group and Table 9.2 lists Bus Cycles by Access Space of the R8C/19 Group.  
ROM/RAM and SFR are connected to the CPU by an 8-bit bus. When accessing in word (16-bit) units,  
these areas are accessed twice in 8-bit units. Table 9.3 lists Access Units and Bus Operations.  
Table 9.1  
Bus Cycles by Access Space of the R8C/18 Group  
Access Area  
Bus Cycle  
2 cycles of CPU clock  
1 cycle of CPU clock  
SFR  
ROM/RAM  
Table 9.2  
Bus Cycles by Access Space of the R8C/19 Group  
Access Area  
Bus Cycle  
2 cycles of CPU clock  
1 cycle of CPU clock  
SFR/data flash  
Program ROM/RAM  
Table 9.3  
Access Units and Bus Operations  
SFR, data flash  
Area  
ROM (program ROM), RAM  
CPU clock  
Even address  
Byte access  
CPU clock  
Even  
Data  
Even  
Odd  
Address  
Data  
Address  
Data  
Data  
Odd address  
Byte access  
CPU clock  
CPU clock  
Address  
Data  
Odd  
Data  
Address  
Data  
Data  
Even address  
Word access  
CPU clock  
CPU clock  
Address  
Data  
Address  
Data  
Even  
Data  
Even + 1  
Data  
Even  
Data  
Even + 1  
Data  
Odd address  
Word access  
CPU clock  
CPU clock  
Address  
Data  
Odd  
Odd + 1  
Data  
Odd  
Odd + 1  
Data  
Address  
Data  
Data  
Data  
Rev.1.30 Apr 14, 2006 Page 52 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10. Clock Generation Circuit  
The clock generation circuit has:  
• Main clock oscillation circuit  
• On-chip oscillator (oscillation stop detection function)  
Table 10.1 lists Specifications of Clock Generation Circuit. Figure 10.1 shows a Clock Generation Circuit.  
Figures 9.2 to 10.5 show clock associated registers.  
Table 10.1  
Specifications of Clock Generation Circuit  
On-Chip Oscillator  
Main Clock  
Oscillation Circuit  
Item  
High-Speed On-Chip Oscillator Low-Speed On-Chip Oscillator  
Applications  
• CPU clock source • CPU clock source  
• CPU clock source  
• Peripheral  
function clock  
source  
• Peripheral function clock  
source  
• CPU and peripheral function  
clock sources when main  
clock stops oscillating  
• Peripheral function clock  
source  
• CPU and peripheral function  
clock sources when main  
clock stops oscillating  
Clock frequency 0 to 20 MHz  
Approx. 8 MHz  
Approx. 125 kHz  
Connectable  
oscillator  
• Ceramic  
resonator  
• Crystal oscillator  
(1)  
Oscillator  
connect pins  
(Note 1)  
Usable  
Stop  
(Note 1)  
Usable  
Oscillate  
XIN, XOUT  
Oscillation stop, Usable  
restart function  
Oscillator status Stop  
after reset  
Others  
Externally  
generated clock  
can be input  
NOTE:  
1. These pins can be used as P4_6 or P4_7 when using the on-chip oscillator clock as the CPU clock  
while the main clock oscillation circuit is not used.  
Rev.1.30 Apr 14, 2006 Page 53 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
HRA2 register  
HRA1 register  
Frequency adjustable  
On-chip oscillator clock  
High-speed  
on-chip  
fRING-fast  
HRA00  
Watchdog  
timer  
oscillator  
UART1  
fRING128  
fRING  
HRA01 = 1  
HRA01 = 0  
INT0  
Timer C  
Timer X  
Timer Z  
UART0  
Comparator  
1/128  
Low-speed  
on-chip  
Power-on  
CM14  
reset circuit  
oscillator  
fRING-S  
Voltage  
detection  
circuit  
Q
Q
CM10 = 1 (stop mode)  
S
R
f1  
b
RESET  
f2  
f4  
f8  
c
Power-on reset  
Software reset  
Interrupt request  
Oscillation  
stop  
detection  
d
S
R
e
Main clock  
WAIT  
instruction  
OCD2 = 1  
g
f32  
CM13  
a
h
CPU clock  
Divider  
XIN  
OCD2 = 0  
XOUT  
CM13  
System clock  
CM05  
CM02  
g
e
d
c
b
1/2  
1/2  
a
1/2  
1/2  
1/2  
CM06 = 0  
CM17 to CM16 = 11b  
CM06 = 1  
h
CM06 = 0  
CM17 to CM16 = 10b  
CM02, CM05, CM06: Bits in CM0 register  
CM10, CM13, CM14, CM16, CM17: Bits in CM1 register  
OCD0, OCD1, OCD2: Bits in OCD register  
HRA00, HRA01: Bits in HRA0 register  
CM06 = 0  
CM17 to CM16 = 01b  
CM06 = 0  
CM17 to CM16 = 00b  
Detail of divider  
Oscillation Stop Detection Circuit  
Forcible discharge when OCD0(1) = 0  
Pulse generation  
circuit for clock  
edge detection and  
charge, discharge  
control circuit  
Charge,  
Main clock  
discharge  
circuit  
Oscillation stop detection  
interrupt generation  
circuit detection  
Oscillation stop detection,  
Watchdog timer,  
Voltage monitor 2 interrupt  
OCD1(1)  
Watchdog  
timer interrupt  
Voltage monitor  
2 interrupt  
OCD2 bit switch signal  
CM14 bit switch signal  
NOTE:  
1. Set the same value in bits OCD1 and OCD0.  
Figure 10.1  
Clock Generation Circuit  
Rev.1.30 Apr 14, 2006 Page 54 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
System Clock Control Register 0(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0
0 1  
0 0  
Symbol  
CM0  
Address  
0006h  
After Reset  
68h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b1-b0)  
Reserved bits  
Set to 0.  
WAIT peripheral function clock stop 0 : Peripheral function clock does not stop  
bit  
in w ait mode.  
CM02  
RW  
1 : Peripheral function clock stops in  
w ait mode.  
(b3)  
Reserved bit  
Set to 1.  
RW  
RW  
RW  
RW  
RW  
(b4)  
Reserved bit  
Set to 0.  
Main clock (XIN-XOUT) stop bit(2, 4)  
Systemclock division select bit 0(5)  
Reserved bit  
0 : Main clock oscillates.  
1 : Main clock stops.(3)  
CM05  
CM06  
0 : CM16, CM17 enabled  
1 : Divide-by-8 mode  
(b7)  
Set to 0.  
NOTES:  
1. Set the PRC0 bit in the PRCR register to 1 (w rite enable) before rew riting the CM0 register.  
2. The CM05 bit stops the main clock w hen the on-chip oscillator mode is selected.  
Do not use this bit to detect w hether the main clock is stopped. To stop the main clock, set the bits in the follow ing  
order:  
(a) Set bits OCD1 and OCD0 in the OCD register to 00b (oscillation stop detection function disabled).  
(b) Set the OCD2 bit to 1 (selects on-chip oscillator clock).  
3. To input an external clock, set the CM05 bit to 1 (main clock stops) and the CM13 bit in the CM1 register to 1  
(XIN-XOUT pin).  
4. When the CM05 bit is set to 1 (main clock stops), P4_6 and P4_7 can be used as input ports.  
5. When entering stop mode from high or medium speed mode, the CM06 bit is set to 1 (divide-by-8 mode).  
Figure 10.2  
CM0 Register  
Rev.1.30 Apr 14, 2006 Page 55 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
System Clock Control Register 1(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
Symbol  
Address  
0007h  
After Reset  
20h  
CM1  
Bit Symbol  
Bit Name  
All clock stop control bit(4, 7, 8)  
Function  
RW  
RW  
0 : Clock operates.  
1 : Stops all clocks (stop mode).  
CM10  
(b1)  
Reserved bit  
Set to 0.  
RW  
RW  
RW  
RW  
RW  
(b2)  
Reserved bit  
Set to 0.  
Port XIN-XOUT sw itch bit(7)  
0 : Input port P4_6, P4_7  
1 : XIN-XOUT Pin  
CM13  
CM14  
CM15  
Low -speed on-chip oscillation stop 0 : Low -speed on-chip oscillator on  
bit(5, 6, 8)  
1 : Low -speed on-chip oscillator off  
XIN-XOUT drive capacity select bit(2) 0 : Low  
1 : High  
Systemclock division select bits 1(3)  
b7 b6  
0 0 : No division mode  
CM16  
CM17  
RW  
RW  
0 1 : Divide-by-2 mode  
1 0 : Divide-by-4 mode  
1 1 : Divide-by-16 mode  
NOTES:  
1. Set the PRC0 bit in the PRCR register to 1 (w rite enable) before rew riting the CM1 register.  
2. When entering stop mode from high or medium speed mode, this bit is set to 1 (drive capacity high).  
3. When the CM06 bit is set to 0 (bits CM16, CM17 enabled), bits CM16 to CM17 are enabled.  
4. If the CM10 bit is set to 1 (stop mode), the on-chip feedback resistor is disabled.  
5. When the OCD2 bit is set to 0 (main clock selected), the CM14 bit is set to 1 (low -speed on-chip oscillator stopped).  
When the OCD2 bit is set to 1 (on-chip oscillator clock selected), the CM14 bit is set to 0 (low -speed on-chip  
oscillator on). And remains unchanged even if 1 is w ritten to it.  
6. When using the voltage detection interrupt, set the CM14 bit to 0 (low -speed on-chip oscillator on).  
7. When the CM10 bit is set to 1 (stop mode), or the CM05 bit in the CM0 register to 1 (main clock stops) and the CM13  
bit is set to 1 (XIN-XOUT pin), the XOUT (P4_7) pin becomes “H.  
When the CM13 bit is set to 0 (input ports, P4_6, P4_7), P4_7 (XOUT) enters input mode.  
8. In count source protect mode (refer to  
), the value remains  
13.2 Count Source Protection Mode Enabled  
unchanged even if bits CM10 and CM14 are set.  
Figure 10.3  
CM1 Register  
Rev.1.30 Apr 14, 2006 Page 56 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
Oscillation Stop Detection Register(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0  
Symbol  
Address  
000Ch  
After Reset  
04h  
OCD  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Oscillation stop detection enable  
bits  
b1 b0  
0 0 : Oscillation stop detection function  
disabled  
OCD0  
OCD1  
0 1 : Do not set.  
1 0 : Do not set.  
RW  
RW  
1 1 : Oscillation stop detection function  
enabled(4, 7)  
Systemclock select bit(6)  
0 : Selects main clock.(7)  
1 : Selects on-chip oscillator clock.(2)  
OCD2  
OCD3  
Clock monitor bit(3, 5)  
Reserved bits  
0 : Main clock oscillates.  
1 : Main clock stops.  
RO  
(b7-b4)  
Set to 0.  
RW  
NOTES:  
1. Set the PRC0 bit in the PRCR register to 1 (w rite enable) before rew riting to this register.  
2. The OCD2 bit is automatically set to 1 (on-chip oscillator clock selected) if a main clock oscillation stop is detected  
w hile bits OCD1 to OCD0 are set to 11b (oscillation stop detection function enabled). If the OCD3 bit is set to 1 (main  
clock stops), the OCD2 bit remains unchanged even w hen set to 0 (main clock selected).  
3. The OCD3 bit is enabled w hen bits OCD1 to OCD0 are set to 11b (oscillation stop detection function enabled).  
4. Set bits OCD1 to OCD0 to 00b (oscillation stop detection function disabled) before entering stop or on-chip oscillator  
mode (main clock stops).  
5. The OCD3 bit remains 0 (main clock oscillates) if bits OCD1 to OCD0 are set to 00b.  
6. The CM14 bit is set to 0 (low -speed on-chip oscillator on) if the OCD2 bit is set to 1 (on-chip oscillator clock  
selected).  
7. Ref er to  
Figure 10.9 Procedure for Switching Clock Source from Low-Speed On-Chip Oscillator to Main  
for the sw itching procedure w hen the main clock re-oscillates after detecting an oscillation stop.  
Clock  
Figure 10.4  
OCD Register  
Rev.1.30 Apr 14, 2006 Page 57 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
High-Speed On-Chip Oscillator Control Register 0(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0 0  
Symbol  
HRA0  
Address  
0020h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
High-speed on-chip oscillator enable 0 : High-speed on-chip oscillator off  
bit 1 : High-speed on-chip oscillator on  
High-speed on-chip oscillator select 0 : Selects low -speed on-chip oscillator.(3)  
HRA00  
HRA01  
RW  
RW  
bit(2)  
1 : Selects high-speed on-chip oscillator.  
(b7-b2)  
Reserved bits  
Set to 0.  
NOTES:  
1. Set the PRC0 bit in the PRCR register to 1 (w rite enable) before rew riting the HRA0 register.  
2. Change the HRA01 bit under the follow ing conditions.  
• HRA00 = 1 (high-speed on-chip oscillation)  
• The CM14 bit in the CM1 register = 0 (low -speed on-chip oscillator on)  
3. When setting the HRA01 bit to 0 (low -speed on-chip oscillator selected), do not set the HRA00 bit to 0 (high-speed  
on-chip oscillator off) at the same time.  
Set the HRA00 bit to 0 after setting the HRA01 bit to 0.  
Figure 10.5  
HRA0 Register  
Rev.1.30 Apr 14, 2006 Page 58 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
High-Speed On-Chip Oscillator Control Register 1(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
HRA1  
Address  
0021h  
After Reset  
When Shipping  
Function  
RW  
RW  
The frequency of the high-speed on-chip oscillator is adjusted w ith bits 0 to 7.  
High-speed on-chip oscillator frequency = 8 MHz  
(HRA1 register = value w hen shipping ; fRING-fast mode 0)  
Setting the HRA1 register to a low er value (minimum value: 00h), results in a higher  
frequency.  
Setting the HRA1 register to a higher value (maximum value: FFh), results in a low er  
frequency.  
NOTE:  
1. Set the PRC0 bit in the PRCR register to 1 (w rite enable) before rew riting the HRA1 register.  
High-Speed On-Chip Oscillator Control Register 2(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0  
Symbol  
HRA2  
Address  
0022h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
High-speed on-chip oscillator mode  
select bits  
b1 b0  
0 0 : fRING-fast mode 0(2)  
0 1 : fRING-fast mode 1(3)  
1 0 : fRING-fast mode 2(4)  
1 1 : Do not set.  
HRA20  
HRA21  
RW  
(b4-b2)  
Reserved bits  
Set to 0.  
RW  
(b7-b5)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
NOTES:  
1. Set the PRC0 bit in the PRCR register to 1 (w rite enable) before rew riting the HRA2 register.  
2. High-speed on-chip oscillator frequency = 8 MHz (HRA1 register = value w hen shipping)  
3. If fRING-fast mode 0 is sw itched to fRING-fast mode 1, the frequency is multiplied by 1.5.  
4. If fRING-fast mode 0 is sw itched to fRING-fast mode 2, the frequency is multiplied by 0.5.  
Figure 10.6  
Registers HRA1 and HRA2  
Rev.1.30 Apr 14, 2006 Page 59 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
The clocks generated by the clock generation circuits are described below.  
10.1 Main Clock  
This clock is supplied by a main clock oscillation circuit. This clock is used as the clock source for the  
CPU and peripheral function clocks. The main clock oscillation circuit is configured by connecting  
resonator between the XIN and XOUT pins. The main clock oscillation circuit includes an on-chip  
feedback resistor, which is disconnected from the oscillation circuit in stop mode in order to reduce the  
amount of power consumed by the chip. The main clock oscillation circuit may also be configured by  
feeding an externally generated clock to the XIN pin. Figure 10.7 shows Examples of Main Clock  
Connection Circuit. During reset and after reset, the main clock stops.  
The main clock starts oscillating when the CM05 bit in the CM0 register is set to 0 (main clock on) after  
setting the CM13 bit in the CM1 register to 1 (XIN- XOUT pin).  
To use the main clock for the CPU clock source, set the OCD2 bit in the OCD register to 0 (selects main  
clock) after the main clock is oscillating stably.  
The power consumption can be reduced by setting the CM05 bit in the CM0 register to 1 (main clock  
stops) if the OCD2 bit is set to 1 (select on-chip oscillator clock).  
When an external clock is input to the XIN pin, the main clock does not stop if the CM05 bit is set to 1. If  
necessary, use an external circuit to stop the clock.  
In stop mode, all clocks including the main clock stop. Refer to 10.4 Power Control for details.  
MCU  
MCU  
(on-chip feedback resistor)  
(on-chip feedback resistor)  
XIN  
XIN  
XOUT  
XOUT  
Open  
Rd(1)  
Externally derived clock  
CIN  
COUT  
VCC  
VSS  
External clock input circuit  
Ceramic resonator external circuit  
NOTE:  
1. Insert a damping resistor if required. The resistance will vary depending on the oscillator and the  
oscillation drive capacity setting. Use the value recommended by the manufacturer of the oscillator.  
When the oscillation drive capacity is set to low, check that oscillation is stable. Also, if the oscillator  
manufacturer's data sheet specifies that a feedback resistor be added to the chip externally, insert a  
feedback resistor between XIN and XOUT following the instructions.  
Figure 10.7  
Examples of Main Clock Connection Circuit  
Rev.1.30 Apr 14, 2006 Page 60 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.2 On-Chip Oscillator Clocks  
These clocks are supplied by the on-chip oscillators (high-speed on-chip oscillator and a low-speed on-  
chip oscillator). The on-chip oscillator clock is selected by the HRA01 bit in the HRA0 register.  
10.2.1 Low-Speed On-Chip Oscillator Clock  
The clock generated by the low-speed on-chip oscillator is used as the clock source for the CPU  
clock, peripheral function clock, fRING, fRING128, and fRING-S.  
After reset, the on-chip oscillator clock generated by the low-speed on-chip oscillator divided by 8 is  
selected as the CPU clock.  
If the main clock stops oscillating when bits OCD1 to OCD0 in the OCD register are set to 11b  
(oscillation stop detection function enabled), the low-speed on-chip oscillator automatically starts  
operating, supplying the necessary clock for the MCU.  
The frequency of the low-speed on-chip oscillator varies depending on the supply voltage and the  
operating ambient temperature. Application products must be designed with sufficient margin to  
allow for the frequency changes.  
10.2.2 High-Speed On-Chip Oscillator Clock  
The clock generated by the high-speed on-chip oscillator is used as the clock source for the CPU  
clock, peripheral function clock, fRING, fRING128, and fRING1-fast.  
After reset, the on-chip oscillator clock generated by the high-speed on-chip oscillator stops.  
Oscillation is started by setting the HRA00 bit in the HRA0 register to 1 (high-speed on-chip oscillator  
on). The frequency can be adjusted by registers HRA1 and HRA2.  
Since there are differences in delay among the bits in the HRA1 register, make adjustments by  
changing the settings of individual bits.  
The high-speed on-chip oscillator frequency may be changed in flash memory CPU rewrite mode  
during auto-program operation or auto-erase operation. Refer to 10.6.4 High-Speed On-Chip  
Oscillator Clock for details.  
Rev.1.30 Apr 14, 2006 Page 61 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.3 CPU Clock and Peripheral Function Clock  
There are a CPU clock to operate the CPU and a peripheral function clock to operate the peripheral  
functions. Refer to Figure 10.1 Clock Generation Circuit.  
10.3.1 System Clock  
The system clock is the clock source for the CPU and peripheral function clocks. Either the main  
clock or the on-chip oscillator clock can be selected.  
10.3.2 CPU Clock  
The CPU clock is an operating clock for the CPU and watchdog timer.  
The system clock can be divided by 1 (no division), 2, 4, 8, or 16 to produce the CPU clock. Use the  
CM06 bit in the CM0 register and bits CM16 to CM17 in the CM1 register to select the value of the  
division.  
After reset, the low-speed on-chip oscillator clock divided by 8 provides the CPU clock. When  
entering stop mode from high-speed or medium-speed mode, the CM06 bit is set to 1 (Divide-by-8  
mode).  
10.3.3 Peripheral Function Clock (f1, f2, f4, f8, and f32)  
The peripheral function clock is the operating clock for the peripheral functions.  
The clock fi (i = 1, 2, 4, 8, and 32) is generated by the system clock divided by i. The clock fi is used  
for timers X, Y, Z, and C, the serial interface and the comparator.  
When the WAIT instruction is executed after setting the CM02 bit in the CM0 register to 1 (peripheral  
function clock stops in wait mode), the clock fi stops.  
10.3.4 fRING and fRING128  
fRING and fRING128 are operating clocks for the peripheral functions.  
fRING runs at the same frequency as the on-chip oscillator clock and can be used as the source for  
the timer X. fRING128 is generated from fRING by dividing it by 128, and it can be used as timer C.  
When the WAIT instruction is executed, the clocks fRING and fRING128 do not stop.  
10.3.5 fRING-fast  
fRING-fast is used as the count source for timer C. fRING-fast is generated by the high-speed on-  
chip oscillator and supplied by setting the HRA00 bit to 1.  
When the WAIT instruction is executed, the clock fRING-fast does not stop.  
10.3.6 fRING-S  
fRING-S is an operating clock for the watchdog timer and voltage detection circuit. fRING-S is  
supplied by setting the CM14 bit to 0 (low-speed on-chip oscillator on) and uses the clock generated  
by the low-speed on-chip oscillator. When the WAIT instruction is executed or in count source protect  
mode of the watchdog timer, fRING-S does not stop.  
Rev.1.30 Apr 14, 2006 Page 62 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.4 Power Control  
There are three power control modes. All modes other than wait mode and stop mode are referred to as  
standard operating mode.  
10.4.1 Standard Operating Mode  
Standard operating mode is further separated into four modes.  
In standard operating mode, the CPU clock and the peripheral function clock are supplied to operate  
the CPU and the peripheral function clocks. Power consumption control is enabled by controlling the  
CPU clock frequency. The higher the CPU clock frequency, the more processing power increases.  
The lower the CPU clock frequency, the more power consumption decreases. When unnecessary  
oscillator circuits stop, power consumption is further reduced.  
Before the clock sources for the CPU clock can be switched over, the new clock source needs to be  
oscillating and stable. If the new clock source is the main clock, allow sufficient wait time in a  
program until oscillation is stabilized before exiting.  
Table 10.2  
Settings and Modes of Clock Associated Bits  
OCD Register  
CM1 Register  
CM0 Register  
Modes  
High-speed mode  
OCD2  
CM17, CM16  
CM13  
CM06  
CM05  
0
0
0
0
0
1
1
1
1
1
00b  
01b  
10b  
1
1
1
1
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
Medium-  
speed  
mode  
Divide-by-2  
Divide-by-4  
Divide-by-8  
Divide-by-16  
11b  
00b  
01b  
10b  
High-speed, No division  
low-speed  
on-chip  
oscillator  
Divide-by-2  
Divide-by-4  
Divide-by-8  
Divide-by-16  
(1)  
mode  
11b  
NOTE:  
1. The low-speed on-chip oscillator is used as the on-chip oscillator clock when the CM14 bit in the  
CM1 register is set to 0 (low-speed on-chip oscillator on) and the HRA01 bit in the HRA0 register is  
set to 0. The high-speed on-chip oscillator is used as the on-chip oscillator clock when the HRA00  
bit in the HRA0 register is set to 1 (high-speed on-chip oscillator A on) and the HRA01 bit in the  
HRA0 register is set to 1.  
Rev.1.30 Apr 14, 2006 Page 63 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.4.1.1 High-Speed Mode  
The main clock divided by 1 (no division) provides the CPU clock. If the CM14 bit is set to 0 (low-  
speed on-chip oscillator on) or the HRA00 bit in the HRA0 register is set to 1 (high-speed on-chip  
oscillator on), fRING and fRING128 can be used as timers X and C. When the HRA00 bit is set to 1,  
fRING-fast can be used as timer C. When the CM14 bit is set to 0 (low-speed on-chip oscillator on),  
fRING-S can be used for the watchdog timer and voltage detection circuit.  
10.4.1.2 Medium-Speed Mode  
The main clock divided by 2, 4, 8, or 16 provides the CPU clock. If the CM14 bit is set to 0 (low-speed  
on-chip oscillator on) or the HRA00 bit in the HRA0 register is set to 1 (high-speed on-chip oscillator  
on), fRING and fRING128 can be used as timers X and C. When the HRA00 bit is set to 1, fRING-  
fast can be used as timer C. When the CM14 bit is set to 0 (low-speed on-chip oscillator on), fRING-  
S can be used for the watchdog timer and voltage detection circuit.  
10.4.1.3 High-Speed and Low-Speed On-Chip Oscillator Modes  
The on-chip oscillator clock divided by 1 (no division), 2, 4, 8, or 16 provides the CPU clock. The on-  
chip oscillator clock is also the clock source for the peripheral function clocks. When the HRA00 bit is  
set to 1, fRING-fast can be used as timer C. When the CM14 bit is set to 0 (low-speed on-chip  
oscillator on), fRING-S can be used for the watchdog timer and voltage detection circuit.  
10.4.2 Wait Mode  
Since the CPU clock stops in wait mode, the CPU, which operates using the CPU clock and the  
watchdog timer when count source protection mode is disabled stop. The main clock and on-chip  
oscillator clock do not stop and the peripheral functions using these clocks continue operating.  
10.4.2.1 Peripheral Function Clock Stop Function  
If the CM02 bit is set to 1 (peripheral function clock stops in wait mode), the f1, f2, f4, f8, and f32  
clocks stop in wait mode. This reduces power consumption.  
10.4.2.2 Entering Wait Mode  
The MCU enters wait mode when the WAIT instruction is executed.  
10.4.2.3 Pin Status in Wait Mode  
The status before wait mode was entered is maintained.  
Rev.1.30 Apr 14, 2006 Page 64 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.4.2.4 Exiting Wait Mode  
The MCU exits wait mode by a hardware reset or a peripheral function interrupt. To use a hardware  
reset to exit wait mode, set bits ILVL2 to ILVL0 for the peripheral function interrupts to 000b  
(interrupts disabled) before executing the WAIT instruction.  
The peripheral function interrupts are affected by the CM02 bit. When the CM02 bit is set to 0  
(peripheral function clock does not stop in wait mode), all peripheral function interrupts can be used  
to exit wait mode. When the CM02 bit is set to 1 (peripheral function clock stops in wait mode), the  
peripheral functions using the peripheral function clock stop operating and the peripheral functions  
operated by external signals can be used to exit wait mode.  
Table 10.3 lists Interrupts to Exit Wait Mode and Usage Conditions.  
To use a peripheral function interrupt to exit wait mode, set up the following before executing the  
WAIT instruction.  
(1) Set the interrupt priority level in bits ILVL2 to ILVL0 in the interrupt control registers of the  
peripheral function interrupts to be used for exiting wait mode. Set bits ILVL2 to ILVL0 of the  
peripheral function interrupts that are not to be used for exiting wait mode to 000b (interrupt  
disabled).  
(2) Set the I flag to 1.  
(3) Operate the peripheral function to be used for exiting wait mode.  
When exiting by a peripheral function interrupt, the interrupt sequence is executed when an interrupt  
request is generated and the CPU clock supply is started.  
The CPU clock, when exiting wait mode by a peripheral function interrupt, is the same clock as the  
CPU clock when the WAIT instruction is executed.  
Table 10.3  
Interrupts to Exit Wait Mode and Usage Conditions  
Interrupt  
CM02 = 0  
Usable when operating with  
internal or external clock  
Usable  
CM02 = 1  
Usable when operating with  
external clock  
Serial interface interrupt  
Key input interrupt  
Usable  
Comparator conversion interrupt Usable in one-shot mode  
(Do not use)  
Timer X interrupt  
Timer Z interrupt  
Timer C interrupt  
Usable in all modes  
Usable in all modes  
Usable in all modes  
Usable  
Usable in event counter mode  
(Do not use)  
(Do not use)  
INT interrupt  
Usable (INT0 and INT3 can be  
used if there is no filter.)  
Usable  
Voltage monitor 2 interrupt  
Oscillation stop detection  
interrupt  
Usable  
Usable  
(Do not use)  
Watchdog timer interrupt  
Usable in count source protect Usable in count source protect  
mode mode  
Rev.1.30 Apr 14, 2006 Page 65 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.4.3 Stop Mode  
Since the oscillator circuits stop in stop mode, the CPU clock and peripheral function clock stop and  
the CPU and peripheral functions that use these clocks stop operating. The least power required to  
operate the MCU is in stop mode. If the voltage applied to the VCC pin is VRAM or more, the  
contents of internal RAM is maintained.  
The peripheral functions clocked by external signals continue operating. Table 10.4 lists Interrupts to  
Exit Stop Mode and Usage Conditions.  
Table 10.4  
Interrupts to Exit Stop Mode and Usage Conditions  
Interrupt Usage Conditions  
Key input interrupt  
INT0 to INT1 interrupts  
INT3 interrupt  
INT0 can be used if there is no filter.  
No filter. Interrupt request is generated at INT3 input (TCC06 bit in  
TCC0 register is set to 1).  
Timer X interrupt  
When external pulse is counted in event counter mode.  
When external clock is selected.  
Serial interface interrupt  
Voltage monitor 2 interrupt  
Usable in digital filter disabled mode (VW2C1 bit in VW2C register  
is set to 1)  
10.4.3.1 Entering Stop Mode  
The MCU enters stop mode when the CM10 bit in the CM1 register is set to 1 (all clocks stop). At the  
same time, the CM06 bit in the CM0 register is set to 1 (Divide-by-8 mode) and the CM15 bit in the  
CM10 register is set to 1 (main clock oscillation circuit drive capacity high).  
When using stop mode, set bits OCD1 to OCD0 to 00b (oscillation stop detection function disabled)  
before entering stop mode.  
10.4.3.2 Pin Status in Stop Mode  
The status before wait mode was entered is maintained.  
However, when the CM13 bit in the CM1 register is set to 1 (XIN-XOUT pins), the XOUT(P4_7) pin is  
held “H”. When the CM13 bit is set to 0 (input ports P4_6 and P4_7), the P4_7(XOUT) pin is held in  
input status.  
10.4.3.3 Exiting Stop Mode  
The MCU exits stop mode by a hardware reset or peripheral function interrupt.  
When using a hardware reset to exit stop mode, set bits ILVL2 to ILVL0 for the peripheral function  
interrupts to 000b (interrupts disabled) before setting the CM10 bit to 1.  
When using a peripheral function interrupt to exit stop mode, set up the following before setting the  
CM10 bit to 1.  
(1) Set the interrupt priority level in bits ILVL2 to ILVL0 of the peripheral function interrupts to be  
used for exiting stop mode. Set bits ILVL2 to ILVL0 of the peripheral function interrupts that are  
not to be used for exiting stop mode to 000b (interrupt disabled).  
(2) Set the I flag to 1.  
(3) Operate the peripheral function to be used for exiting stop mode.  
When exiting by a peripheral function interrupt, the interrupt sequence is executed when an interrupt  
request is generated and the CPU clock supply is started.  
The CPU clock, when exiting stop mode by a peripheral function interrupt, is the Divide-by-8 of the  
clock which was used before stop mode was entered.  
Rev.1.30 Apr 14, 2006 Page 66 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
Figure 10.8 shows the State Transitions in Power Control.  
Reset  
Low-speed on-chip  
oscillator mode  
OCD2 = 1  
HRA01 = 0  
CM14 = 0  
There are six power control modes.  
(1) High-speed mode  
(2) Medium-speed mode  
(3) High-speed on-chip oscillator mode  
(4) Low-speed on-chip oscillator mode  
(5) Wait mode  
High-speed mode,  
medium-speed mode  
(6) Stop mode  
OCD2 = 0  
CM05 = 0  
CM13 = 1  
High-speed on-chip  
oscillator mode  
OCD2 = 1  
CM05: Bit in CM0 register  
CM10, CM13, CM14: Bits in CM1 register  
OCD2: Bit in OCD register  
HRA01 = 1  
HRA00, HRA01: Bits in HRA0 register  
HRA00 = 1  
WAIT  
instruction  
CM10 = 1  
(all oscillators stop)  
Interrupt  
Interrupt  
Wait mode  
Stop mode  
Figure 10.8  
State Transitions in Power Control  
Rev.1.30 Apr 14, 2006 Page 67 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.5 Oscillation Stop Detection Function  
The oscillation stop detection function detects the stop of the main clock oscillation circuit. The  
oscillation stop detection function can be enabled and disabled by bits OCD1 to OCD0 in the OCD  
register.  
Table 10.5 lists the Specifications of Oscillation Stop Detection Function.  
When the main clock is the CPU clock source and bits OCD1 to OCD0 are set to 11b (oscillation stop  
detection function enabled), the system is placed in the following state if the main clock stops.  
OCD2 bit in OCD register = 1 (on-chip oscillator clock selected)  
OCD3 bit in OCD register = 1 (main clock stops)  
CM14 bit in CM1 register = 0 (low-speed on-chip oscillator oscillates)  
Oscillation stop detection interrupt request is generated.  
Table 10.5  
Specifications of Oscillation Stop Detection Function  
Item Specification  
Oscillation stop detection enable clock f(XIN) 2 MHz  
and frequency bandwidth  
Enabled condition for oscillation stop  
detection function  
Set bits OCD1 to OCD0 to 11b (oscillation stop detection  
function enabled).  
Operation at oscillation stop detection  
Oscillation stop detection interrupt is generated  
10.5.1 How to Use Oscillation Stop Detection Function  
The oscillation stop detection interrupt shares a vector with the voltage monitor 2 interrupt, and  
the watchdog timer interrupt. When using the oscillation stop detection interrupt and watchdog  
timer interrupt, the interrupt source needs to be determined. Table 10.6 lists Determining Interrupt  
Source for Oscillation Stop Detection, Watchdog Timer, and Voltage Monitor 2 Interrupts.  
When the main clock restarts after oscillation stop, switch the main clock to the clock source of  
the CPU clock and peripheral functions by a program.  
Figure 10.9 shows the Procedure for Switching Clock Source from Low-Speed On-Chip Oscillator  
to Main Clock.  
To enter wait mode while using the oscillation stop detection function, set the CM02 bit to 0  
(peripheral function clock does not stop in wait mode).  
Since the oscillation stop detection function is a function for cases where the main clock is  
stopped by an external cause, set bits OCD1 to OCD0 to 00b (oscillation stop detection function  
disabled) when the main clock stops or is started by a program, (stop mode is selected or the  
CM05 bit is changed).  
This function cannot be used when the main clock frequency is 2 MHz or below. In this case, set  
bits OCD1 to OCD0 to 00b (oscillation stop detection function disabled).  
To use the low-speed on-chip oscillator clock for the CPU clock and clock sources of peripheral  
functions after detecting the oscillation stop, set the HRA01 bit in the HRA0 register to 0 (low-  
speed on-chip oscillator selected) and bits OCD1 to OCD0 to 11b (oscillation stop detection  
function enabled).  
To use the high-speed on-chip oscillator clock for the CPU clock and clock sources of peripheral  
functions after detecting the oscillation stop, set the HRA01 bit to 1 (high-speed on-chip oscillator  
selected) and bits OCD1 to OCD0 to 11b (oscillation stop detection function enabled).  
Rev.1.30 Apr 14, 2006 Page 68 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
Table 10.6  
Determining Interrupt Source for Oscillation Stop Detection, Watchdog Timer, and  
Voltage Monitor 2 Interrupts  
Generated Interrupt Source  
Oscillation stop detection  
((a) or (b))  
Bit Showing Interrupt Cause  
(a) OCD3 bit in OCD register = 1  
(b) Bits OCD1 to OCD0 in OCD register = 11b and OCD2 bit = 1  
VW2C3 bit in VW2C register = 1  
Watchdog timer  
Voltage monitor 2  
VW2C2 bit in VW2C register = 1  
Switch to main clock  
Determine OCD3 bit  
1 (main clock stops)  
0 (main clock oscillates)  
Judge several times  
Determine several times that the main clock is supplied  
Set bits OCD1 to OCD0 to 00b  
(oscillation stop detection function  
disabled)  
Set OCD2 bit to 0  
(select main clock)  
End  
OCD3 to OCD0: Bits in OCD register  
Figure 10.9  
Procedure for Switching Clock Source from Low-Speed On-Chip Oscillator to Main  
Clock  
Rev.1.30 Apr 14, 2006 Page 69 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
10. Clock Generation Circuit  
10.6 Notes on Clock Generation Circuit  
10.6.1 Stop Mode and Wait Mode  
When entering stop mode or wait mode, an instruction queue pre-reads 4 bytes from the WAIT  
instruction or an instruction that sets the CM10 bit in the CM1 register to 1 (stops all clocks) before the  
program stops. Therefore, insert at least four NOPs after the WAIT instruction or an instruction that  
sets the CM10 bit to 1.  
10.6.2 Oscillation Stop Detection Function  
Since the oscillation stop detection function cannot be used if the main clock frequency is below 2  
MHz, set bits OCD1 to OCD0 to 00b (oscillation stop detection function disabled) in this case.  
10.6.3 Oscillation Circuit Constants  
Ask the manufacturer of the oscillator to specify the best oscillation circuit constants for your system.  
10.6.4 High-Speed On-Chip Oscillator Clock  
The high-speed on-chip oscillator frequency may be changed up to 10%(1) in flash memory CPU  
rewrite mode during auto-program operation or auto-erase operation.  
The high-speed on-chip oscillator frequency after auto-program operation ends or auto-erase  
operation ends is held the state before the program command or block erase command is generated.  
Also, this note is not applicable when the read array command, read status register command, or  
clear status register command is generated. The application products must be designed with careful  
considerations for the frequency change.  
NOTE:  
1. Change ratio to 8 MHz frequency adjusted in shipping.  
Rev.1.30 Apr 14, 2006 Page 70 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
11.Protection  
11. Protection  
The protection function protects important registers from being easily overwritten when a program runs out  
of control. Figure 11.1 shows the PRCR Register. The registers protected by the PRCR register are listed  
below.  
• Registers protected by PRC0 bit: Registers CM0, CM1, OCD, HRA0, HRA1, and HRA2  
• Registers protected by PRC1 bit: Registers PM0 and PM1  
• Registers protected by PRC3 bit: Registers VCA2, VW1C, and VW2C  
Protect Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
0
Symbol  
PRCR  
Address  
000Ah  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Protect bit 0  
Writing to registers CM0, CM, OCD, HRA0, HRA1,  
and HRA2 is enabled.  
PRC0  
PRC1  
0 : Disables w riting  
1 : Enables w riting  
Protect bit 1  
Writing to registers PM0 and PM1 is enabled.  
0 : Disables w riting  
RW  
RW  
RW  
1 : Enables w riting  
(b2)  
Reserved bit  
Protect bit 3  
Set to 0.  
Writing to registers VCA2, VW1C, and VW2C is  
enabled.  
PRC3  
0 : Disables w riting  
1 : Enables w riting  
(b5-b4)  
Reserved bits  
Reserved bits  
Set to 0.  
RW  
RO  
(b7-b6)  
When read, the content is 0.  
Figure 11.1  
PRCR Register  
Rev.1.30 Apr 14, 2006 Page 71 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12. Interrupts  
12.1 Interrupt Overview  
12.1.1 Types of Interrupts  
Figure 12.1 shows the types of Interrupts.  
Undefined instruction (UND instruction)  
Overflow (INTO instruction)  
BRK instruction  
INT instruction  
Software  
(non-maskable interrupts)  
Interrupt  
Watchdog timer  
Oscillation stop detection  
Voltage monitor 2  
Single step(2)  
Special  
(non-maskable interrupts)  
Hardware  
Address match  
Peripheral Function(1)  
(maskable interrupts)  
NOTES:  
1. Peripheral function interrupts in the MCU are used to generate peripheral interrupts.  
2. Do not use this interrupt. This is for use with development tools only.  
Figure 12.1  
Interrupts  
Maskable interrupts:  
The interrupt enable flag (I flag) enables or disables these interrupts.  
The interrupt priority order can be changed based on the interrupt  
priority level.  
Non-maskable interrupts: The interrupt enable flag (I flag) does not enable or disable interrupts.  
The interrupt priority order cannot be changed based on interrupt  
priority level.  
Rev.1.30 Apr 14, 2006 Page 72 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.2 Software Interrupts  
A software interrupt is generated when an instruction is executed. Software interrupts are non-  
maskable.  
12.1.2.1 Undefined Instruction Interrupt  
The undefined instruction interrupt is generated when the UND instruction is executed.  
12.1.2.2 Overflow Interrupt  
The overflow interrupt is generated when the O flag is set to 1 (arithmetic operation overflow) and the  
INTO instruction is executed. Instructions that set the O flag are: ABS, ADC, ADCF, ADD, CMP, DIV,  
DIVU, DIVX, NEG, RMPA, SBB, SHA, and SUB.  
12.1.2.3 BRK Interrupt  
A BRK interrupt is generated when the BRK instruction is executed.  
12.1.2.4 INT Instruction Interrupt  
An INT instruction interrupt is generated when the INT instruction is executed. The INT instruction  
can select software interrupt numbers 0 to 63. Software interrupt numbers 4 to 31 are assigned to the  
peripheral function interrupt. Therefore, the MCU executes the same interrupt routine when the INT  
instruction is executed as when a peripheral function interrupt is generated. For software interrupt  
numbers 0 to 31, the U flag is saved to the stack during instruction execution and the U flag is set to  
0 (ISP selected) before the interrupt sequence is executed. The U flag is restored from the stack  
when returning from the interrupt routine. For software interrupt numbers 32 to 63, the U flag does  
not change state during instruction execution, and the selected SP is used.  
Rev.1.30 Apr 14, 2006 Page 73 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.3 Special Interrupts  
Special interrupts are non-maskable.  
12.1.3.1 Watchdog Timer Interrupt  
The watchdog timer interrupt is generated by the watchdog timer. Reset the watchdog timer after the  
watchdog timer interrupt is generated. For details, refer to 13. Watchdog Timer.  
12.1.3.2 Oscillation Stop Detection Interrupt  
The oscillation stop detection interrupt is generated by the oscillation stop detection function. For  
details of the oscillation stop detection function, refer to 10. Clock Generation Circuit.  
12.1.3.3 Voltage Monitor 2 Interrupt  
The voltage monitor 2 interrupt is generated by the voltage detection circuit. For details of the voltage  
detection circuit, refer to 7. Voltage Detection Circuit.  
12.1.3.4 Single-Step Interrupt, and Address Break Interrupt  
Do not use these interrupts. They are for use by development tools only.  
12.1.3.5 Address Match Interrupt  
The address match interrupt is generated immediately before executing an instruction that is stored  
at an address indicated by registers RMAD0 to RMAD1 when the AIER0 or AIER1 bit in the AIER  
register is set to 1 (address match interrupt enable). For details of the address match interrupt, refer  
to 12.4 Address Match Interrupt.  
12.1.4 Peripheral Function Interrupt  
The peripheral function interrupt is generated by the internal peripheral function of the MCU and is a  
maskable interrupt. Refer to Table 12.2 Relocatable Vector Tables for sources of the peripheral  
function interrupt. For details of peripheral functions, refer to the descriptions of individual peripheral  
functions.  
Rev.1.30 Apr 14, 2006 Page 74 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.5 Interrupts and Interrupt Vectors  
There are 4 bytes in each vector. Set the starting address of an interrupt routine in each interrupt  
vector. When an interrupt request is acknowledged, the CPU branches to the address set in the  
corresponding interrupt vector. Figure 12.2 shows an Interrupt Vector.  
MSB  
LSB  
Vector address (L)  
Low address  
Mid address  
0 0 0 0  
0 0 0 0  
High address  
0 0 0 0  
Vector address (H)  
Figure 12.2  
Interrupt Vector  
12.1.5.1 Fixed Vector Tables  
The fixed vector tables are allocated addresses 0FFDCh to 0FFFFh. Table 12.1 lists the Fixed Vector  
Tables. The vector addresses (H) of fixed vectors are used by the ID code check function. For  
details, refer to 17.3 Functions to Prevent Rewriting of Flash Memory.  
Table 12.1  
Fixed Vector Tables  
Vector Addresses  
Address (L) to (H)  
Undefined instruction 0FFDCh to 0FFDFh  
Interrupt Source  
Remarks  
Reference  
Interrupt on UND  
instruction  
R8C/Tiny Series Software  
Manual  
Overflow  
0FFE0h to 0FFE3h  
0FFE4h to 0FFE7h  
Interrupt on INTO  
instruction  
BRK instruction  
If the content of address  
0FFE7h is FFh, program  
execution starts from the  
address shown by the  
vector in the relocatable  
vector table.  
Address match  
0FFE8h to 0FFEBh  
12.4 Address Match  
Interrupt  
(1)  
0FFECh to 0FFEFh  
0FFF0h to 0FFF3h  
Single step  
• Watchdog timer  
• Oscillation stop  
detection  
• 13. Watchdog Timer  
• 10. Clock Generation  
Circuit  
• Voltage monitor 2  
• 7. Voltage Detection  
Circuit  
(1)  
0FFF4h to 0FFF7h  
0FFF8h to 0FFFBh  
0FFFCh to 0FFFFh  
Address break  
(Reserved)  
Reset  
5. Resets  
NOTE:  
1. Do not use these interrupts. They are for use by development tools only.  
Rev.1.30 Apr 14, 2006 Page 75 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.5.2 Relocatable Vector Tables  
The relocatable vector tables occupy 256 bytes beginning from the starting address set in the INTB  
register. Table 12.2 lists the Relocatable Vector Tables.  
Table 12.2  
Relocatable Vector Tables  
(1)  
Software  
Interrupt Number  
Vector Address  
Interrupt Source  
Reference  
Address (L) to Address (H)  
+0 to +3 (0000h to 0003h)  
(2)  
0
1 to 12  
13  
R8C/Tiny Series  
Software Manual  
BRK instruction  
(Reserved)  
Key input  
+52 to +55 (0034h to 0037h)  
12.3 Key Input Interrupt  
16. Comparator  
Comparator conversion +56 to +59 (0038h to 003Bh)  
(Reserved)  
14  
15  
Compare 1  
+64 to +67 (0040h to 0043h)  
+68 to +71 (0044h to 0047h)  
+72 to +75 (0048h to 004Bh)  
+76 to +79 (004Ch to 004Fh)  
+80 to +83 (0050h to 0053h)  
16  
14.3 Timer C  
UART0 transmit  
UART0 receive  
UART1 transmit  
UART1 receive  
(Reserved)  
17  
15. Serial Interface  
18  
19  
20  
21  
Timer X  
+88 to +91 (0058h to 005Bh)  
22  
14.1 Timer X  
(Reserved)  
23  
Timer Z  
+96 to +99 (0060h to 0063h)  
+100 to +103 (0064h to 0067h)  
24  
14.2 Timer Z  
25  
INT1  
12.2 INT interrupt  
+104 to +107 (0068h to 006Bh)  
26  
INT3  
Timer C  
Compare 0  
+108 to +111 (006Ch to 006Fh)  
+112 to +115 (0070h to 0073h)  
+116 to +119 (0074h to 0077h)  
27  
28  
29  
14.3 Timer C  
INT0  
12.2 INT interrupt  
(Reserved)  
(Reserved)  
Software interrupt  
30  
31  
(2)  
+128 to +131 (0080h to 0083h) to  
+252 to +255 (00FCh to 00FFh)  
32 to 63  
R8C/Tiny Series  
Software Manual  
NOTES:  
1. These addresses are relative to those in the INTB register.  
2. The I flag does not disable these interrupts.  
Rev.1.30 Apr 14, 2006 Page 76 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.6 Interrupt Control  
The following describes enabling and disabling the maskable interrupts and setting the priority for  
acknowledgement. The explanation does not apply to nonmaskable interrupts.  
Use the I flag in the FLG register, IPL, and bits ILVL2 to ILVL0 in each interrupt control register to  
enable or disable maskable interrupts. Whether an interrupt is requested is indicated by the IR bit in  
each interrupt control register.  
Figure 12.3 shows the Interrupt Control Register and Figure 12.4 shows the INT0IC Register  
Interrupt Control Register(2)  
Symbol  
KUPIC  
Address  
004Dh  
After Reset  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
XXXXX000b  
004Eh  
ADIC  
0050h  
CMP1IC  
S0TIC, S1TIC  
S0RIC, S1RIC  
TXIC  
0051h, 0053h  
0052h, 0054h  
0056h  
0058h  
TZIC  
0059h  
INT1IC  
005Ah  
INT3IC  
005Bh  
TCIC  
b7 b6 b5 b4 b3 b2 b1 b0  
CMP0IC  
005Ch  
XXXXX000b  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
b2 b1 b0  
Interrupt priority level select bits  
0 0 0 : Level 0 (interrupt disable)  
0 0 1 : Level 1  
ILVL0  
ILVL1  
0 1 0 : Level 2  
0 1 1 : Level 3  
1 0 0 : Level 4  
1 0 1 : Level 5  
RW  
RW  
1 1 0 : Level 6  
1 1 1 : Level 7  
ILVL2  
IR  
Interrupt request bit  
0 : Requests no interrupt  
1 : Requests interrupt  
RW(1)  
(b7-b4)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
NOTES:  
1. Only 0 can be w ritten to the IR bit. Do not w rite 1.  
2. Rew rite the interrupt control register w hen the interrupt request w hich is applicable for the register is not generated.  
Ref er to  
12.5.6 Changing Interrupt Control Register Contents.  
Figure 12.3  
Interrupt Control Register  
Rev.1.30 Apr 14, 2006 Page 77 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
INT0 Interrupt Control Register(2)  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
Address  
005Dh  
After Reset  
XX00X000b  
Function  
INT01C  
Bit Symbol  
Bit Name  
RW  
RW  
b2 b1 b0  
Interrupt priority level select bits  
0 0 0 : Level 0 (interrupt disable)  
0 0 1 : Level 1  
0 1 0 : Level 2  
0 1 1 : Level 3  
1 0 0 : Level 4  
ILVL0  
ILVL1  
ILVL2  
RW  
RW  
1 0 1 : Level 5  
1 1 0 : Level 6  
1 1 1 : Level 7  
Interrupt request bit  
Polarity sw itch bit(4)  
Reserved bit  
0 : Requests no interrupt.  
1 : Requests interrupt.  
IR  
RW(1)  
RW  
RW  
0 : Selects falling edge.  
1 : Selects rising edge.(3)  
POL  
(b5)  
Set to 0.  
(b7-b6)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
NOTES:  
1. Only 0 can be w ritten to the IR bit. (Do not w rite 1.)  
2. Rew rite the interrupt control register w hen the interrupt request w hich is applicable for the register is not generated.  
Ref er to  
12.5.6 Changing Interrupt Control Register Contents.  
3. If the INTOPL bit in the INTEN register is set to 1 (both edges), set the POL bit to 0 (selects falling edge).  
4. The IR bit may be set to 1 (requests interrupt) w hen the POL bit is rew ritten. Refer to  
12.5.5 Changing Interrupt  
.
Sources  
Figure 12.4  
INT0IC Register  
Rev.1.30 Apr 14, 2006 Page 78 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.6.1 I Flag  
The I flag enables or disables maskable interrupts. Setting the I flag to 1 (enabled) enables maskable  
interrupts. Setting the I flag to 0 (disabled) disables all maskable interrupts.  
12.1.6.2 IR Bit  
The IR bit is set to 1 (interrupt requested) when an interrupt request is generated. Then, when the  
interrupt request is acknowledged and the CPU branches to the corresponding interrupt vector, the  
IR bit is set to 0 (= interrupt not requested).  
The IR bit can be set to 0 by a program. Do not write 1 to this bit.  
12.1.6.3 Bits ILVL2 to ILVL0 and IPL  
Interrupt priority levels can be set using bits ILVL2 to ILVL0.  
Table 12.3 lists the Settings of Interrupt Priority Levels and Table 12.4 lists the Interrupt Priority  
Levels Enabled by IPL.  
The following are conditions under which an interrupt is acknowledged:  
I flag = 1  
IR bit = 1  
Interrupt priority level > IPL  
The I flag, IR bit, bits ILVL2 to ILVL0 and IPL are independent of each other. They do not affect one  
another.  
Table 12.3  
Settings of Interrupt Priority  
Levels  
Table 12.4  
Interrupt Priority Levels Enabled by  
IPL  
ILVL2 to ILVL0 Bits  
Interrupt Priority Level  
Priority Order  
IPL  
000b  
Enabled Interrupt Priority Levels  
Interrupt level 1 and above  
Interrupt level 2 and above  
Interrupt level 3 and above  
Interrupt level 4 and above  
Interrupt level 5 and above  
Interrupt level 6 and above  
Interrupt level 7 and above  
All maskable interrupts are disabled  
000b  
001b  
010b  
011b  
100b  
101b  
110b  
111b  
Level 0 (interrupt disabled)  
Level 1  
Level 2  
Level 3  
Level 4  
Level 5  
Level 6  
Level 7  
Low  
001b  
010b  
011b  
100b  
101b  
110b  
High  
111b  
Rev.1.30 Apr 14, 2006 Page 79 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.6.4 Interrupt Sequence  
An interrupt sequence is performed between an interrupt request acknowledgement and interrupt  
routine execution.  
When an interrupt request is generated while an instruction is being executed, the CPU determines  
its interrupt priority level after the instruction is completed. The CPU starts the interrupt sequence  
from the following cycle. However, for the SMOVB, SMOVF, SSTR, or RMPA instruction, if an  
interrupt request is generated while the instruction is being executed, the MCU suspends the  
instruction to start the interrupt sequence. The interrupt sequence is performed as indicated below.  
Figure 12.5 shows the Time Required for Executing Interrupt Sequence.  
(1) The CPU gets interrupt information (interrupt number and interrupt request level) by reading  
address 00000h. The IR bit for the corresponding interrupt is set to 0 (interrupt not requested).  
(1)  
(2) The FLG register is saved to a temporary register in the CPU immediately before entering  
the interrupt sequence.  
(3) The I, D, and U flags in the FLG register are set as follows:  
The I flag is set to 0 (interrupts disabled).  
The D flag is set to 0 (single-step interrupt disabled).  
The U flag is set to 0 (ISP selected).  
However, the U flag does not change state if an INT instruction for software interrupt numbers  
32 to 63 is executed.  
(1)  
(4) The CPU’s internal temporary register is saved to the stack.  
(5) The PC is saved to the stack.  
(6) The interrupt priority level of the acknowledged interrupt is set in the IPL.  
(7) The starting address of the interrupt routine set in the interrupt vector is stored in the PC.  
After the interrupt sequence is completed, instructions are executed from the starting address of the  
interrupt routine.  
NOTE:  
1. This register cannot be used by user.  
1
2
3
4
5
6
7
8
9
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
CPU clock  
Address bus  
Data bus  
RD  
Address  
0000h  
Undefined  
SP-2 SP-1 SP-4  
SP-3  
VEC  
VEC+1  
VEC+2  
PC  
Interrupt  
information  
SP-3  
contents  
VEC+1  
contents  
VEC+2  
contents  
SP-2  
SP-1  
SP-4  
VEC  
contents  
Undefined  
Undefined  
contents contents contents  
WR  
The undefined state depends on the instruction queue buffer. A read cycle occurs when the instruction queue buffer is  
ready to acknowledge instructions.  
Figure 12.5  
Time Required for Executing Interrupt Sequence  
Rev.1.30 Apr 14, 2006 Page 80 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.6.5 Interrupt Response Time  
Figure 12.6 shows the Interrupt Response Time. The interrupt response time is the period between  
an interrupt request generation and the execution of the first instruction in the interrupt routine. The  
interrupt response time includes the period between interrupt request generation and the completion  
of execution of the instruction (refer to (a) in Figure 12.6) and the period required to perform the  
interrupt sequence (20 cycles, refer to (b) in Figure 12.6).  
Interrupt request is generated. Interrupt request is acknowledged.  
Time  
Instruction in  
interrupt routine  
Instruction  
Interrupt sequence  
(a)  
20 cycles (b)  
Interrupt response time  
(a) Period between interrupt request generation and the completion of execution of an  
instruction. The length of time varies depending on the instruction being executed. The  
DIVX instruction requires the longest time, 30 cycles (assuming no wait states and that a  
register is set as the divisor).  
(b) 21 cycles for address match and single-step interrupts.  
Figure 12.6  
Interrupt Response Time  
12.1.6.6 IPL Change when Interrupt Request is Acknowledged  
When an interrupt request of a maskable interrupt is acknowledged, the interrupt priority level of the  
acknowledged interrupt is set in the IPL.  
When a software interrupt or special interrupt request is acknowledged, the level listed in Table 12.5  
is set in the IPL. Table 12.5 lists the IPL Value When Software or Special Interrupt Is Acknowledged.  
Table 12.5  
IPL Value When Software or Special Interrupt Is Acknowledged  
Interrupt Source Value Set in IPL  
Watchdog timer, oscillation stop detection, voltage monitor 2  
Software, address match, single-step, address break  
7
Not changed  
Rev.1.30 Apr 14, 2006 Page 81 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.6.7 Saving a Register  
In the interrupt sequence, the FLG register and PC are saved to the stack.  
After an extended 16 bits, 4 high-order bits in the PC and 4 high-order (IPL) and 8 low-order bits in  
the FLG register, are saved to the stack, the 16 low-order bits in the PC are saved. Figure 12.7  
shows the Stack State Before and After Acknowledgement of Interrupt Request.  
The other necessary registers are saved by a program at the beginning of the interrupt routine. The  
(1)  
PUSHM instruction can save several registers in the register bank being currently used with a  
single instruction.  
NOTE:  
1. Selectable from registers R0, R1, R2, R3, A0, A1, SB, and FB.  
Stack  
Stack  
Address  
Address  
MSB  
LSB  
MSB  
LSB  
[SP]  
New SP value  
m4  
m3  
m4  
m3  
PCL  
PCM  
m2  
m1  
m
m2  
FLGL  
m1  
FLGH  
PCH  
[SP]  
m
SP value before  
interrupt is generated  
Previous stack contents  
Previous stack contents  
Previous stack contents  
Previous stack contents  
PCH  
PCM  
PCL  
: 4 high-order bits of PC  
: 8 middle-order bits of PC  
: 8 low-order bits of PC  
m+1  
m+1  
FLGH : 4 high-order bits of FLG  
FLGL : 8 low-order bits of FLG  
Stack state before interrupt request  
is acknowledged  
Stack state after interrupt request  
is acknowledged  
NOTE:  
1.When executing software number 32 to 63 INT instructions,  
this SP is specified by the U flag. Otherwise it is ISP.  
Figure 12.7  
Stack State Before and After Acknowledgement of Interrupt Request  
The register saving operation, which is performed as part of the interrupt sequence, saved in 8 bits at  
a time in four steps. Figure 12.8 shows the Register Saving Operation.  
.
Stack  
Address  
Sequence in which  
order registers are  
saved  
[SP]5  
[SP]4  
[SP]3  
(3)  
(4)  
PCL  
PCM  
Saved, 8 bits at a time  
[SP]2  
[SP]1  
(1)  
(2)  
FLGL  
FLGH  
PCH  
PCH  
PCM  
PCL  
: 4 high-order bits of PC  
: 8 middle-order bits of PC  
: 8 low-order bits of PC  
[SP]  
Completed saving  
registers in four  
operations.  
FLGH : 4 high-order bits of FLG  
FLGL : 8 low-order bits of FLG  
NOTE:  
1. [SP] indicates the initial value of the SP when an interrupt request is acknowledged.  
After registers are saved, the SP content is [SP] minus 4. When executing software number 32 to 63  
INT instructions, this SP is specified by the U flag. Otherwise it is ISP.  
Figure 12.8  
Register Saving Operation  
Rev.1.30 Apr 14, 2006 Page 82 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.6.8 Returning from an Interrupt Routine  
When the REIT instruction is executed at the end of an interrupt routine, the FLG register and PC,  
which have been saved to the stack, are automatically restored. The program, that was running  
before the interrupt request was acknowledged, starts running again.  
Restore registers saved by a program in an interrupt routine using the POPM instruction or others  
before executing the REIT instruction.  
12.1.6.9 Interrupt Priority  
If two or more interrupt requests are generated while a single instruction is being executed, the  
interrupt with the higher priority is acknowledged.  
Set bits ILVL2 to ILVL0 to select the desired priority level for maskable interrupts (peripheral  
functions). However, if two or more maskable interrupts have the same priority level, their interrupt  
priority is resolved by hardware, and the higher priority interrupts acknowledged.  
The priority levels of special interrupts, such as reset (reset has the highest priority) and watchdog  
timer, are set by hardware. Figure 12.9 shows the Priority Levels of Hardware Interrupts.  
The interrupt priority does not affect software interrupts. The MCU jumps to the interrupt routine  
when the instruction is executed.  
Reset  
High  
Address break  
Watchdog timer  
Oscillation stop detection  
Voltage monitor 2  
Peripheral function  
Single step  
Address match  
Low  
Figure 12.9  
Priority Levels of Hardware Interrupts  
Rev.1.30 Apr 14, 2006 Page 83 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.1.6.10 Interrupt Priority Judgement Circuit  
The interrupt priority judgement circuit selects the highest priority interrupt, as shown in Figure 12.10.  
Priority level of each interrupt  
Highest  
Level 0 (default value)  
Compare 0  
INT3  
Timer Z  
Timer X  
INT0  
Timer C  
INT1  
UART1 receive  
UART0 receive  
Compare 1  
Comparator conversion  
UART1 transmit  
UART0 transmit  
Priority of peripheral function interrupts  
(if priority levels are same)  
Key input  
IPL  
Lowest  
Interrupt request level  
judgment output signal  
Interrupt  
request  
acknowledged  
I flag  
Address match  
Watchdog timer  
Oscillation stop detection  
Voltage monitor 2  
Figure 12.10 Interrupt Priority Level Judgement Circuit  
Rev.1.30 Apr 14, 2006 Page 84 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.2 INT Interrupt  
12.2.1 INT0 Interrupt  
The INT0 interrupt is generated by an INT0 input. When using the INT0 interrupt, the INT0EN bit in  
the INTEN register is set to 1 (enable). The edge polarity is selected using the INT0PL bit in the  
INTEN register and the POL bit in the INT0IC register.  
Inputs can be passed through a digital filter with three different sampling clocks.  
The INT0 pin is shared with the external trigger input pin of timer Z.  
Figure 12.11 shows Registers INTEN and INT0F.  
External Input Enable Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0 0  
Symbol  
INTEN  
Address  
0096h  
After Reset  
00h  
Bit Symbol  
Bit Name  
INT0 input enable bit(1)  
Function  
RW  
RW  
____  
0 : Disable  
1 : Enable  
INT0EN  
INT0PL  
____  
INT0 input polarity select bit(2, 3)  
0 : One edge  
1 : Both edges  
RW  
RW  
(b7-b2)  
Reserved bits  
Set to 0.  
NOTES:  
1. Set the INT0EN bit w hile the INOSTG bit in the PUM register is set to 0 (one-shot trigger disabled).  
2. When setting the INT0PL bit to 1 (both edges), set the POL bit in the INT0IC register to 0 (selects falling edge).  
3. The IR bit in the INT0IC register may be set to 1 (requests interrupt) w hen the INT0PL bit is rew ritten. Refer to  
12.5.5  
.
Changing Interrupt Sources  
______  
INT0 Input Filter Select Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
Address  
001Eh  
After Reset  
00h  
INT0F  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
_____  
b1 b0  
INT0 input filter select bits  
0 0 : No filter  
INT0F0  
INT0F1  
0 1 : Filter w ith f1 sampling  
1 0 : Filter w ith f8 sampling  
1 1 : Filter w ith f32 sampling  
RW  
(b2)  
Reserved bit  
Set to 0.  
RW  
(b7-b3)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
Figure 12.11 Registers INTEN and INT0F  
Rev.1.30 Apr 14, 2006 Page 85 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.2.2 INT0 Input Filter  
The INT0 input contains a digital filter. The sampling clock is selected by bits INT0F1 to INT0F0 in  
the INT0F register. The INT0 level is sampled every sampling clock cycle and if the sampled input  
level matches three times, the IR bit in the INT0IC register is set to 1 (interrupt requested).  
Figure 12.12 shows the Configuration of INT0 Input Filter. Figure 12.13 shows an Operating  
Example of INT0 Input Filter.  
INT0F1 to INT0F0  
= 01b  
f1  
Sampling clock  
= 10b  
= 11b  
f8  
INT0EN  
f32  
Other than  
INT0F1 to INT0F0  
= 00b  
INT0  
INT0 interrupt  
Digital filter  
(input level  
matches 3x)  
Port P4_5  
direction  
register  
= 00b  
INT0PL = 0  
INT0PL = 1  
Both edges  
detection  
circuit  
INT0F0, INT0F1: Bits in INT0F register  
INT0EN, INT0PL: Bits in INTEN register  
Figure 12.12 Configuration of INT0 Input Filter  
INT0 input  
Sampling  
timing  
IR bit in  
INT0IC register  
Set to 0 by a program  
This is an operating example in which bits INT0F1 to INT0F0 in the INT0F  
register are set to 01b, 10b, or 11b (digital filter enabled).  
Figure 12.13 Operating Example of INT0 Input Filter  
Rev.1.30 Apr 14, 2006 Page 86 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.2.3 INT1 Interrupt  
The INT1 interrupt is generated by an INT1 input. The edge polarity is selected by the R0EDG bit in  
the TXMR register.  
When the CNTRSEL bit in the UCON register is set to 0, the INT10 pin becomes the INT1 input pin.  
When the CNTRSEL bit is set to 1, the INT11 pin becomes the INT1 input pin.  
The INT10 pin is shared with the CNTR00 pin and the INT11 pin is shared with the CNTR01 pin.  
Figure 12.14 shows the TXMR Register when INT1 Interrupt is Used.  
Timer X Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
TXMR  
Address  
008Bh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Operating mode select bits  
0, 1(1)  
Function  
RW  
RW  
b1 b0  
0 0 : Timer mode or pulse period measurement  
mode  
TXMOD0  
TXMOD1  
0 1 : Do not set.  
1 0 : Event count mode  
1 1 : Pulse w idth measurement mode  
RW  
____  
0 : Rising edge  
1 : Falling edge  
INT1/CNTR0 polarity sw itch  
bit(2)  
R0EDG  
TXS  
RW  
RW  
RW  
Timer X count start flag(3)  
0 : Stops counting.  
1 : Starts counting.  
______  
Function varies depending on operating mode.  
P3_7/CNTR0 select bit  
TXOCNT  
Operating mode select  
bit 2  
0 : Other than pulse period measurement mode  
1 : Pulse period measurement mode  
TXMOD2  
RW  
Active edge reception flag  
Timer X underflow flag  
Function varies depending on operating mode.  
Function varies depending on operating mode.  
TXEDG  
TXUND  
RW  
RW  
NOTES:  
____  
1. When using INT1 interrupt, select modes other than pulse output mode.  
2. The IR bit in the INT1IC register may be set to 1 (requests interrupt) w hen the R0EDG bit is rew ritten. Refer to  
12.5.5  
.
Changing Interrupt Sources  
3. Ref er to  
for precautions regarding the TXS bit.  
14.1.6 Notes on Timer X  
Figure 12.14 TXMR Register when INT1 Interrupt is Used  
Rev.1.30 Apr 14, 2006 Page 87 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.2.4 INT3 Interrupt  
The INT3 interrupt is generated by an INT3 input. Set the TCC07 bit in the TCC0 register to 0 (INT3).  
When the TCC06 bit in the TCC0 register is set to 0, an INT3 interrupt request is generated in  
synchronization with the count source of timer C. If the TCC06 bit is set to 1, the INT3 interrupt  
request is generated when an INT3 input occurs.  
The INT3 input contains a digital filter. The INT3 level is sampled every sampling clock cycle and if  
the sampled input level matches three times, the IR bit in the INT3IC register is set to 1 (interrupt  
requested). The sampling clock is selected by bits TCC11 to TCC10 in the TCC1 register. If filter is  
selected, the interrupt request is generated in synchronization with the sampling clock, even if the  
TCC06 bit is set to 1. The P3_3 bit in the P3 register indicates the value before filtering regardless of  
the contents set in bits TCC11 to TCC10.  
The INT3 pin is used with the TCIN pin.  
If the TCC07 bit is set to 1 (fRING128), the INT3 interrupt is generated by the fRING128 clock. The  
IR bit in the INT3IC register is set to 1 (interrupt requested) every fRING128 clock cycle or every half  
fRING128 clock cycle.  
Figure 12.15 shows the TCC0 Register and Figure 12.16 shows the TCC1 Register.  
Timer C Control Register 0  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
TCC0  
Address  
009Ah  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Timer C count start bit  
0 : Stops counting.  
1 : Starts counting.  
TCC00  
TCC01  
Timer C count source select  
bits(1)  
b2 b1  
0 0 : f1  
0 1 : f8  
1 0 : f32  
1 1 : fRING-fast  
RW  
RW  
RW  
TCC02  
TCC03  
TCC04  
_____  
b4 b3  
INT3 interrupt and capture  
0 0 : Rising edge  
0 1 : Falling edge  
1 0 : Both edges  
1 1 : Do not set.  
polarity select bits(1, 2)  
RW  
RW  
(b5)  
Reserved bit  
Set to 0.  
____  
____  
INT3 interrupt request  
0 : INT3 interrupt is generated in  
synchronization w ith timer C count source.  
generation timing select  
bit(2, 3)  
____  
TCC06  
RW  
RW  
1 : INT3 interrupt is generated w hen  
____  
INT3 interrupt is input.(4)  
____  
____  
INT3 interrupt and capture  
input sw itch bit(1, 2)  
0 : INT3  
TCC07  
1 : fRING128  
NOTES:  
1. Change this bit w hen the TCC00 bit is set to 0 (count stops).  
2. The IR bit in the INT3IC register may be set to 1 (requests interrupt) w hen the TCC03, TCC04, TCC06, or TCC07 bit is  
rew ritten. Refer to  
.
12.5.5 Changing Interrupt Sources  
____  
3. When the TCC13 bit is set to 1 (output compare mode) and an INT3 interrupt is input, regardless of the setting  
value of the TCC06 bit, an interr_u_p__t request is generated.  
____  
4. When using the INT3 filter, the INT3 interrupt is generated in synchronization w ith the clock for the digital filter.  
Figure 12.15 TCC0 Register  
Rev.1.30 Apr 14, 2006 Page 88 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
Timer C Control Register 1  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
Address  
009Bh  
After Reset  
00h  
TCC1  
Bit Symbol  
Bit Name  
INT3 filter select bits(1)  
Function  
RW  
RW  
____  
b1b0  
TCC10  
TCC11  
0 0 : No filter  
0 1 : Filter w ith f1 sampling  
1 0 : Filter w ith f8 sampling  
1 1 : Filter w ith f32 sampling  
RW  
RW  
RW  
Timer C counter reload select 0 : No reload  
bit(2, 3)  
1 : Set TC register to 0000h w hen compare 1  
is matched.  
TCC12  
TCC13  
Compare 0/capture select bit 0 : Capture select (input capture mode)(2)  
1 : Compare 0 output select  
(output compare mode)  
Compare 0 output mode select  
bits(3)  
b5 b4  
0 0 : CMPoutput remains unchanged even  
w hen compare 0 is matched.  
0 1 : CMPoutput is reversed w hen compare  
0 signal is matched.  
TCC14  
TCC15  
TCC16  
TCC17  
RW  
RW  
RW  
RW  
1 0 : CMPoutput is set to “L” w hen compare  
0 signal is matched.  
1 1 : CMPoutput is set to “H” w hen compare  
0 signal is matched.  
Compare 1 output mode select  
bits(3)  
b7 b6  
0 0 : CMPoutput remains unchanged even  
w hen compare 1 is matched.  
0 1 : CMPoutput is reversed w hen compare  
1 signal is matched.  
1 0 : CMPoutput is set to “L” w hen compare  
1 signal is matched.  
1 1 : CMPoutput is set to “H” w hen compare  
1 signal is matched.  
NOTES:  
1.  
____  
When the same value fromthe INT3 pin is sampled three times continuously, the input is determined.  
2. When the TCC00 bit in the TCC0 register is set to 0 (count stops), rew rite the TCC13 bit.  
3. When the TCC13 bit is set to 0 (input capture mode), set bits TCC12 and TCC14 to TCC17 to 0.  
Figure 12.16 TCC1 Register  
Rev.1.30 Apr 14, 2006 Page 89 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.3 Key Input Interrupt  
A key input interrupt request is generated by one of the input edges of pins K10 to K13. The key input  
interrupt can be used as a key-on wake-up function to exit wait or stop mode.  
The KIiEN (i = 0 to 3) bit in the KIEN register can select whether or not the pins are used as KIi input.  
The KIiPL bit in the KIEN register can select the input polarity.  
When “L” is input to the KIi pin, which sets the KIiPL bit to 0 (falling edge), input to the other pins K10 to  
K13 is not detected as interrupts. Also, when “H” is input to the KIi pin, which sets the KIiPL bit to 1  
(rising edge), input to the other pins K10 to K13 is not detected as interrupts.  
Figure 12.17 shows a Block Diagram of Key Input Interrupt.  
PU02 bit in PUR0 register  
KUPIC register  
Pull-up  
transistor  
PD1_3 bit in PD1 register  
KI3EN bit  
PD1_3 bit  
KI3PL = 0  
KI3  
KI3PL = 1  
KI2EN bit  
Pull-up  
transistor  
PD1_2 bit  
KI2PL = 0  
Interrupt control  
circuit  
Key input interrupt  
request  
KI2  
KI1  
KI0  
KI2PL = 1  
KI1EN bit  
PD1_1 bit  
Pull-up  
transistor  
KI1PL = 0  
KI1PL = 1  
KI0EN, KI1EN, KI2EN, KI3EN,  
KI0PL, KI1PL, KI2PL, KI3PL: Bits in KIEN register  
PD1_0, PD1_1, PD1_2, PD1_3: Bits in PD1 register  
KI0EN bit  
PD1_0 bit  
Pull-up  
transistor  
KI0PL = 0  
KI0PL = 1  
Figure 12.17 Block Diagram of Key Input Interrupt  
Rev.1.30 Apr 14, 2006 Page 90 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
Key Input Enable Register(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
KIEN  
Address  
0098h  
After Reset  
00h  
Bit Symbol  
Bit Name  
KI0 input enable bit  
Function  
RW  
RW  
0 : Disable  
1 : Enable  
KI0EN  
KI0PL  
KI1EN  
KI1PL  
KI2EN  
KI2PL  
KI3EN  
KI0 input polarity select bit  
KI1 input enable bit  
0 : Falling edge  
1 : Rising edge  
RW  
RW  
RW  
RW  
RW  
RW  
RW  
0 : Disable  
1 : Enable  
KI1 input polarity select bit  
KI2 input enable bit  
0 : Falling edge  
1 : Rising edge  
0 : Disable  
1 : Enable  
KI2 input polarity select bit  
KI3 input enable bit  
0 : Falling edge  
1 : Rising edge  
0 : Disable  
1 : Enable  
KI3 input polarity select bit  
0 : Falling edge  
1 : Rising edge  
KI3PL  
NOTE:  
1. The IR bit in the KUPIC register may be set to 1 (requests interrupt) w hen the KIEN register is rew ritten.  
Ref er to  
12.5.5 Changing Interrupt Sources.  
Figure 12.18 KIEN Register  
Rev.1.30 Apr 14, 2006 Page 91 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.4 Address Match Interrupt  
An address match interrupt request is generated immediately before execution of the instruction at the  
address indicated by the RMADi register (i = 0, 1). This interrupt is used as a break function by the  
debugger. When using the on-chip debugger, do not set an address match interrupt (registers of AIER,  
RMAD0, and RMAD1 and fixed vector tables) in a user system.  
Set the starting address of any instruction in the RMADi register. Bits AIER0 and AIER1 in the AIER0  
register can be used to select enable or disable of the interrupt. The I flag and IPL do not affect the  
address match interrupt.  
The value of the PC (Refer to 12.1.6.7 Saving a Register for the value of the PC) which is saved to the  
stack when an address match interrupt is acknowledged varies depending on the instruction at the  
address indicated by the RMADi register. (The appropriate return address is not saved on the stack.)  
When returning from the address match interrupt, return by one of the following means:  
Change the content of the stack and use the REIT instruction.  
Use an instruction such as POP to restore the stack as it was before the interrupt request was  
acknowledged. Then use a jump instruction.  
Table 12.6 lists the Values of PC Saved to Stack when Address Match Interrupt is Acknowledged.  
Figure 12.19 shows Registers AIER and RMAD0 to RMAD1.  
Table 12.6  
Values of PC Saved to Stack when Address Match Interrupt is Acknowledged  
Address Indicated by RMADi Register (i = 0, 1)  
(1)  
PC Value Saved  
• 16-bit operation code instruction  
• Instruction shown below among 8-bit operation code instructions  
Address indicated by  
RMADi register + 2  
ADD.B:S  
#IMM8,dest SUB.B:S #IMM8,dest AND.B:S #IMM8,dest  
OR.B:S  
#IMM8,dest MOV.B:S #IMM8,dest STZ.B:S #IMM8,dest  
STNZ.B:S #IMM8,dest STZX.B:S #IMM81,#IMM82,dest  
CMP.B:S  
JMPS  
MOV.B:S  
#IMM8,dest PUSHM src  
#IMM8 JSRS #IMM8  
#IMM,dest (however, dest = A0 or A1)  
POPM  
dest  
• Instructions other than the above  
Address indicated by  
RMADi register + 1  
NOTE:  
1. Refer to the 12.1.6.7 Saving a Register for the PC value saved.  
Table 12.7  
Correspondence Between Address Match Interrupt Sources and Associated Registers  
Address Match Interrupt Source Address Match Interrupt Enable Bit Address Match Interrupt Register  
Address match interrupt 0  
Address match interrupt 1  
AIER0  
AIER1  
RMAD0  
RMAD1  
Rev.1.30 Apr 14, 2006 Page 92 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
Address Match Interrupt Enable Register  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
AIER  
Address  
0009h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Address match interrupt 0 enable bit 0 : Disable  
1 : Enable  
AIER0  
AIER1  
Address match interrupt 1 enable bit 0 : Disable  
1 : Enable  
RW  
(b7-b2)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
Address Match Interrupt Register i (i = 0, 1)  
(b23)  
b7  
(b19)  
b3  
(b16) (b15)  
b0 b7  
(b8)  
b0 b7  
b0  
Symbol  
RMAD0  
RMAD1  
Address  
0012h-0010h  
0016h-0014h  
After Reset  
X00000h  
X00000h  
Function  
Setting Range  
RW  
Address setting register for address match interrupt  
00000h to FFFFFh  
RW  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
(b7-b4)  
Figure 12.19  
Registers AIER and RMAD0 to RMAD1  
Rev.1.30 Apr 14, 2006 Page 93 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.5 Notes on Interrupts  
12.5.1 Reading Address 00000h  
Do not read address 00000h by a program. When a maskable interrupt request is acknowledged, the  
CPU reads interrupt information (interrupt number and interrupt request level) from 00000h in the  
interrupt sequence. At this time, the acknowledged interrupt IR bit is set to 0.  
If address 00000h is read by a program, the IR bit for the interrupt which has the highest priority  
among the enabled interrupts is set to 0. This may cause the interrupt to be canceled, or an  
unexpected interrupt to be generated.  
12.5.2 SP Setting  
Set any value in the SP before an interrupt is acknowledged. The SP is set to 0000h after reset.  
Therefore, if an interrupt is acknowledged before setting a value in the SP, the program may run out  
of control.  
12.5.3 External Interrupt and Key Input Interrupt  
Either “L” level or “H” level of at least 250 ns width is necessary for the signal input to pins INT0 to  
INT3 and pins KI0 to KI3 regardless of the CPU clock.  
12.5.4 Watchdog Timer Interrupt  
Reset the watchdog timer after a watchdog timer interrupt is generated.  
Rev.1.30 Apr 14, 2006 Page 94 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.5.5 Changing Interrupt Sources  
The IR bit in the interrupt control register may be set to 1 (interrupt requested) when the interrupt  
source changes. When using an interrupt, set the IR bit to 0 (no interrupt requested) after changing  
the interrupt source.  
In addition, changes of interrupt sources include all factors that change the interrupt sources  
assigned to individual software interrupt numbers, polarities, and timing. Therefore, if a mode change  
of a peripheral function involves interrupt sources, edge polarities, and timing, set the IR bit to 0 (no  
interrupt requested) after the change. Refer to the individual peripheral function for its related  
interrupts.  
Figure 12.20 shows an Example of Procedure for Changing Interrupt Sources.  
Interrupt source change  
Disable interrupts(2, 3)  
Change interrupt source (including mode  
of peripheral function)  
Set the IR bit to 0 (interrupt not requested) using  
the MOV instruction(3)  
Enable interrupts(2, 3)  
Change completed  
IR bit: The interrupt control register bit of an  
interrupt whose source is changed.  
NOTES:  
1. Execute the above settings individually. Do not execute  
two or more settings at once (by one instruction).  
2. Use the I flag for the INTi (i = 0 to 3) interrupts.  
To prevent interrupt requests from being generated when  
using peripheral function interrupts other than the INTi  
interrupt, disable the peripheral function before changing  
the interrupt source. In this case, use the I flag if all  
maskable interrupts can be disabled. If all maskable  
interrupts cannot be disabled, use bits ILVL0 to ILVL2 of  
the interrupt whose source is changed.  
3. Refer to 12.5.6 Changing Interrupt Control Register  
Contents for the instructions to be used and usage notes.  
Figure 12.20 Example of Procedure for Changing Interrupt Sources  
Rev.1.30 Apr 14, 2006 Page 95 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
12.Interrupts  
12.5.6 Changing Interrupt Control Register Contents  
(a) The contents of an interrupt control register can only be changed while no interrupt requests  
corresponding to that register are generated. If interrupt requests may be generated, disable  
interrupts before changing the interrupt control register contents.  
(b) When changing the contents of an interrupt control register after disabling interrupts, be  
careful to choose appropriate instructions.  
Changing any bit other than IR bit  
If an interrupt request corresponding to a register is generated while executing the instruction,  
the IR bit may not be set to 1 (interrupt requested), and the interrupt request may be ignored.  
If this causes a problem, use the following instructions to change the register: AND, OR,  
BCLR, BSET  
Changing IR bit  
If the IR bit is set to 0 (interrupt not requested), it may not be set to 0 depending on the  
instruction used. Therefore, use the MOV instruction to set the IR bit to 0.  
(c) When disabling interrupts using the I flag, set the I flag as shown in the sample programs  
below. Refer to (b) regarding changing the contents of interrupt control registers by the sample  
programs.  
Sample programs 1 to 3 are for preventing the I flag from being set to 1 (interrupts enabled) before  
the interrupt control register is changed for reasons of the internal bus or the instruction queue buffer.  
Example 1: Use NOP instructions to prevent I flag from being set to 1 before interrupt control  
register is changed  
INT_SWITCH1:  
FCLR  
I
; Disable interrupts  
AND.B #00H,0056H  
NOP  
NOP  
; Set TXIC register to 00h  
;
FSET  
I
; Enable interrupts  
Example 2: Use dummy read to delay FSET instruction  
INT_SWITCH2:  
FCLR  
AND.B #00H,0056H  
MOV.W MEM,R0  
I
; Disable interrupts  
; Set TXIC register to 00h  
; Dummy read  
FSET  
I
; Enable interrupts  
Example 3: Use POPC instruction to change I flag  
INT_SWITCH3:  
PUSHC FLG  
FCLR  
I
; Disable interrupts  
AND.B #00H,0056H  
POPC FLG  
; Set TXIC register to 00h  
; Enable interrupts  
Rev.1.30 Apr 14, 2006 Page 96 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
13. Watchdog Timer  
13. Watchdog Timer  
The watchdog timer is a function that detects when a program is out of control. Use of the watchdog timer is  
recommended to improve the reliability of the system. The watchdog timer contains a 15-bit counter and  
allows selection of count source protection mode enable or disable. Table 13.1 lists information on the  
Count Source Protection Mode.  
Refer to 5.5 Watchdog Timer Reset for details on the watchdog timer reset.  
Figure 13.1 shows the Block Diagram of Watchdog Timer and Figures 13.2 to 13.3 show Registers OFS,  
WDC, WDTR, WDTS, and CSPR.  
Table 13.1  
Count Source Protection Mode  
Count Source Protection Mode  
Disabled  
Count Source Protection Mode  
Enabled  
Item  
Count source  
CPU clock  
Low-speed on-chip oscillator  
clock  
Count operation  
Decrement  
Reset condition of watchdog timer Reset  
Write 00h to the WDTR register before writing FFh  
underflow  
Count start condition  
Either of the following can be selected  
After reset, count starts automatically  
Count starts by writing to WDTS register  
Count stop condition  
Stop mode, wait mode  
Watchdog timer interrupt or  
watchdog timer reset  
None  
Operation at time of underflow  
Watchdog timer reset  
Prescaler  
WDC7 = 0  
1/16  
CSPRO = 0  
PM12 = 0  
Watchdog timer  
interrupt request  
CPU clock  
1/128  
Watchdog timer  
WDC7 = 1  
PM12 = 1  
Watchdog  
timer reset  
fRING-S  
CSPRO = 1  
Set to  
7FFFh(1)  
Write to WDTR register  
Internal  
reset signal  
CSPRO: Bit in CSPR register  
WDC7: Bit in WDC register  
PM12: Bit in PM1 register  
NOTE:  
1. When the CSPRO bit is set to 1 (count source protection mode enabled), 0FFFh is set.  
Figure 13.1  
Block Diagram of Watchdog Timer  
Rev.1.30 Apr 14, 2006 Page 97 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
13. Watchdog Timer  
Option Function Select Register(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
1 1 1  
1
Symbol  
OFS  
Address  
0FFFFh  
Before Shipment  
FFh(2)  
Bit Symbol  
Bit Name  
Function  
RW  
Watchdog timer start  
select bit  
0 : Starts w atchdog timer automatically after reset.  
1 : Watchdog timer is inactive after reset.  
WDTON  
RW  
RW  
RW  
RW  
RW  
(b1)  
Reserved bit  
Set to 1.  
ROM code protect  
disabled bit  
0 : ROM code protect disabled  
1 : ROMCP1 enabled  
ROMCR  
ROM code protect bit  
0 : ROM code protect enabled  
1 : ROM code protect disabled  
ROMCP1  
(b6-b4)  
Reserved bits  
Set to 1.  
Count source protect  
0 : Count source protect mode enabled after reset  
mode after reset select 1 : Count source protect mode disabled after reset  
bit  
CSPROINI  
RW  
NOTES:  
1. The OFS register is on the flash memory. Write to the OFS register w ith a program.  
2. If the block including the OFS register is erased, FFh is set to the OFS register.  
Watchdog Timer Control Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
Symbol  
WDC  
Bit Symbol  
Address  
000Fh  
After Reset  
00011111b  
Function  
Bit Name  
RW  
RO  
(b4-b0)  
High-order bits of w atchdog timer  
(b5)  
Reserved bit  
Set to 0.  
Set to 0.  
RW  
RW  
RW  
(b6)  
Reserved bit  
Prescaler select bit  
0 : Divided by 16  
1 : Divided by 128  
WDC7  
Figure 13.2  
Registers OFS and WDC  
Rev.1.30 Apr 14, 2006 Page 98 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Watchdog Timer Reset Register  
13. Watchdog Timer  
b7  
b0  
Symbol  
WDTR  
Address  
000Dh  
After Reset  
Undefined  
Function  
When 00h is w ritten before w riting FFh, the w atchdog timer is reset.(1)  
RW  
The default value of the w atchdog timer is 7FFFh w hen count source protection mode is  
disabled and 0FFFh w hen count source protection mode is enabled.(2)  
WO  
NOTES:  
1. Do not generate an interrupt betw een w hen 00h and FFh are w ritten.  
2. When the CSPRO bit in the CSPR register is set to 1 (count source protection mode enabled), 0FFFh is set in the  
w atchdog timer.  
Watchdog Timer Start Register  
b7  
b0  
Symbol  
WDTS  
Address  
000Eh  
After Reset  
Undefined  
Function  
The w atchdog timer starts counting after a w rite instruction to this register.  
RW  
WO  
Count Source Protection Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0 0 0  
Symbol  
CSPR  
Address  
001Ch  
After Reset(1)  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b6-b0)  
Reserved bits  
Set to 0.  
Count source protection mode 0 : Count source protection mode disabled  
select bit(2)  
1 : Count source protection mode enabled  
CSPRO  
RW  
NOTES:  
1. When 0 is w ritten to the CSPROINI bit in the OFS register, the value after reset is 10000000b.  
2. Write 0 before w riting 1 to set the CSPRO bit to 1. 0 cannot be set by a program.  
Figure 13.3  
Registers WDTR, WDTS, and CSPR  
Rev.1.30 Apr 14, 2006 Page 99 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
13. Watchdog Timer  
13.1 Count Source Protection Mode Disabled  
The count source of the watchdog timer is the CPU clock when count source protection mode is  
disabled. Table 13.2 lists the Watchdog Timer Specifications (with Count Source Protection Mode  
Disabled).  
Table 13.2  
Watchdog Timer Specifications (with Count Source Protection Mode Disabled)  
Item Specification  
Count source  
Count operation  
Period  
CPU clock  
Decrement  
(1)  
Division ratio of prescaler (n) × count value of watchdog timer (32768)  
CPU clock  
n: 16 or 128 (selected by WDC7 bit in WDC register)  
Example: When the CPU clock frequency is 16 MHz and prescaler  
divides by 16, the period is approximately 32.8 ms.  
(2)  
Count start conditions  
The WDTON bit in the OFS register (0FFFFh) selects the operation of  
the watchdog timer after a reset.  
• When the WDTON bit is set to 1 (watchdog timer is in stop state after  
reset).  
The watchdog timer and prescaler stop after a reset and the count  
starts when the WDTS register is written to.  
• When the WDTON bit is set to 0 (watchdog timer starts automatically  
after exiting).  
The watchdog timer and prescaler start counting automatically after  
reset.  
Reset condition of watchdog  
timer  
• Reset  
• Write 00h to the WDTR register before writing FFh.  
• Underflow  
Count stop condition  
Stop and wait modes (inherit the count from the held value after exiting  
modes)  
Operation at time of underflow • When the PM12 bit in the PM1 register is set to 0.  
Watchdog timer interrupt  
• When the PM12 bit in the PM1 register is set to 1.  
Watchdog timer reset (Refer to 5.5 Watchdog Timer Reset.)  
NOTES:  
1. The watchdog timer is reset when 00h is written to the WDTR register before FFh. The prescaler is  
reset after the MCU is reset. Some errors in the period of the watchdog timer may be caused by the  
prescaler.  
2. The WDTON bit cannot be changed by a program. To set the WDTON bit, write 0 to bit 0 of address  
0FFFFh with a flash programmer.  
Rev.1.30 Apr 14, 2006 Page 100 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
13. Watchdog Timer  
13.2 Count Source Protection Mode Enabled  
The count source of the watchdog timer is the low-speed on-chip oscillator clock when count source  
protection mode is enabled. If the CPU clock stops when a program is out of control, the clock can still be  
supplied to the watchdog timer. Table 13.3 lists the Watchdog Timer Specifications (with Count Source  
Protection Mode Enabled).  
Table 13.3  
Watchdog Timer Specifications (with Count Source Protection Mode Enabled)  
Item Specification  
Low-speed on-chip oscillator clock  
Count source  
Count operation  
Period  
Decrement  
Count value of watchdog timer (4096)  
Low-speed on-chip oscillator clock  
Example: Period is approximately 32.8 ms when the low-speed on-chip  
oscillator clock frequency is 125 kHz  
(1)  
Count start conditions  
The WDTON bit in the OFS register (0FFFFh) selects the operation of  
the watchdog timer after a reset.  
• When the WDTON bit is set to 1 (watchdog timer is in stop state after  
reset).  
The watchdog timer and prescaler stop after a reset and the count starts  
when the WDTS register is written to.  
• When the WDTON bit is set to 0 (watchdog timer starts automatically  
after reset).  
The watchdog timer and prescaler start counting automatically after a  
reset.  
Reset condition of watchdog • Reset  
• Write 00h to the WDTR register before writing FFh.  
timer  
• Underflow  
Count stop condition  
None (The count does not stop in wait mode after the count starts. The  
MCU does not enter stop mode.)  
Operation at time of  
underflow  
Watchdog timer reset (Refer to 5.5 Watchdog Timer Reset.)  
Registers, bits  
• When setting the CSPPRO bit in the CSPR register to 1 (count source  
(2)  
protection mode is enabled) , the following are set automatically  
- Set 0FFFh to the watchdog timer  
- Set the CM14 bit in the CM1 register to 0 (low-speed on-chip oscillator  
on)  
- Set the PM12 bit in the PM1 register to 1 (The watchdog timer is reset  
when watchdog timer underflows.)  
• The following conditions apply in count source protection mode  
- Writing to the CM10 bit in the CM1 register is disabled. (It remains  
unchanged even if it is set to 1. The MCU does not enter stop mode.)  
- Writing to the CM14 bit in the CM1 register is disabled. (It remains  
unchanged even if it is set to 1. The low-speed on-chip oscillator does  
not stop.)  
NOTES:  
1. The WDTON bit cannot be changed by a program. To set the WDTON bit, write 0 to bit 0 of address  
0FFFFh with a flash programmer.  
2. Even if 0 is written to the CSPROINI bit in the OFS register, the CSPRO bit is set to 1. The  
CSPROINI bit cannot be changed by a program. To set the CSPROINI bit, write 0 to bit 7 of address  
0FFFFh with a flash programmer.  
Rev.1.30 Apr 14, 2006 Page 101 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14. Timers  
The MCU has two 8-bit timers with 8-bit prescalers, and a 16-bit timer. The two 8-bit timers with 8-bit  
prescalers are timer X and timer Z. These timers contain a reload register to store the default value of the  
counter. The 16-bit timer is timer C, and has input capture and output compare functions. All the timers  
operate independently. The count source for each timer is the operating clock that regulates the timing of  
timer operations such as counting and reloading.  
Table 14.1 lists Functional Comparison of Timers.  
Table 14.1  
Functional Comparison of Timers  
Item Timer X  
8-bit timer with 8-bit 8-bit timer with 8-bit 16-bit free-run timer  
Timer Z  
Timer C  
Configuration  
prescaler (with  
reload register)  
Decrement  
prescaler (with  
reload register)  
Decrement  
(with input capture  
and output compare)  
Increment  
Count  
Count sources  
• f1  
• f2  
• f8  
• f1  
• f2  
• f8  
• f1  
• f8  
• f32  
• fRING  
• Timer X underflow • fRING-fast  
Function Timer mode  
Pulse output mode  
Event counter mode  
Provided  
Provided  
Provided  
Provided  
Not provided  
Not provided  
Not provided  
Not provided  
Not provided  
Not provided  
Not provided  
Pulse width measurement Provided  
mode  
Pulse period measurement Provided  
mode  
Not provided  
Provided  
Not provided  
Not provided  
Not provided  
Not provided  
Programmable waveform  
generation mode  
Not provided  
Programmable one-shot  
generation mode  
Not provided  
Not provided  
Provided  
Programmable wait one-  
shot generation mode  
Input capture mode  
Provided  
Not provided  
Not provided  
CNTR0  
Not provided  
Not provided  
Provided  
Provided  
TCIN  
Output compare mode  
Input pin  
INT0  
Output pin  
CNTR0  
CNTR0  
TZOUT  
CMP0_0 to CMP0_2  
CMP1_0 to CMP1_2  
Timer C interrupt  
INT3 interrupt  
Compare 0 interrupt  
Compare 1 interrupt  
Provided  
Related interrupt  
Timer stop  
Timer X interrupt  
INT1 interrupt  
Timer Z interrupt  
INT0 interrupt  
Provided  
Provided  
Rev.1.30 Apr 14, 2006 Page 102 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.1 Timer X  
Timer X is an 8-bit timer with an 8-bit prescaler.  
The prescaler and timer each consist of a reload register and counter. The reload register and counter  
are allocated at the same address, and can be accessed when accessing registers PREX and TX (refer  
to Tables 14.2 to 14.6 the Specifications of Each Modes).  
Figure 14.1 shows a Block Diagram of Timer X. Figures 14.2 and 14.3 show the registers associated  
with Timer X.  
Timer X has the following five operating modes:  
Timer mode:  
The timer counts the internal count source.  
Pulse output mode:  
The timer counts the internal count source and outputs pulses  
which invert the polarity by underflow of the timer.  
Event counter mode:  
The timer counts external pulses.  
Pulse width measurement mode: The timer measures the pulse width of an external pulse.  
Pulse period measurement mode: The timer measures the pulse period of an external pulse.  
Data bus  
TXCK1 to TXCK0  
TXMOD1 to TXMOD0  
= 00b  
Reload register  
Reload register  
f1  
f8  
fRING  
f2  
= 00b or 01b  
= 01b  
= 10b  
= 11b  
= 11b  
Counter  
Counter  
Timer X interrupt  
INT1 interrupt  
= 10b  
PREX register  
TX register  
CNTRSEL = 1  
TXS bit  
INT11/CNTR01  
INT10/CNTR00  
Polarity  
switching  
TXMOD1 to TXMOD0  
bits = 01b  
CNTRSEL = 0  
R0EDG = 1  
R0EDG = 0  
Q
Q
Toggle flip-flop  
CK  
CLR  
TXOCNT bit  
Write to TX register  
Bits TXMOD1 to TXMOD0 = 01b  
CNTR0  
TXMOD0 to TXMOD1, R0EDG, TXS, TXOCNT: Bits in TXMR register  
TXCK0 to TXCK1: Bits in TCSS register  
CNTRSEL: Bit in UCON register  
Figure 14.1  
Block Diagram of Timer X  
Rev.1.30 Apr 14, 2006 Page 103 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer X Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
Address  
008Bh  
After Reset  
00h  
TXMR  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Operating mode select bits 0, 1  
b1 b0  
0 0 : Timer mode or pulse period measurement  
mode  
0 1 : Pulse output mode  
1 0 : Event counter mode  
1 1 : Pulse w idth measurement mode  
TXMOD0  
TXMOD1  
RW  
____  
Function varies depending on operating mode.  
INT1/CNTR0 signal  
R0EDG  
TXS  
RW  
RW  
RW  
polarity sw itch bit(1)  
Timer X count start flag(2)  
0 : Stops counting.  
1 : Starts counting.  
______  
Function varies depending on operating mode.  
P3_7/CNTR0 select bit  
TXOCNT  
Operating mode select bit 2  
0 : Other than pulse period measurement mode  
1 : Pulse period measurement mode  
TXMOD2  
RW  
Active edge judgment flag  
Timer X underflow flag  
Function varies depending on operating mode.  
Function varies depending on operating mode.  
TXEDG  
TXUND  
RW  
RW  
NOTES:  
1. The IR bit in the INT1IC register may be set to 1 (requests interrupt) w hen the R0EDG bit is rew ritten.  
Ref er to  
.
12.5.5 Changing Interrupt Sources  
2. Ref er to  
for precautions regarding the TXS bit.  
14.1.6 Notes on Timer X  
Figure 14.2  
TXMR Register  
Rev.1.30 Apr 14, 2006 Page 104 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Prescaler X Register  
14.Timers  
b7  
b0  
Symbol  
PREX  
Address  
008Ch  
After Reset  
FFh  
Mode  
Timer mode  
Function  
Setting Range  
00h to FFh  
00h to FFh  
RW  
RW  
RW  
Counts internal count source.  
Counts internal count source.  
Counts input pulses from external clock.  
Pulse output mode  
Event counter mode  
00h to FFh  
00h to FFh  
00h to FFh  
RW  
RW  
RW  
Pulse w idth  
measurement mode  
Measures pulse w idth of input pulses from  
external clock (counts internal count source).  
Pulse period  
measurement mode  
Measures pulse period of input pulses from  
external clock (counts internal count source).  
Timer X Register  
b7  
b0  
Symbol  
TX  
Address  
008Dh  
After Reset  
FFh  
Function  
Setting Range  
RW  
RW  
Counts underflow of prescaler X  
00h to FFh  
Timer Count Source Setting Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
0 0  
Symbol  
TCSS  
Address  
008Eh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Timer X count source select  
bits(1)  
b1 b0  
TXCK0  
TXCK1  
0 0 : f1  
0 1 : f8  
1 0 : fRING  
1 1 : f2  
RW  
(b3-b2)  
Reserved bits  
Set to 0.  
RW  
RW  
Timer Z count source select  
bits(1)  
b5 b4  
TZCK0  
TZCK1  
0 0 : f1  
0 1 : f8  
1 0 : Selects timer X underflow .  
1 1 : f2  
RW  
RW  
(b7-b6)  
Reserved bits  
Set to 0.  
NOTE:  
1. Do not sw itch count sources during a count operation. Stop the timer count before sw itching count sources.  
Figure 14.3  
Registers PREX, TX, and TCSS  
Rev.1.30 Apr 14, 2006 Page 105 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.1.1 Timer Mode  
Timer mode, the internally generated count source is counted (refer to Table 14.2 Timer Mode  
Specifications). Figure 14.4 shows the TXMR Register in Timer Mode.  
Table 14.2  
Timer Mode Specifications  
Item  
Specification  
Count sources  
f1, f2, f8, fRING  
Count operations  
• Decrement  
• When the timer underflows, the contents of the reload register are reloaded  
and the count is continued.  
Divided ratio  
1/(n+1)(m+1) n: value set in PREX register, m: value set in TX register  
1 (count starts) is written to the TXS bit in the TXMR register.  
0 (count stops) is written to the TXS bit in the TXMR register.  
When timer X underflows [timer X interrupt].  
Count start condition  
Count stop condition  
Interrupt request  
generation timing  
INT10/CNTR00,  
INT11/CNTR01  
pin functions  
Programmable I/O port, or INT1 interrupt input  
Programmable I/O port  
CNTR0 pin function  
Read from timer  
Write to timer  
The count value can be read out by reading registers TX and PREX.  
• When registers TX and PREX are written while the count is stopped, values are  
written to both the reload register and counter.  
• When registers TX and PREX are written during the count, the value is written  
to each reload register of registers TX and PREX at the following count source  
input, the data is transferred to the counter at the second count source input,  
and the count re-starts at the third count source input.  
Timer X Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0  
0 0  
Symbol  
TXMR  
Address  
008Bh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Operating mode select bits 0, 1  
b1 b0  
TXMOD0  
TXMOD1  
R0EDG  
TXS  
0 0 : Timer mode or pulse period measurement  
mode  
RW  
RW  
____  
0 : Rising edge  
1 : Falling edge  
INT1/CNTR0 signal  
polarity sw itch bit(1, 2)  
Timer X count start flag(3)  
0 : Stops counting.  
1 : Starts counting.  
RW  
RW  
TXOCNT Set to 0 in timer mode.  
TXMOD2 Operating mode select bit 2  
0 : Other than pulse period measurement mode RW  
TXEDG  
TXUND  
Set to 0 in timer mode.  
Set to 0 in timer mode.  
RW  
RW  
NOTES:  
1. The IR bit in the INT1IC register may be set to 1 (requests interrupt) w hen the R0EDG bit is rew ritten.  
Ref er to  
.
12.5.5 Changing Interrupt Sources  
____  
2. This bit is used to select the polarity of INT1 interrupt in timer mode.  
3. Refer to for precautions regarding the TXS bit.  
14.1.6 Notes on Timer X  
Figure 14.4  
TXMR Register in Timer Mode  
Rev.1.30 Apr 14, 2006 Page 106 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.1.2 Pulse Output Mode  
In pulse output mode, the internally generated count source is counted, and a pulse with inverted  
polarity is output from the CNTR0 pin each time the timer underflows (refer to Table 14.3 Pulse  
Output Mode Specifications). Figure 14.5 shows the TXMR Register in Pulse Output Mode.  
Table 14.3  
Pulse Output Mode Specifications  
Item  
Specification  
Count sources  
f1, f2, f8, fRING  
Count operations  
• Decrement  
• When the timer underflows, the contents of the reload register are reloaded  
and the count is continued.  
Divided ratio  
1/(n+1)(m+1) n: value set in PREX register, m: value set in TX register  
1 (count starts) is written to the TXS bit in the TXMR register.  
0 (count stops) is written to the TXS bit in the TXMR register.  
When timer X underflows [timer X interrupt].  
Count start condition  
Count stop condition  
Interrupt request  
generation timing  
Pulse output  
INT10/CNTR00  
pin function  
Programmable I/O port, or inverted output of CNTR0  
CNTR0 pin function  
The count value can be read out by reading registers TX and PREX.  
Read from timer  
Write to timer  
• When registers TX and PREX are written while the count is stopped, values  
are written to both the reload register and counter.  
• When registers TX and PREX are written during the count, the value is written  
to each reload register of registers TX and PREX at the following count source  
input, the data is transferred to the counter at the second count source input,  
and the count re-starts at the third count source input.  
Select functions  
• INT1/CNTR0 signal polarity switch function  
(1)  
The R0EDG bit can select the polarity level when the pulse output starts.  
• Inverted pulse output function  
The pulse which inverts the polarity of the CNTR0 output can be output from  
the CNTR0 pin (selected by TXOCNT bit).  
NOTE:  
1. The level of the output pulse becomes the level when the pulse output starts when the TX register is  
written to.  
Rev.1.30 Apr 14, 2006 Page 107 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer X Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0  
0 1  
Symbol  
TXMR  
Address  
008Bh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Operating mode select bits 0, 1  
b1 b0  
TXMOD0  
TXMOD1  
R0EDG  
TXS  
0 1 : Pulse output mode  
RW  
RW  
RW  
RW  
____  
0 : CNTR0 signal output starts at “H”.  
1 : CNTR0 signal output starts at “L”.  
INT1/CNTR0 signal  
polarity sw itch bit(1)  
Timer X count start flag(2)  
0 : Stops counting.  
1 : Starts counting.  
_______  
P3_7/CNTR0 select bit  
0 : Port P3_7  
_______  
TXOCNT  
1 : CNTR0 output  
TXMOD2 Set to 0 in pulse output mode.  
RW  
RW  
RW  
TXEDG  
TXUND  
Set to 0 in pulse output mode.  
Set to 0 in pulse output mode.  
NOTES:  
1. The IR bit in the INT1IC register may be set to 1 (requests interrupt) w hen the R0EDG bit is rew ritten.  
Ref er to  
.
12.5.5 Changing Interrupt Sources  
2. Refer to  
for precautions regarding the TXS bit.  
14.1.6 Notes on Timer X  
Figure 14.5  
TXMR Register in Pulse Output Mode  
Rev.1.30 Apr 14, 2006 Page 108 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.1.3 Event Counter Mode  
In event counter mode, external signal inputs to the INT1/CNTR0 pin are counted (refer to Table 14.4  
Event Counter Mode Specifications). Figure 14.6 shows the TXMR Register in Event Counter  
Mode.  
Table 14.4  
Item  
Count source  
Event Counter Mode Specifications  
Specification  
External signal which is input to CNTR0 pin (Active edge is selectable by software)  
Count operations  
• Decrement  
• When the timer underflows, the contents of the reload register are reloaded and the  
count is continued.  
Divided ratio  
1/(n+1)(m+1) n: value set in PREX register, m: value set in TX register  
1 (count starts) is written to the TXS bit in the TXMR register.  
0 (count stops) is written to the TXS bit in the TXMR register.  
When timer X underflows [timer X interrupt].  
Count start condition  
Count stop condition  
Interrupt request  
generation timing  
Count source input  
(INT1 interrupt input)  
INT10/CNTR00,  
INT11/CNTR01  
pin functions  
Programmable I/O port  
CNTR0 pin function  
Read from timer  
Write to timer  
The count value can be read out by reading registers TX and PREX.  
• When registers TX and PREX are written while the count is stopped, values are written to  
both the reload register and counter.  
• When registers TX and PREX are written during the count, the value is written to each  
reload register of registers TX and PREX at the following count source input, the data is  
transferred to the counter at the second count source input, and the count re-starts at the  
third count source input.  
Select functions  
• INT1/CNTR0 signal polarity switch function  
The R0EDG bit can select the active edge of the count source.  
• Count source input pin select function  
The CNTRSEL bit in the UCON register can select the CNTR00 or CNTR01 pin.  
Timer X Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0  
1 0  
Symbol  
TXMR  
Address  
008Bh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
RW  
b1 b0  
TXMOD0 Operating mode select bits 0, 1  
1 0 : Event counter mode  
TXMOD1  
____  
0 : Rising edge  
1 : Falling edge  
INT1/CNTR0 signal  
R0EDG  
RW  
RW  
polarity sw itch bit(1)  
Timer X count start flag(2)  
0 : Stops counting.  
1 : Starts counting.  
TXS  
TXOCNT Set to 0 in event counter mode.  
TXMOD2 Set to 0 in event counter mode.  
RW  
RW  
RW  
RW  
TXEDG  
TXUND  
Set to 0 in event counter mode.  
Set to 0 in event counter mode.  
NOTES:  
1. The IR bit in the INT1IC register may be set to 1 (requests interrupt) w hen the R0EDG bit is rew ritten.  
Ref er to  
.
12.5.5 Changing Interrupt Sources  
2. Ref er to  
for precautions regarding the TXS bit.  
14.1.6 Notes on Timer X  
Figure 14.6  
TXMR Register in Event Counter Mode  
Rev.1.30 Apr 14, 2006 Page 109 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.1.4 Pulse Width Measurement Mode  
In pulse width measurement mode, the pulse width of an external signal input to the INT1/CNTR0 pin  
is measured (refer to Table 14.5 Pulse Width Measurement Mode Specifications). Figure 14.7  
shows the TXMR Register in Pulse Width Measurement Mode. Figure 14.8 shows an Operating  
Example in Pulse Width Measurement Mode.  
Table 14.5  
Pulse Width Measurement Mode Specifications  
Specification  
Item  
Count sources  
f1, f2, f8, fRING  
Count operations  
• Decrement  
• Continuously counts the selected signal only when the measured pulse is “H”  
level, or conversely only “L” level.  
• When the timer underflows, the contents of the reload register are reloaded  
and the count is continued.  
Count start condition  
Count stop condition  
Interrupt request  
1 (count starts) is written to the TXS bit in the TXMR register.  
0 (count stops) is written to the TXS bit in the TXMR register.  
• When timer X underflows [timer X interrupt].  
• Rising or falling of the CNTR0 input (end of measurement period) [INT1  
interrupt]  
generation timing  
Measured pulse input (INT1 interrupt input)  
INT10/CNTR00,  
INT11/CNTR01  
pin functions  
Programmable I/O port  
CNTR0 pin function  
Read from timer  
Write to timer  
The count value can be read out by reading registers TX and PREX.  
• When registers TX and PREX are written while the count is stopped, values  
are written to both the reload register and counter.  
• When registers TX and PREX are written during the count, the value is written  
to each reload register of registers TX and PREX at the following count source  
input, the data is transferred to the counter at the second count source input,  
and the count re-starts at the third count source input.  
Select functions  
• INT1/CNTR0 signal polarity switch function  
The R0EDG bit can select “H” or “L” level period for the input pulse width  
measurement.  
• Measured pulse input pin select function  
The CNTRSEL bit in the UCON register can select the CNTR00 or CNTR01  
pin.  
Rev.1.30 Apr 14, 2006 Page 110 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer X Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0  
1 1  
Symbol  
TXMR  
Address  
008Bh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
RW  
TXMOD0 Operating mode select bits 0, 1  
b1 b0  
1 1 : Pulse w idth measurement mode  
TXMOD1  
____  
[CNTR0]  
INT1/CNTR0 signal  
polarity sw itch bit(1)  
0 : Measures “L” level w idth  
1 : Measures “H” level w idth  
[_IN__T_1_ ]  
R0EDG  
RW  
RW  
0 : Rising edge  
1 : Falling edge  
Timer X count start flag(2)  
TXS  
0 : Stops counting.  
1 : Starts counting.  
TXOCNT Set to 0 in pulse w idth measurement mode.  
TXMOD2 Set to 0 in pulse w idth measurement mode.  
RW  
RW  
RW  
RW  
TXEDG  
TXUND  
Set to 0 in pulse w idth measurement mode.  
Set to 0 in pulse w idth measurement mode.  
NOTES:  
1. The IR bit in the INT1IC register may be set to 1 (requests interrupt) w hen the R0EDG bit is rew ritten.  
Ref er to  
.
12.5.5 Changing Interrupt Sources  
2. Ref er to  
for precautions regarding the TXS bit.  
14.1.6 Notes on Timer X  
Figure 14.7  
TXMR Register in Pulse Width Measurement Mode  
Rev.1.30 Apr 14, 2006 Page 111 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
n = high level: the contents of TX register, low level: the contents of PREX register  
FFFFh  
Count start  
Underflow  
n
Count stop  
Count stop  
Count start  
Period  
0000h  
Set to 1 by program  
1
0
TXS bit in  
TXMR register  
Measured pulse  
(CNTR0i pin input)  
1
0
Set to 0 when interrupt request is acknowledged, or set by program  
1
0
IR bit in INT1IC  
register  
Set to 0 when interrupt request is acknowledged, or set by program  
1
0
IR bit in TXIC  
register  
Conditions: “H” level width of measured pulse is measured. (R0EDG = 1)  
i = 0 to 1  
Figure 14.8  
Operating Example in Pulse Width Measurement Mode  
Rev.1.30 Apr 14, 2006 Page 112 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.1.5 Pulse Period Measurement Mode  
In pulse period measurement mode, the pulse period of an external signal input to the INT1/CNTR0  
pin is measured (refer to Table 14.6 Pulse Period Measurement Mode Specifications). Figure 14.9  
shows the TXMR Register in Pulse Period Measurement Mode. Figure 14.10 shows an Operating  
Example in Pulse Period Measurement Mode.  
Table 14.6  
Pulse Period Measurement Mode Specifications  
Item Specification  
Count sources  
f1, f2, f8, fRING  
Count operations  
• Decrement  
• After an active edge of the measured pulse is input, contents for the read-out  
buffer are retained at the first underflow of prescaler X. Then timer X reloads  
contents in the reload register at the second underflow of prescaler X and  
continues counting.  
Count start condition  
Count stop condition  
Interrupt request  
1 (count starts) is written to the TXS bit in the TXMR register.  
0 (count stops) is written to the TXS bit in the TXMR register.  
• When timer X underflows or reloads [timer X interrupt].  
• Rising or falling of CNTR0 input (end of measurement period) [INT1 interrupt]  
generation timing  
(1)  
INT10/CNTR00,  
INT11/CNTR01  
pin functions  
Measured pulse input (INT1 interrupt input)  
Programmable I/O port  
CNTR0 pin function  
Read from timer  
Contents of the read-out buffer can be read out by reading the TX register. The  
value retained in the read-out buffer is released by reading the TX register.  
Write to timer  
• When registers TX and PREX are written while the count is stopped, values  
are written to both the reload register and counter.  
• When registers TX and PREX are written during the count, the value is  
written to each reload register of registers TX and PREX at the following  
count source input, the data is transferred to the counter at the second count  
source input, and the count re-starts at the third count source input.  
Select functions  
• INT1/CNTR0 polarity switch function  
The R0EDG bit can select the measurement period for the input pulse.  
• Measured pulse input pin select function  
The CNTRSEL bit in the UCON register can select the CNTR00 or CNTR01  
pin.  
NOTE:  
1. Input a pulse with a period longer than twice of the prescaler X period. Input a pulse with a longer  
“H” and “L” width than the prescaler X period. If a pulse with a shorter period is input to the CNTR0  
pin, the input may be ignored.  
Rev.1.30 Apr 14, 2006 Page 113 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer X Mode Register  
b7 b6 b5 b4 b3 b2 b1 b0  
1 0  
0 0  
Symbol  
TXMR  
Address  
008Bh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Operating mode select bits 0, 1  
b1 b0  
TXMOD0  
TXMOD1  
0 0 : Timer mode or pulse period measurement  
mode  
RW  
RW  
RW  
____  
[CNTR0]  
INT1/CNTR0 signal  
polarity sw itch bit(1)  
0 : Measures measured pulse from one  
rising edge to next rising edge.  
1 : Measures measured pulse from one  
falling edge to next falling edge.  
R0EDG  
TXS  
[_IN__T_1_ ]  
0 : Rising edge  
1 : Falling edge  
Timer X count start flag(3)  
0 : Stops counting.  
1 : Starts counting.  
TXOCNT Set to 0 in pulse w idth measurement mode.  
RW  
RW  
TXMOD2 Operating mode select bit 2  
1 : Pulse period measurement mode  
Active edge judgment flag  
TXEDG(2)  
0 : Active edge not received  
1 : Active edge received  
RW  
RW  
Timer X underflow flag  
0 : No underflow  
1 : Underflow  
(2)  
TXUND  
NOTES:  
1. The IR bit in the INT1IC register may be set to 1 (requests interrupt) w hen the R0EDG bit is rew ritten.  
Ref er to  
.
12.5.5 Changing Interrupt Sources  
2. This bit is set to 0 by w riting 0 in a program (and remains unchanged even if 1 is w ritten to it).  
3. Refer to for precautions regarding the TXS bit.  
14.1.6 Notes on Timer X  
Figure 14.9  
TXMR Register in Pulse Period Measurement Mode  
Rev.1.30 Apr 14, 2006 Page 114 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Underflow signal of  
prescaler X  
Set to 1 by program  
TXS bit in TXMR  
1
register  
0
Starts  
counting  
1
0
CNTR0i pin input  
Timer X  
reloads  
Timer X  
reloads  
Timer X  
reloads  
Contents of timer X  
0Fh 0Eh 0Fh 0Eh 0Dh 0Ch 0Bh 0Ah 09h 08h 0Fh 0Eh 0Dh  
01h 00h 0Fh 0Eh  
Retained(7)  
08h  
Retained(7)  
Contents of  
read-out buffer1  
0Fh  
0Eh  
0Ah 09h  
0Dh  
Timer X read(3)  
01h 00h 0Fh 0Eh  
Timer X read(3)  
(2)  
(2)  
TXEDG bit in  
TXMR register  
1
0
Set to 0 by program(4)  
(Note 6)  
TXUND bit in  
TXMR register  
1
0
Set to 0 by program(5)  
IR bit in  
TXIC register  
1
0
Set to 0 when interrupt request is acknowledged, or set by program  
IR bit in INT1IC  
register  
1
0
Set to 0 when interrupt request is acknowledged, or set by program  
Conditions: The period from one rising edge to the next rising edge of the measured pulse is measured (R0EDG = 0)  
with the default value of the TX register as 0Fh.  
i = 0 to 1  
NOTES:  
1. The contents of the read-out buffer can be read by reading the TX register in pulse period measurement mode.  
2. After an active of edge the measured pulse is input, the TXEDG bit in the TXMR register is set to 1 (active edge found)  
when the prescale X underflows for the second time.  
3. The TX register should be read before the next active edge is input after the TXEDG bit is set to 1 (active edge found).  
The contents in the read-out buffer are retained until the TX register is read. If the TX register is not read before the next active edge is  
input, the measured result of the previous period is retained.  
4. To set to 0 by a program, use a MOV instruction to write 0 to the TXEDG in the TXMR register. At the same time,  
write 1 to the TXUND bit.  
5. To set to 0 by a program, use a MOV instruction to write 0 to the TXUND in the TXMR register. At the same time,  
write 1 to the TXEDG bit.  
6. Bits TXUND and TXEDG are both set to 1 if timer X underflows and reloads on an active edge simultaneously.  
In this case, the validity of the TXUND bit should be determined by the contents of the read-out buffer.  
7. If the prescaler X underflow signal is “H” level when the CNTR0 active edge is input, the value in the read buffer is the count value at that  
point. If the prescaler X underflow signal is “L” level when the CNTR0 active edge is input, the value in the read buffer is the next count  
value.  
Figure 14.10 Operating Example in Pulse Period Measurement Mode  
Rev.1.30 Apr 14, 2006 Page 115 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.1.6 Notes on Timer X  
Timer X stops counting after a reset. Set the values in the timer and prescaler before the count  
starts.  
Even if the prescaler and timer are read out in 16-bit units, these registers are read 1 byte at a  
time by the MCU. Consequently, the timer value may be updated during the period when these  
two registers are being read.  
Do not rewrite bits TXMOD0 to TXMOD1, and bits TXMOD2 and TXS simultaneously.  
In pulse period measurement mode, bits TXEDG and TXUND in the TXMR register can be set to  
0 by writing 0 to these bits by a program. However, these bits remain unchanged if 1 is written.  
When using the READ-MODIFY-WRITE instruction for the TXMR register, the TXEDG or TXUND  
bit may be set to 0 although these bits are set to 1 while the instruction is being executed. In this  
case, write 1 to the TXEDG or TXUND bit which is not supposed to be set to 0 with the MOV  
instruction.  
When changing to pulse period measurement mode from another mode, the contents of bits  
TXEDG and TXUND are undefined. Write 0 to bits TXEDG and TXUND before the count starts.  
The TXEDG bit may be set to 1 by the prescaler X underflow generated after the count starts.  
When using the pulse period measurement mode, leave two or more periods of the prescaler X  
immediately after the count starts, then set the TXEDG bit to 0.  
The TXS bit in the TXMR register has a function to instruct timer X to start or stop counting and a  
function to indicate that the count has started or stopped.  
0 (count stops) can be read until the following count source is applied after 1 (count starts) is  
written to the TXS bit while the count is being stopped. If the following count source is applied, 1  
can be read from the TXS bit. After writing 1 to the TXS bit, do not access registers associated  
with timer X (registers TXMR, PREX, TX, TCSS, and TXIC) except for the TXS bit, until 1 can be  
read from the TXS bit. The count starts at the following count source after the TXS bit is set to 1.  
Also, after writing 0 (count stops) to the TXS bit during the count, timer X stops counting at the  
following count source.  
1 (count starts) can be read by reading the TXS bit until the count stops after writing 0 to the TXS  
bit. After writing 0 to the TXS bit, do not access registers associated with timer X except for the  
TXS bit, until 0 can be read from the TXS bit.  
Rev.1.30 Apr 14, 2006 Page 116 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.2 Timer Z  
Timer Z is an 8-bit timer with an 8-bit prescaler. The prescaler and timer each consist of a reload register  
and counter. The reload register and counter are allocated at the same address. Refer to the Tables  
14.7 to 14.10 for the Specifications of Each Mode. Timer Z contains timer Z primary and timer Z  
secondary reload registers.  
Figure 14.11 shows a Block Diagram of Timer Z. Figures 14.12 to 14.15 show registers TZMR, PREZ,  
TZSC, TZPR, TZOC, PUM, and TCSS.  
Timer Z has the following four operating modes:  
Timer mode:  
The timer counts an internal count source or timer  
X underflows.  
Programmable waveform generation mode:  
The timer outputs pulses of a given width  
successively.  
Programmable one-shot generation mode:  
The timer outputs a one-shot pulse.  
Programmable wait one-shot generation mode: The timer outputs a delayed one-shot pulse.  
Data bus  
TZSC register  
Reload register  
TZPR register  
Reload register  
Reload register  
TZCK1 to TZCK0  
= 00b  
f1  
= 01b  
f8  
Counter  
Counter  
Timer Z interrupt  
= 10b  
Timer X underflow  
PREZ register  
= 11b  
f2  
TZMOD1 to TZMOD0 = 10b, 11b  
TZOS  
TZS  
INT0 interrupt  
Input polarity selected to  
be one edge or both edges  
INT0  
Digital filter  
Polarity  
select  
INT0PL  
INT0EN  
INOSEG  
TZMOD1 to TZMOD0 = 01b, 10b, 11b  
TZOUT  
TZOPL = 1  
Toggle  
flip-flop  
TZOCNT = 0  
Q
Q
CK  
CLR  
TZOPL = 0  
P1_3 bit in P1 register  
TZOCNT = 1  
Write to TZMR register  
TZMOD1 to TZMOD0  
= 01b, 10b, 11b  
TZOPL, INOSTG: Bits in PUM register  
TZCK0 to TZCK1: Bits in TCSS register  
INT0EN, INT0PL: Bits in INTEN register  
TZMOD0 to TZMOD1, TZS: Bits in TZMR register  
TZOS, TZOCNT: Bits in TZOC register  
Figure 14.11 Block Diagram of Timer Z  
Rev.1.30 Apr 14, 2006 Page 117 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Timer Z Mode Register  
14.Timers  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0  
Symbol  
Address  
0080h  
After Reset  
00h  
TZMR  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
Timer Z operating mode  
bits  
b5 b4  
0 0 : Timer mode  
TZMOD0  
TZMOD1  
RW  
RW  
0 1 : Programmable w aveform generation mode  
1 0 : Programmable one-shot generation mode  
1 1 : Programmable w ait one-shot generation mode  
Timer Z w rite control bit Functions varies depending on operating mode.  
TZWC  
TZS  
RW  
RW  
Timer Z count start flag(1) 0 : Stops counting.  
1 : Starts counting.  
NOTE:  
1. Ref er to  
for precautions regarding the TZS bit.  
14.2.5 Notes on Timer Z  
Figure 14.12 TZMR Register  
Rev.1.30 Apr 14, 2006 Page 118 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Prescaler Z Register  
14.Timers  
b7  
b0  
Symbol  
PREZ  
Address  
0085h  
After Reset  
FFh  
Mode  
Function  
Counts internal count source or timer X  
underflow s.  
Setting Range  
00h to FFh  
RW  
RW  
Timer mode  
Programmable w aveform  
generation mode  
Counts internal count source or timer X  
underflow s.  
00h to FFh  
00h to FFh  
00h to FFh  
RW  
RW  
RW  
Programmable one-shot  
generation mode  
Counts internal count source or timer X  
underflow s.  
Programmable w ait one-shot Counts internal count source or timer X  
generation mode underflow s.  
Timer Z Secondary Register  
b7  
b0  
Symbol  
TZSC  
Mode  
Address  
0086h  
After Reset  
FFh  
Function  
Setting Range  
RW  
Disabled  
Timer mode  
Programmable w aveform  
generation mode  
Counts underflow of prescaler Z.(1)  
Disabled  
00h to FFh  
WO(2)  
Programmable one-shot  
generation mode  
Programmable w ait one-shot Counts underflow s of prescaler Z (counts  
generation mode one-shot w idth).  
00h to FFh  
WO  
NOTES:  
1. Each value in the TZPR register and TZSC register is reloaded to the counter alternately and counted.  
2. The count value can be read out by reading the TZPR register even w hen the secondary period is being counted.  
Timer Z Primary Register  
b7  
b0  
Symbol  
TZPR  
Mode  
Address  
0087h  
After Reset  
FFh  
Function  
Setting Range  
00h to FFh  
RW  
RW  
Counts underflow s of prescaler Z.  
Timer mode  
Programmable w aveform  
generation mode  
Counts underflow s of prescaler Z.(1)  
00h to FFh  
00h to FFh  
00h to FFh  
RW  
RW  
RW  
Programmable one-shot  
generation mode  
Counts underflow s of prescaler Z  
(counts one-shot w idth).  
Programmable w ait one-shot Counts underflow s of prescaler Z  
generation mode (counts w ait period).  
NOTE:  
1. Each value in registers TZPR and TZSC is reloaded to the counter alternately and counted.  
Figure 14.13 Registers PREZ, TZSC, and TZPR  
Rev.1.30 Apr 14, 2006 Page 119 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer Z Output Control Register(3)  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
Address  
008Ah  
After Reset  
00h  
TZOC  
Bit Symbol  
Bit Name  
Timer Z one-shot start bit(1)  
Function  
RW  
RW  
0 : One-shot stops.  
1 : One-shot starts.  
TZOS  
(b1)  
Reserved bit  
Set to 0.  
RW  
RW  
Timer Z programmable w aveform  
generation output sw itch bit(2)  
0 : Outputs programmable w aveform.  
1 : Outputs value in P1_3 port register.  
TZOCNT  
(b7-b3)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
NOTES:  
1. This bit is set to 0 w hen the output of one-shot w aveform is completed. If the TZS bit in the TZMR register w as set to  
0 (count stops) to stop the w aveform output during one-shot w aveform output, set the TZOS bit to 0.  
2. This bit is enabled only w hen operating in programmable w aveform generation mode.  
3. When executing an instruction w hich changes this register w hen the TZOS bit is set to 1 (during count), the TZOS  
bit is automatically set to 0 (one-shot stop) if the count is completed w hile the instruction is being executed. If this  
causes problems, execute an instruction w hich changes the contents of this register w hen the TZOS bit is set to 0  
(one-shot stop).  
Timer Z Waveform Output Control Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0  
Symbol  
PUM  
Address  
0084h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b4-b0)  
Reserved bits  
Set to 0.  
Timer Z output level latch  
Function varies depending on operating  
TZOPL  
INOSTG  
INOSEG  
RW  
RW  
RW  
mode.  
____  
____  
INT0 pin one-shot trigger control  
0 : INT0 pin one-shot trigger disabled  
____  
bit (timer Z)(2)  
1 : INT0 pin one-shot trigger enabled  
0 : Falling edge trigger  
1 : Rising edge trigger  
____  
INT0 pin one-shot trigger polarity  
select bit (timer Z)(1)  
NOTES:  
1. The INOSEG bit is enabled only w hen the INT0PL bit in the INTEN register is set to 0 (one edge).  
2. Set the INOSTG bit to 1 after setting the INT0EN bit in the INTEN register and the INOSEG bit in the PUM register.  
Figure 14.14 Registers TZOC and PUM  
Rev.1.30 Apr 14, 2006 Page 120 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer Count Source Setting Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
0 0  
Symbol  
TCSS  
Address  
008Eh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Timer X count source select bits(1)  
Function  
RW  
RW  
b1 b0  
TXCK0  
TXCK1  
0 0 : f1  
0 1 : f8  
1 0 : fRING  
1 1 : f2  
RW  
(b3-b2)  
Reserved bits  
Set to 0.  
RW  
RW  
Timer Z count source select bits(1)  
b5 b4  
TZCK0  
TZCK1  
0 0 : f1  
0 1 : f8  
1 0 : Selects Timer X underflow .  
1 1 : f2  
RW  
RW  
(b7-b6)  
Reserved bits  
Set to 0.  
NOTE:  
1. Do not sw itch count sources during a count operation. Stop the timer count before sw itching count sources.  
Figure 14.15 TCSS Register  
Rev.1.30 Apr 14, 2006 Page 121 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.2.1 Timer Mode  
In timer mode, a count source which is internally generated or timer X underflow is counted (refer to  
Table 14.7 Timer Mode Specifications). The TZSC register is not used in timer mode. Figure 14.16  
shows Registers TZMR and PUM in Timer Mode.  
Table 14.7  
Timer Mode Specifications  
Item  
Count sources  
Count operations  
Specification  
f1, f2, f8, Timer X underflow  
• Decrement  
• When the timer underflows, it reloads the reload register contents before the  
count continues. (When timer Z underflows, the contents of timer Z primary  
reload register is reloaded.)  
Divided ratio  
1/(n+1)(m+1) fi: Count source frequency  
n: Value set in PREZ register, m: value set in TZPR register  
1 (count starts) is written to the TZS bit in the TZMR register.  
0 (count stops) is written to the TZS bit in the TZMR register.  
• When timer Z underflows [timer Z interrupt].  
Count start condition  
Count stop condition  
Interrupt request  
generation timing  
TZOUT pin function  
Programmable I/O port  
INT0 pin function  
Read from timer  
Programmable I/O port, or INT0 interrupt input  
The count value can be read out by reading registers TZPR and PREZ.  
(1)  
• When registers TZPR and PREZ are written while the count is stopped,  
values are written to both the reload register and counter.  
Write to timer  
• When registers TZPR and PREZ are written during the count while the TZWC  
bit is set to 0 (writing to the reload register and counter simultaneously), the  
value is written to each reload register of registers TZPR and PREZ at the  
following count source input, the data is transferred to the counter at the  
second count source input, and the count re-starts at the third count source  
input.  
When the TZWC bit is set to 1 (writing to only the reload register), the value is  
written to each reload register of registers TZPR and PREZ (the data is  
transferred to the counter at the following reload).  
NOTE:  
1. The IR bit in the TZIC register is set to 1 (interrupt requested) when writing to the TZPR or PREZ  
register while both of the following conditions are met.  
TZWC bit in TZMR register is set to 0 (write to reload register and counter simultaneously)  
TZS bit in TZMR register is set to 1 (count starts)  
Disable interrupts before writing to the TZPR or PREZ register in the above state.  
Rev.1.30 Apr 14, 2006 Page 122 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Timer Z Mode Register  
14.Timers  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0 0  
Symbol  
Address  
0080h  
After Reset  
00h  
TZMR  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
b5 b4  
TZMOD0 Timer Z operating mode  
RW  
RW  
0 0 : Timer mode  
bits  
TZMOD1  
Timer Z w rite control bit(1) 0 : Write to reload register and counter  
1 : Write to reload register only  
TZWC  
RW  
RW  
Timer Z count start flag(2)  
0 : Stops counting.  
1 : Starts counting.  
TZS  
NOTES:  
1. When the TZS bit is set to 1 (count starts), the setting value in the TZWC bit is enabled. When the TZWC bit is set to  
0, timer Z count value is w ritten to both reload register and counter. Timer Z count value is w ritten to the reload  
register only w hen the TZWC bit is set to 1. When the TZS bit is set to 0 (count stops), timer Z count value is w ritten  
to both reload register and counter regardless of the setting value of the TZWC bit.  
2. Refer to  
for precautions regarding the TZS bit.  
14.2.5 Notes on Timer Z  
Timer Z Waveform Output Control Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0 0 0 0  
Symbol  
PUM  
Address  
0084h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b4-b0)  
Reserved bits  
Set to 0.  
Timer Z output level latch  
Set to 0 in timer mode.  
Set to 0 in timer mode.  
Set to 0 in timer mode.  
TZOPL  
INOSTG  
INOSEG  
RW  
RW  
RW  
____  
INT0 pin one-shot trigger  
control bit  
____  
INT0 pin one-shot trigger  
polarity select bit  
Figure 14.16 Registers TZMR and PUM in Timer Mode  
Rev.1.30 Apr 14, 2006 Page 123 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.2.2 Programmable Waveform Generation Mode  
In programmable waveform generation mode, the signal output from the TZOUT pin is inverted each  
time the counter underflows, while the values in registers TZPR and TZSC are counted alternately  
(refer to Table 14.8 Programmable Waveform Generation Mode Specifications). Counting starts  
by counting the value set in the TZPR register. Figure 14.17 shows Registers TZMR and PUM in  
Programmable Waveform Generation Mode. Figure 14.18 shows an Operating Example of Timer Z in  
Programmable Waveform Generation Mode.  
Table 14.8  
Programmable Waveform Generation Mode Specifications  
Item  
Specification  
Count sources  
f1, f2, f8, timer X underflow  
Count operations  
• Decrement  
• When the timer underflows, it reloads the contents of the primary reload and  
secondary reload registers alternately before the count is continued.  
Width and period of  
output waveform  
Primary period: (n+1)(m+1)/fi  
Secondary period: (n+1)(p+1)/fi  
Period: (n+1){(m+1)+(p+1)}/fi  
fi: Count source frequency  
n: Value set in PREZ register, m: value set in TZPR register, p: value set in TZSC  
register  
Count start condition 1 (count starts) is written to the TZS bit in the TZMR register.  
Count stop condition 0 (count stops) is written to the TZS bit in the TZMR register.  
Interrupt request  
generation timing  
TZOUT pin function  
In half a cycle of count source, after timer Z underflows during the secondary  
period (at the same time as the TZOUT output change) [timer Z interrupt].  
Pulse output  
(To use this pin as a programmable I/O port, select timer mode.)  
INT0 pin function  
Read from timer  
Write to timer  
Programmable I/O port, or INT0 interrupt input  
(1)  
The count value can be read out by reading registers TZPR and PREZ  
.
The value written to registers TZSC, PREZ, and TZPR is written to the reload  
(2)  
register only  
Select functions  
• Output level latch select function  
The TZOPL bit can select the output level during primary and secondary  
periods.  
• Programmable waveform generation output switch function  
When the TZOCNT bit in the TZOC register is set to 0, the output from the  
TZOUT pin is inverted synchronously when timer Z underflows. When set to 1,  
(3)  
the value in the P1_3 bit is output from the TZOUT pin  
NOTES:  
1. Even when counting the secondary period, the TZPR register may be read.  
2. The value set in registers TZPR and TZSC are made effective by writing a value to the TZPR  
register. The set values are reflected in the waveform output beginning with the following primary  
period after writing to the TZPR register.  
3. The TZOCNT bit is enabled by the following.  
When counting starts.  
When a timer Z interrupt request is generated. The contents after the TZOCNT bit is changed are  
reflected from the output of the following primary period.  
Rev.1.30 Apr 14, 2006 Page 124 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Timer Z Mode Register  
14.Timers  
b7 b6 b5 b4 b3 b2 b1 b0  
1 0 1 0 0 0 0  
Symbol  
Address  
0080h  
After Reset  
00h  
TZMR  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
b5 b4  
TZMOD0 Timer Z operating mode bits  
TZMOD1  
RW  
RW  
0 1 : Programmable w aveform generation mode  
Timer Z w rite control bit  
TZWC  
Set to 1 in programmable w aveform generation  
mode.(1)  
RW  
RW  
Timer Z count start flag(2)  
TZS  
0 : Stops counting.  
1 : Starts counting.  
NOTES:  
1. When the TZS bit is set to 1 (count starts), the count value is w ritten to the reload register only. When the TZS bit is  
set to 0 (count stops), the count value is w ritten to both reload register and counter.  
2. Ref er to  
for precautions regarding the TZS bit.  
14.2.5 Notes on Timer Z  
Timer Z Waveform Output Control Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
0 0 0 0 0  
Symbol  
PUM  
Address  
0084h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b4-b0)  
Reserved bits  
Set to 0.  
Timer Z output level latch  
0 : Outputs “H” for primary period.  
Outputs “L” for secondary period.  
Outputs “L” w hen the timer is stopped.  
1 : Outputs “L” for primary period.  
Outputs “H” for secondary period.  
Outputs “H” w hen the timer is stopped.  
TZOPL  
RW  
____  
Set to 0 in programmable w aveform generation  
mode.  
INT0 pin one-shot trigger  
INOSTG  
INOSEG  
RW  
RW  
control bit  
____  
Set to 0 in programmable w aveform generation  
mode.  
INT0 pin one-shot trigger  
polarity select bit  
Figure 14.17 Registers TZMR and PUM in Programmable Waveform Generation Mode  
Rev.1.30 Apr 14, 2006 Page 125 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Set to 1 by program  
1
0
TZS bit in  
TZMR register  
Count source  
Prescaler Z  
underflow signal  
Timer Z  
secondary  
reloads  
Timer Z  
primary  
reloads  
01h  
00h  
02h  
01h  
00h  
01h  
00h  
02h  
Contents of timer Z  
Set to 0 when interrupt request  
is acknowledged, or set by  
program  
1
0
IR bit in  
TZIC register  
Set to 0 by program  
1
0
TZOPL bit in  
PUM register  
Waveform  
output inverted  
Waveform  
output starts  
Waveform  
output inverted  
“H”  
“L”  
TZOUT pin output  
Primary period  
Secondary period  
Primary period  
The above applies under the following conditions.  
PREZ = 01h, TZPR = 01h, TZSC = 02h  
TZOC register TZOCNT bit = 0  
Figure 14.18 Operating Example of Timer Z in Programmable Waveform Generation Mode  
Rev.1.30 Apr 14, 2006 Page 126 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.2.3 Programmable One-shot Generation Mode  
In programmable one-shot generation mode, one-shot pulse is output from the TZOUT pin by a  
program or an external trigger input (input to the INT0 pin) (refer to Table 14.9 Programmable One-  
Shot Generation Mode Specifications). When a trigger is generated, the timer starts operating from  
the point only once for a given period equal to the set value in the TZPR register. The TZSC register  
is not used in this mode. Figure 14.19 shows Registers TZMR and PUM in Programmable One-Shot  
Generation Mode. Figure 14.20 shows an Operating Example in Programmable One-Shot  
Generation Mode.  
Table 14.9  
Programmable One-Shot Generation Mode Specifications  
Item  
Specification  
Count sources  
f1, f2, f8, Timer X underflow  
Count operations  
• Decrement the value set in the TZPR register  
• When the timer underflows, it reloads the contents of the reload register before  
the count completes and the TZOS bit is set to 0 (one-shot stops).  
• When the count stops, the timer reloads the contents of the reload register  
before it stops.  
One-shot pulse  
output time  
(n+1)(m+1)/fi  
fi: Count source frequency, n: value set in PREZ register, m: value set in TZPR  
register  
(1)  
Count start conditions  
• Set the TZOS bit in the TZOC register to 1 (one-shot starts).  
• Input active trigger to the INT0 pin  
(2)  
Count stop conditions • When reloading completes after the count value is set to 00h.  
• When the TZS bit in the TZMR register is set to 0 (count stops).  
• When the TZOS bit in the TZOC register is set to 0 (one-shot stops).  
Interrupt request  
generation timing  
In half a cycle of the count source, after the timer underflows (at the same time as  
the TZOUT output ends) [timer Z interrupt].  
TZOUT pin function Pulse output  
(To use this pin as a programmable I/O port, select timer mode.)  
INT0 pin function  
• When the INOSTG bit in the PUM register is set to 0 (INT0 one-shot trigger  
disabled): programmable I/O port or INT0 interrupt input  
• When the INOSTG bit in the PUM register is set to 1 (INT0 one-shot trigger  
enabled): external trigger (INT0 interrupt input)  
Read from timer  
Write to timer  
The count value can be read out by reading registers TZPR and PREZ.  
The value written to registers TZPR and PREZ is written to the reload register  
(3)  
only  
.
Select functions  
• Output level latch select function  
The TZOPL bit can select the output level of the one-shot pulse waveform.  
• INT0 pin one-shot trigger control and polarity select functions  
The INOSTG bit can select the trigger as active or inactive from the INT0 pin.  
Also, the INOSEG bit can select the active trigger polarity.  
NOTES:  
1. Set the TZS bit in the TZMR register to 1 (count starts).  
2. Set the TZS bit to 1 (count starts), the INT0EN bit in the INTEN register to 1 (enables INT0 input),  
and the INOSTG bit in the PUM register to 1 (INT0 one-shot trigger enabled). A trigger which is input  
during the count cannot be acknowledged, however an INT0 interrupt request is generated.  
3. The set value is reflected at the following one-shot pulse after writing to the TZPR register.  
Rev.1.30 Apr 14, 2006 Page 127 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Timer Z Mode Register  
14.Timers  
b7 b6 b5 b4 b3 b2 b1 b0  
1 1 0 0 0 0 0  
Symbol  
Address  
0080h  
After Reset  
00h  
TZMR  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
TZMOD0 Timer Z operating mode  
RW  
RW  
b5 b4  
bits  
1 0 : Programmable one-shot generation mode  
TZMOD1  
Timer Z w rite control bit  
Set to 1 in programmable one-shot generation  
mode.(1)  
TZWC  
RW  
RW  
Timer Z count start flag(2)  
0 : Stops counting.  
1 : Starts counting.  
TZS  
NOTES:  
1. When the TZS bit is set to 1 (count starts), the count value is w ritten to the reload register only. When the TZS bit is  
set to 0 (count stops), the count value is w ritten to both reload register and counter.  
2. Refer to  
for precautions regarding the TZS bit.  
14.2.5 Notes on Timer Z  
Timer Z Waveform Output Control Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0  
Symbol  
PUM  
Address  
0084h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b4-b0)  
Reserved bits  
Set to 0.  
Timer Z output level latch  
0 : Outputs one-shot pulse “H”.  
Outputs “L” w hen the timer is stopped.  
1 : Outputs one-shot pulse “L”.  
TZOPL  
RW  
Outputs “H” w hen the timer is stopped.  
____  
____  
INT0 pin one-shot trigger  
0 : INT0 pin one-shot trigger disabled  
____  
INOSTG  
INOSEG  
RW  
RW  
control bit(1)  
1 : INT0 pin one-shot trigger enabled  
0 : Falling edge trigger  
1 : Rising edge trigger  
____  
INT0 pin one-shot trigger  
polarity select bit(2)  
NOTES:  
1. Set the INOSTG bit to 1 after the INT0EN bit _in__t_he INTEN register and the INOSEG bit in the PUM register  
are set. When setting the INOSTG bit to 1 (INT0 pin one-shot trigger enabled), set bits INT0F0 to INT0F1  
____  
in the INT0F register. Set the INOSTG bit to 0 (INT0 pin one-shot trigger disabled) after the TZS bit in  
the TZMR register is set to 0 (count stops).  
2. The INOSEG bit is enabled only w hen the INT0PL bit in the INTEN register is set to 0 (one edge).  
Figure 14.19 Registers TZMR and PUM in Programmable One-Shot Generation Mode  
Rev.1.30 Apr 14, 2006 Page 128 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Set to 1 by program  
1
TZS bit in TZMR  
register  
0
Set to 0 when  
counting ends  
Set to 1 by INT0 pin  
input trigger  
Set to 1 by program  
1
0
TZOS bit in TZOC  
register  
Count source  
Prescaler Z  
underflow signal  
1
0
INT0 pin input  
Count  
starts  
Count  
starts  
Timer Z  
primary  
reloads  
Timer Z  
primary  
reloads  
01h  
00h  
01h  
00h  
01h  
Contents of timer Z  
Set to 0 when interrupt request is  
acknowledged, or set to 0 by  
program  
1
0
IR bit in TZIC  
register  
Set to 0 by program  
1
0
TZOPL bit in PUM  
register  
Waveform  
output ends  
Waveform  
output ends  
Waveform  
output starts  
Waveform  
output starts  
“H”  
“L”  
TZOUT pin input  
The above applies under the following conditions.  
PREZ = 01h, TZPR = 01h  
TZOPL bit in PUM register = 0, INOSTG bit = 1 (INT0 one-shot trigger enabled)  
INOSEG bit = 1 (rising edge trigger)  
Figure 14.20 Operating Example in Programmable One-Shot Generation Mode  
Rev.1.30 Apr 14, 2006 Page 129 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.2.4 Programmable Wait One-Shot Generation Mode  
In programmable wait one-shot generation mode, one-shot pulse is output from the TZOUT pin by a  
program or an external trigger input (input to the INT0 pin) (refer to Table 14.10 Programmable Wait  
One-Shot Generation Mode Specifications). When a trigger is generated, from that point, the timer  
outputs a pulse only once for a given length of time equal to the value set in the TZSC register after  
waiting for a given length of time equal to the setting value in the TZPR register. Figure 14.21 shows  
the Registers TZMR and PUM in Programmable Wait One-Shot Generation Mode. Figure 14.22  
shows an Operating Example in Programmable Wait One-Shot Generation Mode.  
Rev.1.30 Apr 14, 2006 Page 130 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Table 14.10 Programmable Wait One-Shot Generation Mode Specifications  
Item  
Count sources  
Count operations  
Specification  
f1, f2, f8, Timer X underflow  
• Decrement the value set in Timer Z primary  
• When the count of TZPR register underflows, the timer reloads the  
contents of the TZSC register before the count is continued.  
• When the count of the TZSC register underflows, the timer reloads the  
contents of the TZPR register before the count completes and the TZOS  
bit is set to 0.  
• When the count stops, the timer reloads the contents of the reload  
register before it stops.  
Wait time  
(n+1)(m+1)/fi  
fi: Count source frequency  
n: Value set in PREZ register, m: value set in TZPR register  
One-shot pulse output time (n+1)(p+1)/fi  
fi: Count source frequency  
n: Value set in PREZ register, p: value set in TZSC register  
(1)  
Count start conditions  
Count stop conditions  
• Set the TZOS bit in the TZOC register to 1 (one-shot starts).  
(2)  
• Input active trigger to the INT0 pin  
• When reloading completes after timer Z underflows during secondary  
period.  
• When the TZS bit in the TZMR register is set to 0 (count stops).  
• When the TZOS bit in the TZOC register is set to 0 (one-shot stops).  
Interrupt request generation In half a cycle of the count source after timer Z underflows during  
timing  
secondary period (complete at the same time as waveform output from the  
TZOUT pin) [timer Z interrupt].  
TZOUT pin function  
Pulse output  
(To use this pin as a programmable I/O port, select timer mode.)  
INT0 pin function  
• When the INOSTG bit in the PUM register is set to 0 (INT0 one-shot  
trigger disabled): programmable I/O port or INT0 interrupt input  
• When the INOSTG bit in the PUM register is set to 1 (INT0 one-shot  
trigger enabled): external trigger (INT0 interrupt input)  
Read from timer  
Write to timer  
The count value can be read out by reading registers TZPR and PREZ.  
The value written to registers TZPR and PREZ is written to the reload  
(3)  
register only  
.
Select functions  
• Output level latch select function  
The output level of the one-shot pulse waveform is selected by the  
TZOPL bit.  
• INT0 pin one-shot trigger control function and polarity select function  
Trigger input from the INT0 pin can be set to active or inactive by the  
INOSTG bit. Also, the active trigger's polarity can be selected by the  
INOSEG bit.  
NOTES:  
1. The TZS bit in the TZMR register must be set to 1 (start counting).  
2. The TZS bit must be set to 1 (start counting), the INT0EN bit in the INTEN register to 1 (enabling  
INT0 input), and the INOSTG bit in the PUM register to 1 (enabling INT0 one-shot trigger). A trigger  
which is input during the count cannot be acknowledged, however an INT0 interrupt request is  
generated.  
3. The set values are reflected at the following one-shot pulse after writing to the TZPR register.  
Rev.1.30 Apr 14, 2006 Page 131 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Timer Z Mode Register  
14.Timers  
b7 b6 b5 b4 b3 b2 b1 b0  
1 1 1 0 0 0 0  
Symbol  
Address  
0080h  
After Reset  
00h  
TZMR  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
Timer Z operating mode  
bits  
b5 b4  
TZMOD0  
TZMOD1  
TZWC  
TZS  
RW  
RW  
RW  
RW  
1 1 : Programmable w ait one-shot generation mode  
Timer Z w rite control bit  
Timer Z count start flag(2)  
Set to 1 in programmable w ait one-shot generation  
mode.(1)  
0 : Stops counting.  
1 : Starts counting.  
NOTES:  
1. When the TZS bit is set to 1 (count starts), the count value is w ritten to the reload register only. When the TZS bit is  
set to 0 (count stops), the count value is w ritten to both reload register and counter.  
2. Ref er to  
for precautions regarding the TZS bit.  
14.2.5 Notes on Timer Z  
Timer Z Waveform Output Control Register  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0 0 0  
Symbol  
PUM  
Address  
0084h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
(b4-b0)  
Reserved bits  
Set to 0.  
Timer Z output level latch  
0 : Outputs one-shot pulse “H”.  
Outputs “L” w hen the timer is stopped.  
1 : Outputs one-shot pulse “L”.  
TZOPL  
RW  
Outputs “H” w hen the timer is stopped.  
____  
____  
INT0 pin one-shot trigger  
0 : INT0 pin one-shot trigger disabled  
____  
INOSTG  
INOSEG  
RW  
RW  
control bit(1)  
1 : INT0 pin one-shot trigger enabled  
0 : Falling edge trigger  
1 : Rising edge trigger  
____  
INT0 pin one-shot trigger  
polarity select bit(2)  
NOTES:  
1. Set the INOSTG bit to 1 after the INT0EN bit _in__t_he INTEN register and the INOSEG bit in the PUM register  
are set. When setting the INOSTG bit to 1 (INT0 pin one-shot trigger enabled), set bits INT0F0 to INT0F1  
____  
in the INT0F register. Set the INOSTG bit to 0 (INT0 pin one-shot trigger disabled) after the TZS bit in the  
TZMR register is set to 0 (count stops).  
2. The INOSEG bit is enabled only w hen the INT0PL bit in the INTEN register is set to 0 (one edge).  
Figure 14.21 Registers TZMR and PUM in Programmable Wait One-Shot Generation Mode  
Rev.1.30 Apr 14, 2006 Page 132 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Set to 1 by program  
TZS bit in TZMR  
register  
1
0
Set to 0 when  
counting ends  
Set to 1 by program, or set to 1 by INT0 pin  
input trigger  
TZOS bit in TZOC  
register  
1
0
Count source  
Prescaler Z underflow  
signal  
1
0
INT0 pin input  
Timer Z secondary  
reloads  
Timer Z primary  
reloads  
Count starts  
01h  
00h  
02h  
01h  
00h  
01h  
Contents of timer Z  
Set to 0 when interrupt request is  
accepted, or set by program  
1
0
IR bit in TZIC  
register  
Set to 0 by program  
TZOPL bit in PUM  
register  
1
0
Waveform output starts  
Waveform output ends  
Wait starts  
“H”  
“L”  
TZOUT pin output  
The above applies under the following conditions.  
PREZ = 01h, TZPR = 01h, TZSC = 02h  
PUM register TZOPL bit = 0, INOSTG bit = 1 (INT0 one-shot trigger enabled)  
INOSEG bit = 1 (rising edge trigger)  
Figure 14.22 Operating Example in Programmable Wait One-Shot Generation Mode  
Rev.1.30 Apr 14, 2006 Page 133 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.2.5 Notes on Timer Z  
Timer Z stops counting after a reset. Set the values in the timer and prescaler before the count  
starts.  
Even if the prescaler and timer are read out in 16-bit units, these registers are read 1 byte at a  
time by the MCU. Consequently, the timer value may be updated during the period when these  
two registers are being read.  
Do not rewrite bits TZMOD0 to TZMOD1, and the TZS bit simultaneously.  
In programmable one-shot generation mode and programmable wait one-shot generation mode,  
when setting the TZS bit in the TZMR register to 0 (stops counting) or setting the TZOS bit in the  
TZOC register to 0 (stops one-shot), the timer reloads the value of the reload register and stops.  
Therefore, in programmable one-shot generation mode and programmable wait one-shot  
generation mode read the timer count value before the timer stops.  
The TZS bit in the TZMR register has a function to instruct timer Z to start or stop counting and a  
function to indicate that the count has started or stopped.  
0 (count stops) can be read until the following count source is applied after 1 (count starts) is  
written to the TZS bit while the count is being stopped. If the following count source is applied, 1  
can be read from the TZS bit. After writing 1 to the TZS bit, do not access registers associated  
with timer Z (registers TZMR, PREZ, TZSC, TZPR, TZOC, PUM, TCSC, and TZIC) except for the  
TZS bit, until 1 can be read from the TZS bit. The count starts at the following count source after  
the TZS bit is set to 1.  
Also, after writing 0 (count stops) to the TZS bit during the count, timer Z stops counting at the  
following count source.  
1 (count starts) can be read by reading the TZS bit until the count stops after writing 0 to the TZS  
bit. After writing 0 to the TZS bit, do not access registers associated with timer Z except for the  
TZS bit, until 0 can be read from the TZS bit.  
Rev.1.30 Apr 14, 2006 Page 134 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.3 Timer C  
Timer C is a 16-bit timer. Figure 14.23 shows a Block Diagram of Timer C. Figure 14.24 shows a Block  
Diagram of CMP Waveform Generation Unit. Figure 14.25 shows a Block Diagram of CMP Waveform  
Output Unit.  
Timer C has two modes: input capture mode and output compare mode. Figures 14.26 to 14.29 show the  
Timer C-associated registers.  
TCC11 to TCC10  
Sampling  
clock  
= 01b  
f1  
= 10b  
f8  
= 11b  
Other than  
00b  
TCC07 = 0  
f32  
Digital  
filter  
Edge  
detection  
INT3/TCIN  
INT3 interrupt  
= 00b  
TCC07 = 1  
fRING128  
Transfer signal  
Higher 8 bits  
Lower 8 bits  
Capture and compare 0 register  
TM0 register  
Compare circuit 0  
Compare 0 interrupt  
Timer C interrupt  
TCC02 to TCC01  
= 00b  
f1  
Higher 8 bits  
Lower 8 bits  
= 01b  
f8  
= 10b  
f32  
Counter  
TC register  
= 11b  
fRING-fast  
TYC00  
TCC12 = 0  
TCC12 = 1  
Timer C counter reset signal  
Compare 1 interrupt  
Compare circuit 1  
Higher 8 bits  
Lower 8 bits  
Compare register 1  
TM1 register  
TCC01 to TCC02, TCC07: Bits in TCC0 register  
TCC10 to TCC12: Bits in TCC1 register  
Figure 14.23 Block Diagram of Timer C  
Rev.1.30 Apr 14, 2006 Page 135 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
TCC14  
TCC15  
Compare 0 interrupt signal  
Compare 1 interrupt signal  
TCC16  
TCC17  
TCC17 to TCC16  
= 11b  
“H”  
“L”  
T
Latch  
R
CMP output  
(internal signal)  
D
Q
= 10b  
= 01b  
Reverse  
Reset  
TCC15 to TCC14  
= 01b  
Reverse  
“L”  
= 10b  
= 11b  
“H”  
TCC14 to TCC17: Bits in TCC1 register  
Figure 14.24 Block Diagram of CMP Waveform Generation Unit  
PD1_0  
TCOUT0  
TCOUT6 = 0  
CMP output  
(internal signal)  
TCOUT0 = 1  
TCOUT0 = 0  
Inverted  
TCOUT6 = 1  
CMP0_0  
P1_0  
Register  
Bit  
TCOUT  
P1  
TCOUT  
CMP0_0 Output  
TCOUT0  
P1_0  
TCOUT6  
Setting Value  
1
1
1
1
1
1
0
0
0
1
0
1
CMP0_0 waveform output  
CMP0_0 reversed waveform output  
“L” output  
“H” output  
This diagram is a block diagram of the CMP0_0 waveform output unit.  
The CMP0_1 to CMP0_2 and CMP1_0 to CMP1_2 waveform output units have the same configuration.  
Figure 14.25 Block Diagram of CMP Waveform Output Unit  
Rev.1.30 Apr 14, 2006 Page 136 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Timer C Register  
14.Timers  
(b15)  
b7  
(b8)  
b0  
b7  
b0  
Symbol  
TC  
Address  
0091h-0090h  
After Reset  
0000h  
Function  
RW  
RO  
Counts internal count source.  
0000h can be read w hen the TCC00 bit is set to 0 (count stops).  
Count value can be read w hen the TCC00 bit is set to 1 (count starts).  
Capture and Compare 0 Register  
(b15)  
b7  
(b8)  
b0  
b7  
b0  
Symbol  
TM0  
Address  
009Dh-009Ch  
After Reset  
0000h(2)  
Mode  
Function  
RW  
RO  
When the active edge of the measured pulse is input, store  
the value in the TC register  
Input capture mode  
Mode  
Function  
Setting Range  
RW  
RW  
Output compare mode(1)  
Store the value compared w ith timer C  
0000h to FFFFh  
NOTES:  
1. When setting a value in the TM0 register, set the TCC13 bit in the TCC1 register to 1 (compare 0 output selected).  
When the TCC13 bit is set to 0 (capture selected), no value can be w ritten.  
2. When the TCC13 bit in the TCC1 register is set to 1, the value is set to FFFFh.  
Compare 1 Register  
(b15)  
b7  
(b8)  
b0  
b7  
b0  
Symbol  
TM1  
Address  
After Reset  
FFFFh  
009Fh-009Eh  
Mode  
Function  
Setting Range  
RW  
RW  
Output compare mode  
Store the value compared w ith timer C  
0000h to FFFFh  
Figure 14.26 Registers TC, TM0, and TM1  
Rev.1.30 Apr 14, 2006 Page 137 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Timer C Control Register 0  
14.Timers  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
Address  
009Ah  
After Reset  
00h  
TCC0  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Timer C count start bit  
0 : Stops counting.  
TCC00  
TCC01  
1 : Starts counting.  
Timer C count source select  
bits(1)  
b2 b1  
RW  
RW  
RW  
RW  
RW  
0 0 : f1  
0 1 : f8  
1 0 : f32  
1 1 : fRING-fast  
TCC02  
TCC03  
TCC04  
____  
b4 b3  
INT3 interrupt / capture polarity  
select bits(1, 2)  
0 0 : Rising edge  
0 1 : Falling edge  
1 0 : Both edges  
1 1 : Do not set.  
(b5)  
Reserved bit  
Set to 0.  
____  
____  
INT3 interrupt generation  
0 : INT3 interrupt is generated in  
timing select bit(2, 3)  
synchronization w ith timer C count source.  
____  
TCC06  
RW  
1 : INT3 interrupt is generated w hen  
____  
INT3 interrupt is input(4).  
____  
____  
INT3 interrupt / capture input  
sw itch bit(1, 2)  
0 : INT3  
TCC07  
RW  
1 : fRING128  
NOTES:  
1. Change this bit w hen the TCC00 bit is set to 0 (count stops).  
2. The IR bit in the INT3IC register may be set to 1 (requests interrupt) w hen the TCC03, TCC04, TCC06, or TCC07 bit is  
rew ritten. Refer to  
.
12.5.5 Changing Interrupt Sources  
____  
3. When the TCC13 bit is set to 1 (output compare mode) and INT3 interrupt is input, regardless of the setting  
value of the TCC06 bit, an interr_u_p__t request is generated.  
____  
4. When using the INT3 filter, the INT3 interrupt is generated is synchronization w ith the clock for the digital filter.  
Figure 14.27 TCC0 Register  
Rev.1.30 Apr 14, 2006 Page 138 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer C Control Register 1  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
Address  
009Bh  
After Reset  
00h  
TCC1  
Bit Symbol  
Bit Name  
INT3 filter select bits(1)  
Function  
RW  
RW  
____  
b1 b0  
TCC10  
TCC11  
0 0 : No filter  
0 1 : Filter w ith f1 sampling  
1 0 : Filter w ith f8 sampling  
1 1 : Filter w ith f32 sampling  
RW  
RW  
RW  
Timer C counter reload select 0 : No reload  
bit(3)  
1 : Set TC register to 0000h w hen compare 1  
TCC12  
TCC13  
is matched.  
Compare 0 / capture select  
bit(2)  
0 : Selects capture (input capture mode).(3)  
1 : Selects compare 0 output (output  
compare mode).  
Compare 0 output mode select  
bits(3)  
b5 b4  
0 0 : CMPoutput remains unchanged even  
w hen compare 0 is matched.  
TCC14  
TCC15  
TCC16  
TCC17  
0 1 : CMPoutput is inverted w hen compare 0  
signal is matched.  
1 0 : CMPoutput is set to “L” w hen compare 0  
signal is matched.  
RW  
1 1 : CMPoutput is set to “H” w hen compare 0  
signal is matched.  
Compare 1 output mode select  
bits(3)  
b7 b6  
0 0 : CMPoutput remains unchanged even  
w hen compare 1 is matched.  
0 1 : CMPoutput is inverted w hen compare 1  
signal is matched.  
1 0 : CMPoutput is set to “L” w hen compare 1  
signal is matched.  
1 1 : CMPoutput is set to “H” w hen compare 1  
signal is matched.  
RW  
NOTES:  
____  
1. When the same value is sampled from the INT3 pin three times continuously, the input is determined.  
2. When the TCC00 bit in the TCC0 register is set to 0 (count stops), rew rite the TCC13 bit.  
3. When the TCC13 bit is set to 0 (input capture mode), set bits TCC12, and TCC14 to TCC17 to 0.  
Figure 14.28 TCC1 Register  
Rev.1.30 Apr 14, 2006 Page 139 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Timer C Output Control Register(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
TCOUT  
Address  
00FFh  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
CMPoutput enable bit 0  
CMPoutput enable bit 1  
CMPoutput enable bit 2  
CMPoutput enable bit 3  
CMPoutput enable bit 4  
CMPoutput enable bit 5  
CMPoutput invert bit 0  
0 : Disables CMPoutput from CMP0_0.  
1 : Enables CMPoutput from CMP0_0.  
TCOUT0  
TCOUT1  
TCOUT2  
TCOUT3  
TCOUT4  
TCOUT5  
0 : Disables CMPoutput from CMP0_1.  
1 : Enables CMPoutput from CMP0_1.  
RW  
RW  
RW  
RW  
RW  
0 : Disables CMPoutput from CMP0_2.  
1 : Enables CMPoutput from CMP0_2.  
0 : Disables CMPoutput from CMP1_0.  
1 : Enables CMPoutput from CMP1_0.  
0 : Disables CMPoutput from CMP1_1.  
1 : Enables CMPoutput from CMP1_1.  
0 : Disables CMPoutput from CMP1_2.  
1 : Enables CMPoutput from CMP1_2.  
0 : Does not invert CMPoutput from CMP0_0  
to CMP0_2.  
1 : Inverts CMPoutput from CMP0_0 to CMP0_2.  
TCOUT6  
TCOUT7  
RW  
RW  
CMPoutput invert bit 1  
0 : Does not invert CMPoutput from CMP1_0  
to CMP1_2.  
1 : Inverts CMPoutput from CMP1_0 to CMP1_2.  
NOTE:  
1. Set the bits w hich are not used for CMPoutput to 0.  
Figure 14.29 TCOUT Register  
Rev.1.30 Apr 14, 2006 Page 140 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.3.1 Input Capture Mode  
In input capture mode, the edge of the TCIN pin input signal or the fRING128 clock is used as a  
trigger to latch the timer value and generate an interrupt request. The TCIN input contains a digital  
filter, and this prevents errors caused by noise or the like from occurring. Table 14.11 shows the Input  
Capture Mode Specifications. Figure 14.30 shows an Operating Example in Input Capture Mode.  
Table 14.11 Input Capture Mode Specifications  
Item  
Count sources  
Specification  
f1, f8, f32, fRING-fast  
• Increment  
Count operations  
• Transfer the value in the TC register to the TM0 register at the active edge  
of the measured pulse.  
• The value in the TC register is set to 0000h when the count stops.  
Count start condition  
Count stop condition  
Interrupt request  
The TCC00 bit in the TCC0 register is set to 1 (count starts).  
The TCC00 bit in the TCC0 register is set to 0 (count stops).  
(1)  
• When the active edge of the measured pulse is input [INT3 interrupt].  
generation timing  
• When timer C overflows [timer C interrupt].  
Programmable I/O port or the measured pulse input (INT3 interrupt input)  
Programmable I/O port  
INT3/TCIN pin function  
P1_0 to P1_2, P3_3 to  
P3_5 pin functions  
Counter value reset timing When the TCC00 bit in the TCC0 register is set to 0 (capture disabled).  
(2)  
• The count value can be read out by reading the TC register.  
• The count value at the measured pulse active edge input can be read out  
by reading the TM0 register.  
Read from timer  
Write to timer  
Write to the TC and TM0 registers is disabled.  
Select functions  
• INT3/TCIN polarity select function  
Bits TCC03 to TCC04 can select the active edge of the measured pulse.  
• Digital filter function  
Bits TCC11 to TCC10 can select the digital filter sampling frequency.  
• Trigger select function  
The TCC07 bit can select the TCIN input or the fRING128.  
NOTES:  
1. The INT3 interrupt includes a digital filter delay and one count source (max.) delay.  
2. Read registers TC and TM0 in 16-bit unit.  
Rev.1.30 Apr 14, 2006 Page 141 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
FFFFh  
Overflow  
Count starts  
Measurement value 2  
Measurement  
value 3  
Measurement value1  
0000h  
Period  
Set to 0 by  
program  
Set to 1 by program  
1
0
TCC00 bit in  
TCC0 register  
The delay caused by digital filter and  
one count source cycle delay (max.)  
Measured pulse  
(TCIN pin input)  
1
0
Transmit  
Transmit  
(measured value 2)  
Transmit  
(measured value 3)  
(measured  
value 1)  
Transmit timing from  
timer C counter to  
TM0 register  
1
0
Indeterminate  
Indeterminate  
Measured  
value 1  
Measured  
value 3  
TM0 register  
Measured value 2  
Set to 0 when interrupt request is acknowledged, or set by program  
IR bit in  
INT3IC register  
1
0
Set to 0 when interrupt request  
is acknowledged, or set by  
program  
1
0
IR bit in  
TCIC register  
The above applies under the following conditions.  
TCC0 register TCC04 to TCC03 bits = 01b (capture input polarity is set for falling edge).  
TCC07 = 0 (INT3/TCIN input as capture input trigger)  
Figure 14.30 Operating Example in Input Capture Mode  
Rev.1.30 Apr 14, 2006 Page 142 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.3.2 Output Compare Mode  
In output compare mode, an interrupt request is generated when the value of the TC register matches  
the value of the TM0 or TM1 register. Table 14.12 shows the Output Compare Mode Specifications.  
Figure 14.31 shows an Operating Example in Output Compare Mode.  
Table 14.12 Output Compare Mode Specifications  
Item  
Count sources  
Specification  
f1, f8, f32, fRING-fast  
• Increment  
Count operations  
• The value in the TC register is set to 0000h when the count stops.  
The TCC00 bit in the TCC0 register is set to 1 (count starts).  
The TCC00 bit in the TCC0 register is set to 0 (count stops).  
Bits TCOUT0 to TCOUT5 in the TCOUT register are set to 1 (enables CMP  
Count start condition  
Counter stop condition  
Waveform output start  
condition  
(2)  
output).  
Waveform output stop  
condition  
Bits TCOUT0 to TCOUT5 in the TCOUT register are set to 0 (disables CMP  
output).  
Interrupt request  
generation timing  
• When a match occurs in compare circuit 0 [compare 0 interrupt].  
• When a match occurs in compare circuit 1 [compare 1 interrupt].  
• When time C overflows [timer C interrupt].  
INT3/TCIN pin function  
P1_0 to P1_2 pins and  
P3_0 to P3_2 pins  
functions  
Programmable I/O port or INT3 interrupt input  
(1)  
Programmable I/O port or CMP output  
Counter value reset timing When the TCC00 bit in the TCC0 register is set to 0 (count stops).  
(2)  
• The value in the compare register can be read out by reading registers  
TM0 and TM1.  
Read from timer  
• The count value can be read out by reading the TC register.  
(2)  
• Write to the TC register is disabled.  
Write to timer  
• The values written to registers TM0 and TM1 are stored in the compare  
register in the following timings:  
- When registers TM0 and TM1 are written to, if the TCC00 bit is set to 0  
(count stops).  
- When the counter overflows, if the TCC00 bit is set to 1 (during counting)  
and the TCC12 bit in the TCC1 register is set to 0 (free-run).  
- When the compare 1 matches a counter, if the TCC00 bit is set to 1 and  
the TCC12 bit is set to 1 (the TC register is set to 0000h at compare 1  
match).  
Select functions  
• Timer C counter reload select function  
The TCC12 bit in the TCC1 register can select whether the counter value  
in the TC register is set to 0000h when the compare circuit 1 match.  
• Bits TCC14 to TCC15 in the TCC1 register can be used to select the  
output level when compare circuit 0 matches. Bits TCC16 to TCC17 in the  
TCC1 register can be used to select the output level when compare circuit  
1 matches.  
• Bits TCOUT6 to TCOUT7 in the TCOUT register can select whether the  
output is inverted or not.  
NOTES:  
1. When the corresponding port data is 1, the waveform is output depending on the setting of the  
registers TCC1 and TCOUT. When the corresponding port data is 0, the fixed level is output (refer to  
Figure 14.25 Block Diagram of CMP Waveform Output Unit).  
2. Access registers TC, TM0, and TM1 in 16-bit units.  
Rev.1.30 Apr 14, 2006 Page 143 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
Match  
Value set in TM1 register  
Value set in TM0 register  
0000h  
Count starts  
Match  
Match  
Time  
Set to 1 by program  
1
0
TCC00 bit in  
TCC0 register  
Set to 0 when interrupt request is acknowledged, or set by program  
1
0
IR bit in  
CMP0IC register  
Set to 0 when interrupt request is  
acknowledged, or set by program  
1
0
IR bit in  
CMP1IC register  
1
0
CMP0_0 output  
1
0
CMP1_0 output  
Conditions:  
TCC12 bit in TCC1 register = 1 (TC register is set to 0000h at compare 1 match occurrence )  
TCC13 bit in TCC1 register = 1 (Compare 0 output selected)  
TCC15 to TCC14 bits in TCC1 register = 11b (CMP output level is set to high at compare 0 match occurrence)  
TCC17 to TCC16 bits in TCC1 register = 10b (CMP output level is set to low at compare 1 match occurrence)  
TCOUT6 bit in TCOUT register = 0 (not inverted)  
TCOUT7 bit in TCOUT register = 1 (inverted)  
TCOUT0 bit in TCOUT register = 1 (CMP0_0 output enabled)  
TCOUT3 bit in TCOUT register = 1 (CMP1_0 output enabled)  
P1_0 bit in P1 register = 1 (high)  
P3_0 bit in P3 register = 1 (high)  
Figure 14.31 Operating Example in Output Compare Mode  
Rev.1.30 Apr 14, 2006 Page 144 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
14.Timers  
14.3.3 Notes on Timer C  
Access registers TC, TM0, and TM1 in 16-bit units.  
The TC register can be read in 16-bit units. This prevents the timer value from being updated  
between when the low-order bytes and high-order bytes are being read.  
Example of reading timer C:  
MOV.W  
0090H,R0  
; Read out timer C  
Rev.1.30 Apr 14, 2006 Page 145 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
15. Serial Interface  
The serial interface consists of two channels (UART0 and UART1). Each UARTi (i = 0 or 1) has an exclusive  
timer to generate the transfer clock and operates independently.  
Figure 15.1 shows a UARTi (i = 0 or 1) Block Diagram. Figure 15.2 shows a UARTi Transmit/Receive Unit.  
UART0 has two modes: clock synchronous serial I/O mode and clock asynchronous serial I/O mode (UART  
mode).  
UART1 has only clock asynchronous serial I/O mode (UART mode).  
Figures 15.3 to 15.6 show the Registers Associated with UARTi.  
(UART0)  
RXD0  
TXD0  
UART reception  
Receive  
clock  
1/16  
Reception control  
circuit  
CKDIR = 0  
Internal  
CLK1 to CLK0 = 00b  
Clock  
Transmit/  
receive  
unit  
synchronous type  
f1  
f8  
= 01b  
= 10b  
U0BRG register  
1/(n0+1)  
UART transmission  
Transmit  
clock  
1/16  
1/2  
f32  
Transmission  
control circuit  
Clock  
synchronous type  
External  
CKDIR = 1  
CKDIR = 0  
CKDIR = 1  
Clock synchronous type  
(when internal clock is selected)  
Clock synchronous type  
(when external clock is selected)  
Clock synchronous type  
(when internal clock is selected)  
CLK  
polarity  
reversing  
circuit  
CLK0  
(UART1)  
RXD1  
TXD1  
UART reception  
1/16  
Receive clock  
Transmit clock  
Reception  
CLK1 to CLK0  
control circuit  
Transmit/  
receive  
unit  
= 00b  
U1BRG  
register  
f1  
Internal  
= 01b  
= 10b  
f8  
UART transmission  
1/(n1+1)  
1/16  
f32  
Transmission  
control circuit  
Figure 15.1  
UARTi (i = 0 or 1) Block Diagram  
Rev.1.30 Apr 14, 2006 Page 146 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
Clock  
synchronous  
type  
PRYE = 0  
PAR  
disabled  
Clock  
synchronous  
type  
UART (7 bits)  
UART (8 bits)  
1SP  
UART (7 bits)  
UARTi receive register  
SP  
PAR  
RXDi  
SP  
PAR  
Clock  
synchronous  
type  
UART  
2SP  
UART (9 bits)  
enabled  
PRYE = 1  
UART (8 bits)  
UART (9 bits)  
UiRB register  
D7 D6 D5 D4 D3 D2 D1 D0  
0
0
0
0
0
0
0
D8  
MSB/LSB conversion circuit  
Data bus high-order bits  
Data bus low-order bits  
MSB/LSB conversion circuit  
UiTB register  
D8  
D7 D6 D5 D4 D3 D2 D1 D0  
UART (8 bits)  
UART (9 bits)  
Clock  
synchronous  
type  
PRYE = 1  
PAR  
enabled  
UART (9 bits)  
UART  
2SP  
1SP  
SP  
PAR  
TXDi  
SP  
Clock  
synchronous  
type  
PAR  
disabled  
PRYE = 0  
UART (7 bits)  
UART (8 bits)  
UARTi transmit register  
UART (7 bits)  
Clock  
synchronous  
type  
0
i = 0 or 1  
SP: Stop bit  
PAR: Parity bit  
NOTE:  
1.Clock synchronous type is implemented in UART0 only.  
Figure 15.2  
UARTi Transmit/Receive Unit  
Rev.1.30 Apr 14, 2006 Page 147 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
UARTi Transmit Buffer Register (i = 0 or 1)(1, 2)  
(b15)  
b7  
(b8)  
b0  
b7  
b0  
Symbol  
U0TB  
Address  
00A3h-00A2h  
00ABh-00AAh  
Function  
After Reset  
Undefined  
Undefined  
U1TB  
Bit Symbol  
(b8-b0)  
RW  
WO  
Transmit data  
(b15-b9)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
NOTES:  
1. When the transfer data length is 9 bits, w rite data to high byte first, then low byte.  
2. Use the MOV instruction to w rite to this register.  
UARTi Receive Buffer Register (i = 0 or 1)(1)  
(b15)  
(b8)  
b7  
b0  
b7  
b0  
Symbol  
U0RB  
U1RB  
Address  
00A7h-00A6h  
00AFh-00AEh  
After Reset  
Undefined  
Undefined  
Function  
Bit Symbol  
(b7-b0)  
Bit Name  
RW  
Receive data (D7 to D0)  
Receive data (D8)  
RO  
RO  
(b8)  
(b11-b9)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is undefined.  
Overrun error flag(2)  
Framing error flag(2)  
Parity error flag(2)  
Error sum flag(2)  
0 : No overrun error  
1 : Overrun error  
OER  
FER  
PER  
SUM  
RO  
RO  
RO  
RO  
0 : No framing error  
1 : Framing error  
0 : No parity error  
1 : Parity error  
0 : No error  
1 : Error  
NOTES:  
1. Read out the UiRB register in 16-bit units.  
2. Bits SUM, PER, FER, and OER are set to 0 (no error) w hen bits SMD2 to SMD0 in the UiMR register are set to 000b  
(serial interface disabled) or the REbit in the UiC1 register is set to 0 (receive disabled). The SUM bit is set to 0 (no  
error) w hen bits PER, FER, and OER are set to 0 (no error). Bits PER and FER are set to 0 even w hen the higher byte  
of the UiRB register is read out.  
Also, bits PER and FER are set to 0 w hen reading the high-order byte of the UiRB register.  
UARTi Bit Rate Register (i = 0 or 1)(1, 2, 3)  
b7  
b0  
Symbol  
U0BRG  
U1BRG  
Address  
00A1h  
00A9h  
After Reset  
Undefined  
Undefined  
Function  
Assuming the set value is n, UiBRG divides the count source by n+1  
Setting Range  
00h to FFh  
RW  
WO  
NOTES:  
1. Write to this register w hile the serial I/O is neither transmitting nor receiving.  
2. Use the MOV instruction to w rite to this register.  
3. After setting the CLK0 to CLK1 bits of the UiC0 register, w rite to the UiBRG register.  
Figure 15.3  
Registers U0TB to U1TB, U0RB to U1RB, and U0BRG to U1BRG  
Rev.1.30 Apr 14, 2006 Page 148 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
UARTi Transmit/Receive Mode Register (i = 0 or 1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
U0MR  
Address  
00A0h  
After Reset  
00h  
U1MR  
00A8h  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Serial interface mode select  
bits(2)  
b2 b1 b0  
SMD0  
SMD1  
SMD2  
0 0 0 : Serial interface disabled  
0 0 1 : Clock synchronous serial I/O mode  
1 0 0 : UART mode transfer data 7 bits long  
1 0 1 : UART mode transfer data 8 bits long  
1 1 0 : UART mode transfer data 9 bits long  
Other than above : Do not set.  
RW  
RW  
Internal/external clock select  
bit(3)  
0 : Internal clock  
CKDIR  
STPS  
RW  
RW  
1 : External clock(1)  
Stop bit length select bit  
0 : 1 stop bit  
1 : 2 stop bits  
Odd/even parity select bit  
Enables w hen PRYE= 1.  
0 : Odd parity  
PRY  
RW  
1 : Even parity  
Parity enable bit  
Reserved bit  
0 : Parity disabled  
1 : Parity enabled  
PRY E  
RW  
RW  
(b7)  
Set to 0.  
NOTES:  
1. Set the PD1_6 bit in the PD1 register to 0 (input).  
2. Do not set bits SMD2 to SMD0 in the U1MR register to any values other than 000b, 100b, 101b, and 110b.  
3. Set the CKDIR bit in UART1 to 0 (internal clock).  
Figure 15.4  
Registers U0MR to U1MR  
Rev.1.30 Apr 14, 2006 Page 149 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
UARTi Transmit/Receive Control Register 0 (i = 0 or 1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
U0C0  
Address  
00A4h  
After Reset  
08h  
00ACh  
08h  
U1C0  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
BRG count source select  
bits(1)  
b1 b0  
0 0 : Selects f1.  
CLK0  
CLK1  
0 1 : Selects f8.  
1 0 : Selects f32.  
1 1 : Do not set.  
RW  
RW  
(b2)  
Reserved bit  
Set to 0.  
Transmit register empty  
flag  
0 : Data in transmit register (during transmit)  
1 : No data in transmit register (transmit completed)  
TXEPT  
RO  
(b4)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
Data output select bit  
0 : TXDi pin is for CMOS output.  
1 : TXDi pin is for N-channel open drain output.  
NCH  
RW  
CLK polarity select bit  
0 : Transmit data is output at falling edge of transfer  
clock and receive data is input at rising edge.  
1 : Transmit data is output at rising edge of transfer  
clock and receive data is input at falling edge.  
CKPOL  
UFORM  
RW  
RW  
Transfer format select bit 0 : LSB first  
1 : MSB first  
NOTE:  
1. If the BRG count source is sw itched, set the UiBRG register again.  
Figure 15.5  
Registers U0C0 to U1C0  
Rev.1.30 Apr 14, 2006 Page 150 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
UARTi Transmit/Receive Control Register 1 (i = 0 or 1)  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
U0C1  
Address  
00A5h  
After Reset  
02h  
U1C1  
00ADh  
02h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
Transmit enable bit  
0 : Disables transmission.  
1 : Enables transmission.  
TE  
TI  
Transmit buffer empty flag  
Receive enable bit  
0 : Data in UiTB register  
1 : No data in UiTB register  
RO  
RW  
RO  
0 : Disables reception.  
1 : Enables reception.  
RE  
RI  
Receive complete flag(1)  
0 : No data in UiRB register  
1 : Data in UiRB register  
(b7-b4)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
NOTE:  
1. The RI bit is set to 0 w hen the higher byte of the UiRB register is read out. Set the PD1_6 bit in the PD1 register to 0  
(input).  
UART Transmit/Receive Control Register 2  
b7 b6 b5 b4 b3 b2 b1 b0  
0
0
Symbol  
UCON  
Address  
00B0h  
After Reset  
00h  
Bit Symbol  
Bit Name  
Function  
RW  
RW  
UART0 transmit interrupt  
source select bit  
0 : Transmit buffer empty (TI = 1)  
1 : Transmit completed (TXEPT = 1)  
U0IRS  
U1IRS  
UART1 transmit interrupt  
source select bit  
0 : Transmit buffer empty (TI = 1)  
1 : Transmit completed (TXEPT = 1)  
RW  
RW  
RW  
UART0 continuous receive  
mode enable bit  
0 : Disables continuous receive mode.  
1 : Enables continuous receive mode.  
U0RRM  
(b3)  
Reserved bit  
Set to 0.  
UART1 pin (P3_7/TXD1,  
P4_5/RXD1) select bits  
b5 b4  
0 0 : P3_7, P4_5  
0 1 : P3_7, RXD1  
1 0 : Do not set.  
1 1 : TXD1, RXD1  
U1SEL0  
U1SEL1  
RW  
RW  
RW  
(b6)  
Reserved bit  
Set to 0.  
CNTR0 signal pin select bit(1)  
0 : P1_5/RXD0  
____  
P1_7/CNTR00/INT10  
_____  
CNTRSEL  
RW  
1 : P1_5/RXD0/CNTR01/INT11  
P1_7  
NOTE:  
__  
1. The CNTRSEL bit selects the input pin of the CNTR0 (INTI) signal.  
When the CNTR0 signal is output, it is output from the CNTR00 pin regardless of the CNTRSEL bit setting.  
Figure 15.6  
Registers U0C1 to U1C1, and UCON  
Rev.1.30 Apr 14, 2006 Page 151 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
15.1 Clock Synchronous Serial I/O Mode  
In clock synchronous serial I/O mode, data is transmitted and received using a transfer clock. Table 15.1  
lists the Clock Synchronous Serial I/O Mode Specifications. Table 15.2 lists the Registers Used and  
(1)  
Settings in Clock Synchronous Serial I/O Mode  
.
Table 15.1  
Clock Synchronous Serial I/O Mode Specifications  
Item Specification  
Transfer data format  
Transfer clocks  
• Transfer data length: 8 bits  
• CKDIR bit in U0MR register is set to 0 (internal clock): fi/(2(n+1)).  
fi = f1, f8, f32 n = value set in U0BRG register: 00h to FFh  
• The CKDIR bit is set to 1 (external clock): input from CLK0 pin.  
(1)  
Transmit start conditions  
Receive start conditions  
• Before transmission starts, the following requirements must be met.  
- The TE bit in the U0C1 register is set to 1 (transmission enabled).  
- The TI bit in the U0C1 register is set to 0 (data in the U0TB register).  
(1)  
• Before reception starts, the following requirements must be met.  
- The RE bit in the U0C1 register is set to 1 (reception enabled).  
- The TE bit in the U0C1 register is set to 1 (transmission enabled).  
- The TI bit in the U0C1 register is set to 0 (data in the U0TB register).  
Interrupt request  
generation timing  
• When transmitting, one of the following conditions can be selected.  
- The U0IRS bit is set to 0 (transmit buffer empty):  
When transferring data from the U0TB register to UART0 transmit  
register (when transmission starts).  
- The U0IRS bit is set to 1 (transmission completes):  
When completing data transmission from UARTi transmit register.  
• When receiving  
When data transfer from the UART0 receive register to the U0RB register  
(when reception completes).  
(2)  
Error detection  
Select functions  
• Overrun error  
This error occurs if the serial interface starts receiving the next data item  
before reading the U0RB register and receives the 7th bit of the next data.  
• CLK polarity selection  
Transfer data input/output can be selected to occur synchronously with the  
rising or the falling edge of the transfer clock.  
• LSB first, MSB first selection  
Whether transmitting or receiving data begins with bit 0 or begins with bit 7  
can be selected.  
• Continuous receive mode selection.  
Receive is enabled immediately by reading the U0RB register.  
NOTES:  
1. The programming and erasure endurance is defined on a per-block basis. If the programming and  
erasure endurance is n (n = 100 or 10,000), each block can be erased n times. For example, if 1,024  
1-byte writes are performed to block A, a 1-Kbyte block, and then the block is erased, the erase  
count stands at one. When performing 100 or more rewrites, the actual erase count can be reduced  
by executing programming operations in such a way that all blank areas are used before performing  
an erase operation. Avoid rewriting only particular blocks and try to average out the programming  
and erasure endurance of the blocks. It is also advisable to retain data on the erase count of each  
block and limit the number of erase operations to a certain number.  
2. If an overrun error occurs, the value of the U0RB register will be undefined. The IR bit in the S0RIC  
register remains unchanged.  
Rev.1.30 Apr 14, 2006 Page 152 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
(1)  
Table 15.2  
Registers Used and Settings in Clock Synchronous Serial I/O Mode  
Register  
U0TB  
Bit Function  
0 to 7  
0 to 7  
OER  
Set data transmission.  
U0RB  
Data reception can be read.  
Overrun error flag  
U0BRG  
U0MR  
0 to 7  
Set bit rate.  
SMD2 to SMD0  
CKDIR  
CLK1 to CLK0  
TXEPT  
NCH  
Set to 001b.  
Select the internal clock or external clock.  
Select the count source in the U0BRG register.  
Transmit register empty flag  
Select TXD0 pin output mode.  
Select the transfer clock polarity.  
Select the LSB first or MSB first.  
U0C0  
U0C1  
CKPOL  
UFORM  
TE  
Set this bit to 1 to enable transmission/reception.  
Transmit buffer empty flag  
TI  
RE  
Set this bit to 1 to enable reception.  
Reception complete flag  
RI  
UCON  
NOTE:  
U0IRS  
U0RRM  
CNTRSEL  
Select the UART0 transmit interrupt source.  
Set this bit to 1 to use continuous receive mode.  
Set this bit to 1 to select P1_5/RXD0/CNTR01/INT11.  
1. Set bits which are not in this table to 0 when writing to the above registers in clock synchronous  
serial I/O mode.  
Table 15.3 lists the I/O Pin Functions in Clock Synchronous Serial I/O Mode. The TXD0 pin outputs “H”  
level between the operating mode selection of UART0 and transfer start. (If the NCH bit is set to 1  
(N-channel open-drain output), this pin is in a high-impedance state.)  
Table 15.3  
I/O Pin Functions in Clock Synchronous Serial I/O Mode  
Function Selection Method  
Pin Name  
TXD0 (P1_4) Output serial data  
RXD0 (P1_5) Input serial data  
(Outputs dummy data when performing reception only.)  
PD1_5 bit in PD1 register = 0  
(P1_5 can be used as an input port when performing transmission  
only.)  
CLK0 (P1_6) Output transfer clock CKDIR bit in U0MR register = 0  
Input transfer clock  
CKDIR bit in U0MR register = 1  
PD1_6 bit in PD1 register = 0  
Rev.1.30 Apr 14, 2006 Page 153 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
• Example of transmit timing (when internal clock is selected)  
TC  
Transfer clock  
1
0
TE bit in U0C1  
register  
Set data in U0TB register  
TI bit in U0C1  
register  
1
0
Transfer from U0TB register to UART0 transmit register  
TCLK  
Stop pulsing because the TE bit is set to  
0
CLK0  
TXD0  
D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7  
D0 D1 D2 D3 D4 D5 D6 D7  
TXEPT bit in  
U0C0 register  
1
0
IR bit in S0TIC  
register  
1
0
Set to 0 when interrupt request is acknowledged, or set by a program  
TC=TCLK=2(n+1)/fi  
fi: Frequency of U0BRG count source (f1, f8, f32)  
n: Setting value to U0BRG register  
The above applies under the following settings:  
• CKDIR bit in U0MR register = 0 (internal clock)  
• CKPOL bit in U0C0 register = 0 (output transmit data at the falling edge and input receive data at the rising edge of the transfer clock)  
• U0IRS bit in UCON register = 0 (an interrupt request is generated when the transmit buffer is empty)  
• Example of receive timing (when external clock is selected)  
RE bit in U0C1  
register  
1
0
TE bit in U0C1  
register  
1
0
Write dummy data to U0TB register  
TI bit in U0C1  
register  
1
0
Transfer from U0TB register to UART0 transmit register  
1/fEXT  
CLK0  
RXD0  
Receive data is taken in  
D0 D1 D2 D3 D4 D5 D6 D7  
D0 D1 D2 D3 D4 D5  
Read out from U0RB register  
Transfer from UART0 receive register to  
U0RB register  
RI bit in U0C1  
register  
1
0
1
0
IR bit in S0RIC  
register  
Set to 0 when interrupt request is acknowledged, or set by a program  
The above applies under the following settings:  
• CKDIR bit in U0MR register = 1 (external clock)  
• CKPOL bit in U0C0 register = 0 (output transmit data at the falling edge and input receive data at the rising edge of the transfer clock)  
The following conditions are met when “H” is applied to the CLK0 pin before receiving data:  
• TE bit in U0C1 register = 1 (enables transmit)  
• RE bit in U0C1 register = 1 (enables receive)  
• Write dummy data to the U0TB register  
fEXT: Frequency of external clock  
Figure 15.7  
Transmit and Receive Timing Example in Clock Synchronous Serial I/O Mode  
Rev.1.30 Apr 14, 2006 Page 154 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
15.1.1 Polarity Select Function  
Figure 15.8 shows the Transfer Clock Polarity. Use the CKPOL bit in the U0C0 register to select the  
transfer clock polarity.  
• When the CKPOL bit in the U0C0 register = 0 (output transmit data at the falling  
edge and input the receive data at the rising edge of the transfer clock)  
CLK0(1)  
TXD0  
RXD0  
D0  
D0  
D1  
D1  
D2  
D2  
D3  
D3  
D4  
D4  
D5  
D5  
D6  
D6  
D7  
D7  
• When the CKPOL bit in the U0C0 register = 1 (output transmit data at the rising  
edge and input receive data at the falling edge of the transfer clock)  
CLK0(2)  
TXD0  
RXD0  
D0  
D0  
D1  
D1  
D2  
D2  
D3  
D3  
D4  
D4  
D5  
D5  
D6  
D6  
D7  
D7  
NOTES:  
1. When not transferring, the CLK0 pin level is “H”.  
2. When not transferring, the CLK0 pin level is “L”.  
Figure 15.8  
Transfer Clock Polarity  
15.1.2 LSB First/MSB First Select Function  
Figure 15.9 shows the Transfer Format. Use the UFORM bit in the U0C0 register to select the  
transfer format.  
• When UFORM bit in U0C0 register = 0 (LSB first)(1)  
CLK0  
TXD0  
RXD0  
D0  
D0  
D1  
D1  
D2  
D2  
D3  
D3  
D4  
D4  
D5  
D5  
D6  
D6  
D7  
D7  
• When UFORM bit in U0C0 register = 1 (MSB first)(1)  
CLK0  
TXD0  
RXD0  
D7  
D7  
D6  
D6  
D5  
D5  
D4  
D4  
D3  
D3  
D2  
D2  
D1  
D1  
D0  
D0  
NOTE:  
1. The above applies when the CKPOL bit in the U0C0 register is  
set to 0 (output transmit data at the falling edge and input receive  
data at the rising edge of the transfer clock).  
Figure 15.9  
Transfer Format  
Rev.1.30 Apr 14, 2006 Page 155 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
15.1.3 Continuous Receive Mode  
Continuous receive mode is selected by setting the U0RRM bit in the UCON register to 1 (enables  
continuous receive mode). In this mode, reading the U0RB register sets the TI bit in the U0C1  
register to 0 (data in the U0TB register). When the U0RRM bit is set to 1, do not write dummy data to  
the U0TB register by a program.  
Rev.1.30 Apr 14, 2006 Page 156 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
15.2 Clock Asynchronous Serial I/O (UART) Mode  
The UART mode allows data transmission and reception after setting the desired bit rate and transfer  
data format. Table 15.4 lists the UART Mode Specifications. Table 15.5 lists the Registers Used and  
Settings for UART Mode.  
Table 15.4  
UART Mode Specifications  
Item  
Specification  
Transfer data format  
• Character bit (transfer data): Selectable among 7, 8, or 9 bits  
• Start bit: 1 bit  
• Parity bit: Selectable among odd, even, or none  
• Stop bit: Selectable among 1 or 2 bits  
Transfer clocks  
• CKDIR bit in UiMR register is set to 0 (internal clock): fj/(16(n+1))  
fj = f1, f8, f32 n = value set in UiBRG register: 00h to FFh  
• CKDIR bit is set to 1 (external clock): fEXT/(16(n+1))  
fEXT: input from CLKi pin n = value set in UiBRG register: 00h to FFh  
Transmit start conditions  
Receive start conditions  
• Before transmission starts, the following are required.  
- TE bit in UiC1 register is set to 1 (transmission enabled).  
- TI bit in UiC1 register is set to 0 (data in UiTB register).  
• Before reception starts, the following are required.  
- RE bit in UiC1 register is set to 1 (reception enabled).  
- Start bit deleted  
Interrupt request  
generation timing  
• When transmitting, one of the following conditions can be selected.  
- UiIRS bit is set to 0 (transmit buffer empty):  
When transferring data from the UiTB register to UARTi transmit register  
(when transmit starts).  
- UiIRS bit is set to 1 (transfer ends):  
When serial interface completes transmitting data from the UARTi  
transmit register.  
• When receiving  
When transferring data from the UARTi receive register to UiRB register  
(when receive ends).  
(1)  
Error detection  
• Overrun error  
This error occurs if the serial interface starts receiving the next data item  
before reading the UiRB register and receives the bit preceding the final  
stop bit of the next data item.  
• Framing error  
This error occurs when the set number of stop bits is not detected.  
• Parity error  
This error occurs when parity is enabled, and the number of 1’s in parity  
and character bits do not match the number of 1’s set.  
• Error sum flag  
This flag is set is set to 1 when an overrun, framing, or parity error is  
generated.  
i = 0 to 1  
NOTE:  
1. If an overrun error occurs, the contents of the UiRB register will be undefined. The IR bit in the SiRIC  
register remains unchanged.  
Rev.1.30 Apr 14, 2006 Page 157 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
Table 15.5  
Registers Used and Settings for UART Mode  
Bit  
Register  
UiTB  
Function  
(1)  
0 to 8  
0 to 8  
Set transmit data  
.
(1)  
UiRB  
Receive data can be read  
.
OER,FER,PER,SUM Error flag  
UiBRG  
UiMR  
0 to 7  
Set a bit rate.  
SMD2 to SMD0  
Set to 100b when transfer data is 7 bits long.  
Set to 101b when transfer data is 8 bits long.  
Set to 110b when transfer data is 9 bits long.  
(2)  
CKDIR  
Select the internal clock or external clock.  
STPS  
Select the stop bit.  
PRY, PRYE  
CLK0, CLK1  
TXEPT  
Select whether parity is included and whether odd or even.  
Select the count source for the UiBRG register.  
Transmit register empty flag  
UiC0  
UiC1  
NCH  
Select TXDi pin output mode.  
CKPOL  
UFORM  
Set to 0.  
LSB first or MSB first can be selected when transfer data is 8 bits  
long. Set to 0 when transfer data is 7 or 9 bits long.  
Set to 1 to enable transmit.  
TE  
TI  
Transmit buffer empty flag  
RE  
Set to 1 to enable receive.  
RI  
Receive complete flag  
UCON  
U0IRS, U1IRS  
U0RRM  
CNTRSEL  
Select the source of UART0 transmit interrupt.  
Set to 0.  
Set to 1 to select P1_5/RXD0/CNTR01/INT11.  
NOTES:  
1. The bits used for transmit/receive data are as follows: Bits 0 to 6 when transfer data is 7 bits long;  
bits 0 to 7 when transfer data is 8 bits long; bits 0 to 8 when transfer data is 9 bits long.  
2. An external clock can be selected in UART0 only.  
Table 15.6 lists the I/O Pin Functions in Clock Asynchronous Serial I/O Mode. The TXDi pin outputs “H”  
level between the operating mode selection of UARTi (i = 0 or 1) and transfer start. (If the NCH bit is set  
to 1 (N-channel open-drain output), this pin is in a high-impedance state.)  
Table 15.6  
I/O Pin Functions in Clock Asynchronous Serial I/O Mode  
Function Selection Method  
Pin Name  
TXD0 (P1_4) Output serial data  
RXD0 (P1_5) Input serial data  
(Cannot be used as a port when performing reception only.)  
PD1_5 bit in PD1 register = 0  
(P1_5 can be used as an input port when performing  
transmission only.)  
CLK0 (P1_6) Programmable I/O port CKDIR bit in U0MR register = 0  
Input transfer clock  
CKDIR bit in U0MR register = 1  
PD1_6 bit in PD1 register = 0  
TXD1 (P3_7) Output serial data  
Bits U1SEL1 to U1SEL0 in UCON register = 11b (P3_7 can be  
used as a port when bits U1SEL1 to U1SEL0 = 01b and  
performing reception only.)  
RXD1 (P4_5) Input serial data  
PD4_5 bit in PD4 register = 0  
Bits U1SEL1 to U1SEL0 in UCON register = 01b or 11b  
(Cannot be used as a port when performing transmission only.)  
Rev.1.30 Apr 14, 2006 Page 158 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
• Transmit timing when transfer data is 8 bits long (parity enabled, 1 stop bit)  
TC  
Transfer clock  
TE bit in UiC1  
register  
1
0
Write data to UiTB register  
1
0
TI bit in UiC1  
register  
Stop pulsing  
because the TE bit is set to 0  
Transfer from UiTB register to UARTi transmit register  
Parity Stop  
Start bit  
bit  
bit  
TXDi  
ST D0 D1 D2 D3 D4 D5 D6 D7  
P
ST D0 D1 D2 D3 D4 D5 D6 D7  
P
SP  
ST D0 D1  
SP  
1
0
TXEPT bit in  
UiC0 register  
IR bit in SiTIC  
register  
1
0
Set to 0 when interrupt request is acknowledged, or set by a program  
TC = 16 (n + 1) / fj or 16 (n + 1) / fEXT  
The above timing diagram applies under the following conditions:  
• PRYE bit in UiMR register = 1 (parity enabled)  
• STPS bit in UiMR register = 0 (1 stop bit)  
fj: Frequency of UiBRG count source (f1, f8, f32)  
fEXT: Frequency of UiBRG count source (external clock)  
• UiIRS bit in UCON register = 1 (an interrupt request is generated when transmit completes)  
n: Value set in UiBRG register  
I = 0 or 1  
• Transmit timing when transfer data is 9 bits long (parity disabled, 2 stop bits)  
TC  
Transfer clock  
TE bit in UiC1  
register  
1
0
Write data to UiTB register  
1
0
TI bit in UiC1  
register  
Transfer from UiTB register to UARTi transmit register  
Stop  
bit  
Stop  
bit  
Start bit  
TXDi  
ST D0 D1 D2 D3 D4 D5 D6 D7 D8  
ST D0 D1 D2 D3 D4 D5 D6 D7 D8 SP SP  
ST D0 D1  
SP SP  
TXEPT bit in  
UiC0 register  
1
0
IR bit in SiRIC  
register  
1
0
Set to 0 when interrupt request is acknowledged, or set by a program  
The above timing diagram applies under the following conditions:  
• PRYE bit in UiMR register = 0 (parity disabled)  
• STPS bit in UiMR register = 1 (2 stop bits)  
TC = 16 (n + 1) / fj or 16 (n + 1) / fEXT  
fj: Frequency of UiBRG count source (f1, f8, f32)  
fEXT: Frequency of UiBRG count source (external clock)  
n: Value set in UiBRG register  
• UiIRS bit in UCON register = 0 (an interrupt request is generated when transmit buffer is empty)  
i = 0 or 1  
Figure 15.10 Transmit Timing in UART Mode  
Rev.1.30 Apr 14, 2006 Page 159 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
• Example of receive timing when transfer data is 8 bits long (parity disabled, one stop bit)  
UiBRG output  
1
0
UiC1 register  
RE bit  
Stop bit  
Start bit  
RXDi  
D0  
D1  
D7  
Determined to be “L”  
Receive data taken in  
Transfer clock  
Reception triggered when transfer clock  
is generated by falling edge of start bit  
Transferred from UARTi receive  
register to UiRB register  
UiC1 register  
RI bit  
1
0
SiRIC register  
IR bit  
1
0
Set to 0 when interrupt request is accepted, or set by a program  
The above timing diagram applies when the register bits are set as follows:  
• PRYE bit in UiMR register = 0 (parity disabled)  
• STPS bit in UiMR register = 0 (1 stop bit)  
i = 0 or 1  
Figure 15.11 Receive Timing in UART Mode  
15.2.1 CNTR0 Pin Select Function  
The CNTRSEL bit in the UCON register selects whether P1_7 is used as the CNTR00/INT10 input  
pin or P1_5 is used as the CNTR01/INT11 input pin.  
When the CNTRSEL bit is set to 0, P1_7 is used as the CNTR00/INT10 pin and when the CNTRSEL  
bit is set to 1, P1_5 is used as the CNTR01/INT11 pin.  
Rev.1.30 Apr 14, 2006 Page 160 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
15.2.2 Bit Rate  
In UART mode, the bit rate is the frequency divided by the UiBRG (i = 0 or 1) register.  
UART Mode  
• Internal clock selected  
UiBRG register setting value =  
fj  
- 1  
Bit Rate × 16  
Fj: Count source frequency of the UiBRG register (f1, f8, or f32)  
• External clock selected  
UiBRG register setting value =  
fEXT  
Bit Rate × 16  
- 1  
fEXT: Count source frequency of the UiBRG register (external clock)  
i = 0 or 1  
Figure 15.12 Calculation Formula of UiBRG (i = 0 or 1) Register Setting Value  
Table 15.7  
Bit Rate Setting Example in UART Mode (Internal Clock Selected)  
System Clock = 20 MHz  
System Clock = 8 MHz  
BRG  
Count  
Source  
Bit Rate  
(bps)  
UiBRG  
Actual Time  
(bps)  
UiBRG  
Setting Value Time (bps)  
Actual  
Error (%)  
Error (%)  
Setting Value  
129(81h)  
64(40h)  
32(20h)  
129(81h)  
86(56h)  
64(40h)  
42(2Ah)  
39(27h)  
32(20h)  
23(17h)  
1200  
2400  
f8  
f8  
f8  
f1  
f1  
f1  
f1  
f1  
f1  
f1  
1201.92  
2403.85  
4734.85  
9615.38  
14367.82  
19230.77  
29069.77  
31250.00  
37878.79  
52083.33  
0.16  
0.16  
-1.36  
0.16  
-0.22  
0.16  
0.94  
0.00  
-1.36  
1.73  
51(33h)  
25(19h)  
12(0Ch)  
51(33h)  
34(22h)  
25(19h)  
16(10h)  
15(0Fh)  
12(0Ch)  
9(09h)  
1201.92  
2403.85  
0.16  
0.16  
0.16  
0.16  
-0.79  
0.16  
2.12  
0.00  
0.16  
-2.34  
4800  
4807.69  
9600  
9615.38  
14400  
19200  
28800  
31250  
38400  
51200  
14285.71  
19230.77  
29411.76  
31250.00  
38461.54  
50000.00  
i = 0 or 1  
Rev.1.30 Apr 14, 2006 Page 161 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
15. Serial Interface  
15.3 Notes on Serial Interface  
When reading data from the U0RB register either in the clock asynchronous serial I/O mode or in the  
clock synchronous serial I/O mode. Ensure the data is read in 16-bit units. When the high-order byte  
of the U0RB register is read, bits PER and FER in the U0RB register and the RI bit in the U0C1  
register are set to 0.  
Example (when reading receive buffer register):  
MOV.W  
00A6H,R0  
; Read the U0RB register  
When writing data to the U0TB register in the clock asynchronous serial I/O mode with 9-bit transfer  
data length, write data to the high-order byte first then the low-order byte, in 8-bit units.  
Example (when reading transmit buffer register):  
MOV.B  
MOV.B  
#XXH,00A3H ; Write the high-order byte of U0TB register  
#XXH,00A2H ; Write the low-order byte of U0TB register  
Rev.1.30 Apr 14, 2006 Page 162 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
16.Comparator  
16. Comparator  
The comparator compares the electric potential input from the VREF pin with analog input.  
The analog input shares pins P1_0 to P1_3. Therefore, when using these pins, ensure the corresponding  
port direction bits are set to 0 (input mode).  
The result of comparator conversion is stored in the AD register.  
Table 16.1 lists the Comparator Performance. Figure 16.1 shows a Comparator Block Diagram.  
Figures 16.2 and 16.3 show the Associated Comparator Registers.  
Table 16.1  
Comparator Performance  
Item  
Performance  
Comparator conversion  
method  
Comparator  
0 V to AVCC  
Analog input voltage  
(1)  
4.2 V AVCC 5.5 V fRING-fast, f1, f2, f4  
2.7 V AVCC < 4.2 V f2, f4  
Operating clock φAD  
Absolute accuracy  
Operating mode  
Analog input pin  
AVCC = 2.7 to 5.5 V ± 20 mV  
One-shot and repeat modes  
4 pins (AN8 to AN11)  
Comparator conversion start • Software trigger  
Set the ADST bit in the ADCON0 register to 1 (comparator conversion  
conditions  
starts).  
• Capture  
A timer Z interrupt request is generated while the ADST bit is set to 1.  
Conversion rate per pin  
NOTE:  
10φAD cycles  
1. The φAD frequency must be 10 MHz or below.  
Rev.1.30 Apr 14, 2006 Page 163 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
16.Comparator  
Comparator conversion  
rate selection  
CKS0 = 1  
fRING-fast  
CKS1 = 1  
f1  
f2  
CKS0 = 0  
CKS0 = 1  
φAD  
CKS1 = 0  
f4  
CKS0 = 0  
VREF  
ADCON0  
Vref  
VIN  
AD register  
Data bus  
Decoder  
b7  
Comparator  
ADCAP = 0  
ADGSEL0 = 0  
Software trigger  
Trigger  
Timer Z  
interrupt request  
ADGSEL0 = 1  
ADCAP = 1  
CH2 to CH0 = 100b  
P1_0/AN8  
P1_1/AN9  
P1_2/AN10  
P1_3/AN11  
CH2 to CH0 = 101b  
CH2 to CH0 = 110b  
CH2 to CH0 = 111b  
CH0 to CH2, ADGSEL0, and CKS0: Bits in ADCON0 register  
CKS1, VCUT: Bits in ADCON1 register  
Figure 16.1  
Comparator Block Diagram  
Rev.1.30 Apr 14, 2006 Page 164 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
16.Comparator  
A/D Control Register 0(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
1
1
Symbol  
ADCON0  
Bit Symbol  
Address  
00D6h  
After Reset  
00000XXXb  
Function  
Bit Name  
RW  
RW  
Analog input pin select  
bits(2)  
b2 b1 b0  
CH0  
CH1  
1 0 0 : AN8  
1 0 1 : AN9  
1 1 0 : AN10  
RW  
RW  
RW  
RW  
RW  
1 1 1 : AN11  
Other than above : Do not set.  
CH2  
Comparator conversion  
operating mode select bit(3) 1 : Repeat mode  
0 : On-shot mode  
MD  
Analog input group select 0 : Disabled  
bit(5)  
ADGSEL0  
ADCAP  
ADST  
1 : Enabled (AN8 to AN11)  
0 : Starts at softw are trigger (ADST bit).  
1 : Starts at capture (requests timer Z interrupt).  
Comparator conversion  
automatic start bit  
Comparator conversion  
start flag  
0 : Disables comparator conversion.  
1 : Starts comparator conversion.  
RW  
Frequency select bit 0  
[When CKS1 in ADCON1 register = 0]  
0 : Selects f4.  
1 : Selects f2.  
[When CKS1 in ADCON1 register = 1]  
0 : Selects f1.(4)  
CKS0  
RW  
1 : fRING-fast  
NOTES:  
1. If the ADCON0 register is rew ritten during comparator conversion, the conversion result is undefined.  
2. Bits CH0 to CH2 are enabled w hen the ADGSEL0 bit is set to 1. After setting the ADGSEL0 bit to 1, w rite to bits CH0  
to CH2.  
3. When changing comparator conversion operating mode, set the analog input pin again.  
4. Set the øAD frequency to 10 MHz or below .  
5. To use the comparator, set the ADGSEL0 bit to 1.  
A/D Control Register 1(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0  
0 0 0 0  
Symbol  
ADCON1  
Bit Symbol  
Address  
00D7h  
After Reset  
00h  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
Frequency select bit 1  
Reserved bits  
Refer to the description of the CKS0 bit in the  
ADCON0 register function  
CKS1  
RW  
RW  
(b7-b5)  
Set to 0.  
NOTE:  
1. If the ADCON1 register is rew ritten during comparator conversion, the conversion result is undefined.  
Figure 16.2  
Registers ADCON0 and ADCON1  
Rev.1.30 Apr 14, 2006 Page 165 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
16.Comparator  
A/D Control Register 2(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
0
Symbol  
ADCON2  
Bit Symbol  
Address  
00D4h  
After Reset  
00h  
Bit Name  
Function  
RW  
RW  
(b0)  
Reserved bit  
Set to 0.  
Comparator function select bit  
Reserved bits  
0 : Not used  
1 : Used  
CMPSEL  
RW  
RW  
(b3-b2)  
Set to 0.  
(b7-b4)  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
NOTE:  
1. If the ADCON2 register is rew ritten during comparator conversion, the conversion result is undefined.  
A/D Register  
b7 b6 b5 b4 b3 b2 b1 b0  
Symbol  
AD  
Address  
00C0h  
After Reset  
Undefined  
Function  
RW  
Nothing is assigned. If necessary, set to 0.  
When read, the content is 0.  
Comparator conversion result  
RO  
Figure 16.3  
Registers ADCON2 and AD  
Rev.1.30 Apr 14, 2006 Page 166 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
16.Comparator  
16.1 One-Shot Mode  
In one-shot mode, the input voltage on one selected pin is comparator converted once. Table 16.2 lists  
the One-Shot Mode Specifications. Figure 16.4 shows Registers ADCON0 and ADCON1 in One-Shot  
Mode.  
Table 16.2  
One-Shot Mode Specifications  
Item  
Specification  
Function  
The input voltage on one pin selected by bits CH2 to CH0 is comparator  
converted once.  
Start conditions  
• When the ADCAP bit is set to 0 (software trigger),  
set the ADST bit to 1 (comparator conversion starts).  
• When the ADCAP bit is set to 1 (capture),  
a timer Z interrupt request is generated while the ADST bit is set to 1.  
Stop conditions  
• Comparator conversion is completed (the ADST bit is set to 0).  
• The ADST bit is set to 0.  
Interrupt request  
generation timing  
Input pin  
Comparator conversion completed  
Select one of AN8 to AN11  
Read AD register  
Reading of comparator  
conversion result  
Rev.1.30 Apr 14, 2006 Page 167 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
A/D Control Register 0(1)  
16.Comparator  
b7 b6 b5 b4 b3 b2 b1 b0  
1 0 1  
Symbol  
Address  
00D6h  
After Reset  
00000XXXb  
Function  
ADCON0  
Bit Symbol  
Bit Name  
RW  
RW  
Analog input pin select  
bits(2)  
b2 b1 b0  
CH0  
CH1  
1 0 0 : AN8  
1 0 1 : AN9  
1 1 0 : AN10  
RW  
RW  
RW  
RW  
RW  
1 1 1 : AN11  
Other than above : Do not set.  
CH2  
Comparator conversion  
operating mode select bit(3)  
0 : One-shot mode  
MD  
Analog input group select 0 : Disabled  
bit(5)  
ADGSEL0  
ADCAP  
ADST  
1 : Enabled (AN8 to AN11)  
Comparator conversion  
automatic start bit  
0 : Starts at softw are trigger (ADST bit).  
1 : Starts at capture (requests timer Z interrupt).  
Comparator conversion  
start flag  
0 : Disables comparator conversion.  
1 : Starts comparator conversion.  
RW  
Frequency select bit 0  
[When CKS1 in ADCON1 register = 0]  
0 : Selects f4.  
1 : Selects f2.  
[When CKS1 in ADCON1 register = 1]  
0 : Selects f1.(4)  
CKS0  
RW  
1 : fRING-fast  
NOTES:  
1. If the ADCON0 register is rew ritten during comparator conversion, the conversion result is undefined.  
2. Bits CH0 to CH2 are enabled w hen the ADGSEL0 bit is set to 1. After setting the ADGSEL0 bit to 1, w rite to bits CH0  
to CH2.  
3. When changing comparator conversion operating mode, set the analog input pin again.  
4. Set the øAD frequency to 10 MHz or below .  
5. To use the comparator, set the ADGSEL0 bit to 1.  
A/D Control Register 1(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0  
0 0 0 0  
Symbol  
ADCON1  
Bit Symbol  
Address  
00D7h  
After Reset  
00h  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
Frequency select bit 1  
Reserved bits  
Refer to the description of the CKS0 bit in the  
ADCON0 register function  
CKS1  
RW  
RW  
(b7-b5)  
Set to 0.  
NOTE:  
1. If the ADCON1 register is rew ritten during comparator conversion, the conversion result is undefined.  
Figure 16.4  
Registers ADCON0 and ADCON1 in One-Shot Mode  
Rev.1.30 Apr 14, 2006 Page 168 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
16.Comparator  
16.2 Repeat Mode  
In repeat mode, the input voltage on one selected pin is comparator converted repeatedly. Table 16.3  
lists the Repeat Mode Specifications. Figure 16.5 shows Registers ADCON0 and ADCON1 in Repeat  
Mode.  
Table 16.3  
Repeat Mode Specifications  
Item  
Specification  
Function  
The Input voltage on one pin selected by bits CH2 to CH0, and the  
ADGSEL0 bit is comparator converted repeatedly  
Start conditions  
• When the ADCAP bit is set to 0 (software trigger),  
set the ADST bit to 1 (comparator conversion starts).  
• When the ADCAP bit is set to 1 (capture),  
a timer Z interrupt request is generated while the ADST bit is set to 1.  
Stop condition  
Set the ADST bit to 0.  
Interrupt request generation Not generated  
timing  
Input pin  
Selects one of AN8 to AN11.  
Read AD register.  
Reading of result of  
comparator conversion  
Rev.1.30 Apr 14, 2006 Page 169 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
A/D Control Register 0(1)  
16.Comparator  
b7 b6 b5 b4 b3 b2 b1 b0  
1 1 1  
Symbol  
ADCON0  
Address  
00D6h  
After Reset  
00000XXXb  
Function  
Bit Symbol  
Bit Name  
Analog input pin select  
bits(2)  
RW  
RW  
b2 b1 b0  
CH0  
CH1  
1 0 0 : AN8  
1 0 1 : AN9  
1 1 0 : AN10  
RW  
RW  
RW  
RW  
RW  
1 1 1 : AN11  
Other than above : Do not set.  
CH2  
Comparator conversion  
1 : Repeat mode  
MD  
operating mode select bit(3)  
Analog input group select 0 : Disabled  
ADGSEL0  
ADCAP  
ADST  
bit(5)  
1 : Enabled (AN8 to AN11)  
Comparator conversion  
automatic start bit  
0 : Starts at softw are trigger (ADST bit).  
1 : Starts at capture (requests timer Z interrupt).  
Comparator conversion  
start flag  
0 : Disables comparator conversion.  
1 : Starts comparator conversion.  
RW  
Frequency select bit 0  
[When CKS1 in ADCON1 register = 0]  
0 : Selects f4.  
1 : Selects f2.  
[When CKS1 in ADCON1 register = 1]  
0 : Selects f1.(4)  
CKS0  
RW  
1 : fRING-fast  
NOTES:  
1. If the ADCON0 register is rew ritten during comparator conversion, the conversion result is undefined.  
2. Bits CH0 to CH2 are enabled w hen the ADGSEL0 bit is set to 1. After setting the ADGSEL0 bit to 1, w rite to bits CH0  
to CH2.  
3. When changing comparator conversion operating mode, set the analog input pin again.  
4. Set the øAD frequency to 10 MHz or below .  
5. To use the comparator, set the ADGSEL0 bit to 1.  
A/D Control Register 1(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0 0  
0 0 0 0  
Symbol  
ADCON1  
Bit Symbol  
Address  
00D7h  
After Reset  
00h  
Bit Name  
Function  
RW  
RW  
(b3-b0)  
Reserved bits  
Set to 0.  
Frequency select bit 1  
Reserved bits  
Refer to the description of the CKS0 bit in the  
ADCON0 register function.  
CKS1  
RW  
RW  
(b7-b5)  
Set to 0.  
NOTE:  
1. If the ADCON1 register is rew ritten during comparator conversion, the conversion result is undefined.  
Figure 16.5  
Registers ADCON0 and ADCON1 in Repeat Mode  
Rev.1.30 Apr 14, 2006 Page 170 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
16.Comparator  
16.3 Notes on Comparator  
Write to each bit (other than bit 6) in the ADCON0 register, each bit in the ADCON1 register, or the  
CMPSEL bit in the ADCON2 register when the comparator conversion stops (before a trigger  
occurs).  
When changing comparator conversion operating mode, select an analog input pin again.  
To use in one-shot mode, ensure that the comparator conversion is completed and the AD register is  
read. The IR bit in the ADIC register or the ADST bit in the ADCON0 register can determine whether  
the comparator conversion is completed.  
To use in repeat mode, use the undivided main clock as the CPU clock.  
If the ADST bit in the ADCON0 register is set to 0 (comparator conversion stops) by a program and  
the comparator conversion is forcibly terminated during the comparator conversion operation, the  
conversion result of the comparator will be indeterminate. If the ADST bit is set to 0 by a program, do  
not use the AD register value.  
Connect a 0.1 µF capacitor between the VCC/AVCC pin and VSS/AVSS pin.  
Rev.1.30 Apr 14, 2006 Page 171 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17. Flash Memory Version  
17.1 Overview  
In the flash memory version, rewrite operations to the flash memory can be performed in three modes;  
CPU rewrite, standard serial I/O, and parallel I/O.  
Table 17.1 lists the Flash Memory Version Performance (refer to Table 1.1 Functions and  
Specifications for R8C/18 Group and Table 1.2 Functions and Specifications for R8C/19 Group for  
items not listed in Table 17.1).  
Table 17.1  
Flash Memory Version Performance  
Item  
Specification  
3 modes (CPU rewrite, standard serial I/O, and parallel I/O mode)  
Refer to Figure 17.1 and Figure 17.2  
Byte unit  
Flash memory operating mode  
Division of erase block  
Programming method  
Erase method  
Block erase  
Programming and erasure  
control method  
Program and erase control by software command  
Rewrite control method  
Rewrite control for blocks 0 and 1 by FMR02 bit in FMR0 register.  
Rewrite control for block 0 by FMR15 bit and block 1 by FMR16 bit in  
FMR1 register.  
5 commands  
Number of commands  
Programming Blocks 0 and 1 R8C/18 Group: 100 times; R8C/19 Group: 1,000 times  
and erasure  
(program ROM)  
(1)  
Blocks A and B 10,000 times  
endurance  
(2)  
(data flash)  
ID code check function  
ROM code protect  
Standard serial I/O mode supported  
Parallel I/O mode supported  
NOTES:  
1. Definition of programming and erasure endurance  
The programming and erasure endurance is defined on a per-block basis. If the programming and  
erasure endurance is n (n = 100 or 10,000), each block can be erased n times. For example, if 1,024  
1-byte writes are performed to block A, a 1-Kbyte block, and then the block is erased, the erase  
count stands at one. When performing 100 or more rewrites, the actual erase count can be reduced  
by executing programming operations in such a way that all blank areas are used before performing  
an erase operation. Avoid rewriting only particular blocks and try to average out the programming  
and erasure endurance of the blocks. It is also advisable to retain data on the erase count of each  
block and limit the number of erase operations to a certain number.  
2. Blocks A and B are implemented only in the R8C/19 Group.  
Rev.1.30 Apr 14, 2006 Page 172 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Parallel I/O Mode  
Table 17.2  
Flash Memory Rewrite Modes  
Flash Memory  
Rewrite Mode  
Function  
CPU Rewrite Mode  
Standard Serial I/O Mode  
User ROM area is rewritten by User ROM area is rewritten User ROM area is  
executing software commands by a dedicated serial  
rewritten by a dedicated  
parallel programmer.  
from the CPU.  
programmer.  
EW0 mode: Rewritable in any  
area other than  
flash memory  
EW1 mode: Rewritable in flash  
memory  
Areas which can User ROM area  
be rewritten  
User ROM area  
User ROM area  
Operating mode Single chip mode  
Boot mode  
Parallel I/O mode  
ROM  
None  
Serial programmer  
Parallel programmer  
programmer  
Rev.1.30 Apr 14, 2006 Page 173 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.2 Memory Map  
The flash memory contains a user ROM area and a boot ROM area (reserved area). Figure 17.1 shows  
a Flash Memory Block Diagram for R8C/18 Group. Figure 17.2 shows a Flash Memory Block Diagram  
for R8C/19 Group.  
The user ROM area of the R8C/19 Group contains an area (program ROM) which stores MCU operating  
programs and the blocks A and B (data flash) each 1 byte in size.  
The user ROM area is divided into several blocks. The user ROM area can be rewritten in CPU rewrite  
mode and standard serial I/O and parallel I/O modes.  
When rewriting blocks 0 and 1 in CPU rewrite mode, set the FMR02 bit in the FMR0 register to 1 (rewrite  
enabled). When the FMR15 bit in the FMR1 register is set to 0 (rewrite enabled), block 0 is rewritable.  
When the FMR16 bit is set to 0 (rewrite enabled), block 1 is rewritable.  
The rewrite control program for standard serial I/O mode is stored in the boot ROM area before  
shipment. The boot ROM area and the user ROM area share the same address, but have separate  
memory areas.  
8 Kbyte ROM product:  
0E000h  
4 Kbyte ROM product:  
Block 0: 8 Kbytes(1)  
Program ROM  
0F000h  
0FFFFh  
Block 0: 4 Kbytes(1)  
User ROM area  
0FFFFh  
0C000h  
User ROM area  
16 Kbyte ROM product:  
Block 1: 8 Kbytes(1)  
12 Kbyte ROM product:  
Block 1: 4 Kbytes(1)  
Program ROM  
0E000h  
0D000h  
0DFFFh  
0E000h  
0DFFFh  
0E000h  
Block 0: 8 Kbytes(1)  
User ROM area  
Block 0: 8 Kbytes(1)  
User ROM area  
8 Kbytes  
0FFFFh  
NOTES:  
0FFFFh  
0FFFFh  
Boot ROM area  
(reserved area)(2)  
1. When the FMR02 bit in the FMR0 register is set to 1 (rewrite enabled) and the FMR15 bit in the FMR1  
register to 0 (rewrite enabled), block 0 is rewritable. When the FMR16 bit is set to 0 (rewrite enabled),  
block 1 is rewritable (only for CPU rewrite mode).  
2. This area is for storing the boot program provided by Renesas Technology.  
Figure 17.1  
Flash Memory Block Diagram for R8C/18 Group  
Rev.1.30 Apr 14, 2006 Page 174 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
8 Kbyte ROM product  
4 Kbyte ROM product  
Block A: 1 Kbyte  
02400h  
02BFFh  
02400h  
02BFFh  
Block A: 1 Kbyte  
Block B: 1 Kbyte  
Data flash  
Block B: 1 Kbyte  
0E000h  
0FFFFh  
Block 0: 8 Kbytes(1)  
User ROM area  
Program ROM  
0F000h  
0FFFFh  
Block 0: 4 Kbytes(1)  
User ROM area  
16 Kbyte ROM product  
Block A: 1 Kbyte  
12 Kbyte ROM product  
Block A: 1 Kbyte  
02400h  
02BFFh  
02400h  
02BFFh  
Data flash  
Block B: 1 Kbyte  
Block B: 1 Kbyte  
0C000h  
Program ROM  
0E000h  
Block 1: 8 Kbytes(1)  
0D000h  
Block 1: 4 Kbytes(1)  
0DFFFh  
0E000h  
0DFFFh  
0E000h  
Block 0: 8 Kbytes(1)  
User ROM area  
Block 0: 8 Kbytes(1)  
User ROM area  
8 Kbytes  
0FFFFh  
NOTES:  
0FFFFh  
0FFFFh  
Boot ROM area  
(reserved area)(2)  
1. When the FMR02 bit in the FMR0 register is set to 1 (rewrite enabled) and the FMR15 bit in the  
FMR1 register to 0 (rewrite enabled), block 0 is rewritable. When the FMR16 bit is set to 0 (rewrite  
enabled), block 1 is rewritable (only for CPU rewrite mode).  
2. This area is for storing the boot program provided by Renesas Technology.  
Figure 17.2  
Flash Memory Block Diagram for R8C/19 Group  
Rev.1.30 Apr 14, 2006 Page 175 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.3 Functions to Prevent Rewriting of Flash Memory  
Standard serial I/O mode has an ID code check function, and parallel I/O mode has a ROM code protect  
function to prevent the flash memory from being read or rewritten easily.  
17.3.1 ID Code Check Function  
This function is used in standard serial I/O mode. Unless the flash memory is blank, the ID codes sent  
from the programmer and the ID codes written in the flash memory are checked to see if they match.  
If the ID codes do not match, the commands sent from the programmer are not acknowledged. The  
ID codes consist of 8 bits of data each, the areas of which, beginning with the first byte, are 00FFDFh,  
00FFE3h, 00FFEBh, 00FFEFh, 00FFF3h, 00FFF7h, and 00FFFBh. Write programs in which the ID  
codes are set at these addresses and write them to the flash memory.  
Address  
00FFDFh to 00FFDCh  
00FFE3h to 00FFE0h  
00FFE7h to 00FFE4h  
00FFEBh to 00FFE8h  
00FFEFh to 00FFECh  
00FFF3h to 00FFF0h  
00FFF7h to 00FFF4h  
00FFFBh to 00FFF8h  
00FFFFh to 00FFFCh  
ID1  
ID2  
Undefined instruction vector  
Overflow vector  
BRK instruction vector  
Address match vector  
Single step vector  
ID3  
ID4  
Oscillation stop detection/watchdog  
timer/voltage monitor 2 vector  
ID5  
ID6  
Address break  
(Reserved)  
ID7  
(Note 1)  
Reset vector  
4 bytes  
NOTE:  
1. The OFS register is assigned to 00FFFFh. Refer to  
Figure 13.2 Registers OFS and WDC and Figure  
13.3 Registers WDTR and WDTS for OFS register  
details.  
Figure 17.3  
Address for Stored ID Code  
Rev.1.30 Apr 14, 2006 Page 176 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.3.2 ROM Code Protect Function  
The ROM code protect function disables reading or changing the contents of the on-chip flash  
memory by the OFS register in parallel I/O mode. Figure 17.4 shows the OFS Register.  
The ROM code protect function is enabled by writing 0 to the ROMCP1 bit and 1 to the ROMCR bit. It  
disables reading or changing the contents of the on-chip flash memory.  
Once ROM code protect is enabled, the content in the internal flash memory cannot be rewritten in  
parallel I/O mode. To disable ROM code protect, erase the block including the OFS register with CPU  
rewrite mode or standard serial I/O mode.  
Option Function Select Register(1)  
b7 b6 b5 b4 b3 b2 b1 b0  
1 1 1  
1
Symbol  
OFS  
Address  
0FFFFh  
Before Shipment  
FFh(2)  
Bit Symbol  
Bit Name  
Watchdog timer start  
select bit  
Function  
RW  
RW  
0 : Starts w atchdog timer automatically after reset.  
1 : Watchdog timer is inactive after reset.  
WDTON  
(b1)  
Reserved bit  
Set to 1.  
RW  
RW  
RW  
RW  
ROM code protect  
disabled bit  
0 : ROM code protect disabled  
1 : ROMCP1enabled  
ROMCR  
ROM code protect bit  
0 : ROM code protect enabled  
1 : ROM code protect disabled  
ROMCP1  
(b6-b4)  
Reserved bits  
Set to 1.  
Count source protect  
0 : Count source protect mode enabled after reset.  
mode after reset select 1 : Count source protect mode disabled after reset.  
bit  
CSPROINI  
RW  
NOTES:  
1. The OFS register is on the flash memory. Write to the OFS register w ith a program.  
2. If the block including the OFS register is erased, FFh is set to the OFS register.  
Figure 17.4  
OFS Register  
Rev.1.30 Apr 14, 2006 Page 177 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4 CPU Rewrite Mode  
In CPU rewrite mode, the user ROM area can be rewritten by executing software commands from the  
CPU. Therefore, the user ROM area can be rewritten directly while the MCU is mounted on a board  
without using a ROM programmer. Execute the program and block erase commands only to blocks in the  
user ROM area.  
The flash module has an erase-suspend function when an interrupt request is generated during an erase  
operation in CPU rewrite mode. It performs an interrupt process after the erase operation is halted  
temporarily. During erase-suspend, the user ROM area can be read by a program.  
In case an interrupt request is generated during an auto-program operation in CPU rewrite mode, the  
flash module has a program-suspend function which performs the interrupt process after the  
auto-program operation. During program-suspend, the user ROM area can be read by a program.  
CPU rewrite mode has an erase write 0 mode (EW0 mode) and an erase write 1 mode (EW1 mode).  
Table 17.3 lists the Differences between EW0 Mode and EW1 Mode.  
Table 17.3  
Differences between EW0 Mode and EW1 Mode  
Item EW0 Mode  
Single-chip mode  
EW1 Mode  
Single-chip mode  
Operating mode  
Areas in which a rewrite  
control program can be  
located  
User ROM area  
User ROM area  
Areas in which a rewrite  
control program can be  
executed  
Necessary to transfer to any area other  
than the flash memory (e.g., RAM) before possible.  
executing.  
Executing directly in user ROM area is  
Areas which can be  
rewritten  
User ROM area  
None  
User ROM area  
However, blocks which contain a rewrite  
(1)  
control program are excluded.  
Software command  
restrictions  
• Program and block erase commands  
• Cannot be run on any block which  
contains a rewrite control program  
• Read status register command cannot be  
executed  
Modes after program or  
erase  
Read status register mode  
Operating  
Read array mode  
CPU status during auto-  
write and auto-erase  
Hold state (I/O ports hold state before the  
command is executed)  
Flash memory status  
detection  
• Read bits FMR00, FMR06, and FMR07 Read bits FMR00, FMR06, and FMR07 in  
in the FMR0 register by a program.  
• Execute the read status register  
command and read bits SR7, SR5, and  
SR4 in the status register.  
the FMR0 register by a program.  
Conditions for transition to  
erase-suspend  
Set bits FMR40 and FMR41 in the FMR4 The FMR40 bit in the FMR4 register is set  
register to 1 by a program.  
to 1 and the interrupt request of the  
enabled maskable interrupt is generated.  
Conditions for transitions to Set bits FMR40 and FMR42 in the FMR4 The FMR40 bit in the FMR4 register is set  
program-suspend  
register to 1 by a program.  
to 1 and the interrupt request of the  
enabled maskable interrupt is generated.  
CPU clock  
5 MHz or below  
No restriction (on clock frequency to be  
used)  
NOTE:  
1. When the FMR02 bit in the FMR0 register is set to 1 (rewrite enabled), rewriting block 0 is enabled by setting  
the FMR15 bit in the FMR1 register to 0 (rewrite enabled), and rewriting block 1 is enabled by setting the  
FMR16 bit to 0 (rewrite enabled).  
Rev.1.30 Apr 14, 2006 Page 178 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4.1 EW0 Mode  
The MCU enters CPU rewrite mode and software commands can be acknowledged by setting the  
FMR01 bit in the FMR0 register to 1 (CPU rewrite mode enabled). In this case, since the FMR11 bit in  
the FMR1 register is set to 0, EW0 mode is selected.  
Use software commands to control program and erase operations. The FMR0 register or the status  
register can be used to determine when program and erase operations complete.  
During auto-erasure, set the FMR40 bit to 1 (erase-suspend enabled) and the FMR41 bit to 1  
(request erase-suspend). Wait for td(SR-ES) and ensure that the FMR46 bit is set to 1 (read enabled)  
before accessing the user ROM area. The auto-erase operation can be restarted by setting the  
FMR41 bit to 0 (erase restarts).  
To enter program-suspend during the auto-program operation, set the FMR40 bit to 1 (suspend  
enabled) and the FMR42 bit to 1 (request program-suspend). Wait for td(SR-ES) and ensure that the  
FMR46 bit is set to 1 (read enabled) before accessing the user ROM area. The auto-program  
operation can be restarted by setting the FMR42 bit to 0 (program restarts).  
17.4.2 EW1 Mode  
The MCU is switched to EW1 mode by setting the FMR11 bit to 1 (EW1 mode) after setting the  
FMR01 bit to 1 (CPU rewrite mode enabled).  
The FMR0 register can be used to determine when program and erase operations complete. Do not  
execute the read status register command in EW1 mode.  
To enable the erase-suspend function during auto-erasure, execute the block erase command after  
setting the FMR40 bit to 1 (erase-suspend enabled). The interrupt to enter erase-suspend should be  
in interrupt enabled status. After waiting for td(SR-ES) after the block erase command is executed,  
the interrupt request is acknowledged.  
When an interrupt request is generated, the FMR41 bit is automatically set to 1 (request  
erase-suspend) and the auto-erase operation suspends. If an auto-erase operation does not  
complete (FMR00 bit is 0) after an interrupt process completes, the auto-erase operation restarts by  
setting the FMR41 bit to 0 (erase restarts).  
To enable the program-suspend function during auto-programming, execute the program command  
after setting the FMR40 bit to 1 (suspend enabled). The interrupt to enter a program-suspend should  
be in interrupt enabled status. After waiting for td(SR-ES) after the program command is executed, an  
interrupt request is acknowledged.  
When an interrupt request is generated, the FMR42 bit is automatically set to 1 (request  
program-suspend) and the auto-program operation suspends. When the auto-program operation  
does not complete (FMR00 bit is 0) after the interrupt process completes, the auto-program operation  
can be restarted by setting the FMR42 bit to 0 (programming restarts).  
Rev.1.30 Apr 14, 2006 Page 179 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Figure 17.5 shows the FMR0 Register. Figure 17.7 shows the FMR4 Register.  
17.4.2.1 FMR00 Bit  
This bit indicates the operating status of the flash memory. The bits value is 0 during programming,  
erasure, or erase-suspend mode; otherwise, it is 1.  
17.4.2.2 FMR01 Bit  
The MCU is made ready to accept commands by setting the FMR01 bit to 1 (CPU rewrite mode).  
17.4.2.3 FMR02 Bit  
Rewriting of blocks 0 and 1 does not accept the program or block erase commands if the FMR02 bit  
is set to 0 (rewrite disabled).  
Rewriting of blocks 0 and 1 is controlled by bits FMR15 and FMR16 if the FMR02 bit is set to 1  
(rewrite enabled).  
17.4.2.4 FMSTP Bit  
This bit is used to initialize the flash memory control circuits, and also to reduce the amount of current  
consumed by the flash memory. Access to the flash memory is disabled by setting the FMSTP bit to  
1. Therefore, the FMSTP bit must be written to by a program located outside of the flash memory.  
In the following cases, set the FMSTP bit to 1:  
When flash memory access resulted in an error while erasing or programming in EW0 mode  
(FMR00 bit not reset to 1 (ready)).  
When entering on-chip oscillator mode (main clock stops).  
Figure 17.11 shows a flowchart to be followed before and after entering on-chip oscillator mode (main  
clock stop). Note that when going to stop or wait mode while the CPU rewrite mode is disabled, the  
FMR0 register does not need to be set because the power for the flash memory is automatically  
turned off and is turned back on again after returning from stop or wait mode.  
17.4.2.5 FMR06 Bit  
This is a read-only bit indicating the status of an auto-program operation. The bit is set to 1 when a  
program error occurs; otherwise, it is set to 0. Refer to 17.4.5 Full Status Check for details.  
17.4.2.6 FMR07 Bit  
This is a read-only bit indicating the status of an auto-erase operation. The bit is set to 1 when an  
erase error occurs; otherwise, it is set to 0. Refer to 17.4.5 Full Status Check for details.  
17.4.2.7 FMR11 Bit  
Setting this bit to 1 (EW1 mode) places the MCU in EW1 mode.  
17.4.2.8 FMR15 Bit  
When the FMR02 bit is set to 1 (rewrite enabled) and the FMR15 bit is set to 0 (rewrite enabled),  
block 0 accepts program and block erase commands.  
17.4.2.9 FMR16 Bit  
When the FMR02 bit is set to 1 (rewrite enabled) and the FMR16 bit is set to 0 (rewrite enabled),  
block 1 accepts program and block erase commands.  
Rev.1.30 Apr 14, 2006 Page 180 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4.2.10 FMR40 Bit  
The suspend function is enabled by setting the FMR40 bit to 1 (enable).  
17.4.2.11 FMR41 Bit  
In EW0 mode, the MCU enters erase-suspend mode when the FMR41 bit is set to 1 by a program.  
The FMR41 bit is automatically set to 1 (request erase-suspend) when an interrupt request of an  
enabled interrupt is generated in EW1 mode, and then the MCU enters erase-suspend mode.  
Set the FMR41 bit to 0 (erase restarts) when the auto-erase operation restarts.  
17.4.2.12 FMR42 Bit  
In EW0 mode, the MCU enters program-suspend mode when the FMR42 bit is set to 1 by a program.  
The FMR42 bit is automatically set to 1 (request program-suspend) when an interrupt request of an  
enabled interrupt is generated in EW1 mode, and then the MCU enters program-suspend mode.  
Set the FMR42 bit to 0 (program restart) when the auto-program operation restarts.  
17.4.2.13 FMR43 Bit  
When the auto-erase operation starts, the FMR43 bit is set to 1 (erase execution in progress). The  
FMR43 bit remains set to 1 (erase execution in progress) during erase-suspend operation.  
When the auto-erase operation ends, the FMR43 bit is set to 0 (erase not executed).  
17.4.2.14 FMR44 Bit  
When the auto-program operation starts, the FMR44 bit is set to 1 (program execution in progress).  
The FMR44 bit remains set to 1 (program execution in progress) during program-suspend operation.  
When the auto-program operation ends, the FMR44 bit is set to 0 (program not executed).  
17.4.2.15 FMR46 Bit  
The FMR46 bit is set to 0 (reading disabled) during auto-erase execution and set to 1 (reading  
enabled) in erase-suspend mode. Do not access the flash memory while this bit is set to 0.  
17.4.2.16 FMR47 BIt  
Power consumption when reading flash memory can be reduced by setting the FMR47 bit to 1  
(enabled).  
Rev.1.30 Apr 14, 2006 Page 181 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Flash Memory Control Register 0  
b7 b6 b5 b4 b3 b2 b1 b0  
0 0  
Symbol  
Address  
01B7h  
After Reset  
00000001b  
Function  
FMR0  
Bit Symbol  
Bit Name  
RW  
RO  
__  
0 : Busy (w riting or erasing in progress)  
1 : Ready  
RY/BY status flag  
FMR00  
FMR01  
FMR02  
CPU rew rite mode select bit(1)  
Block 0, 1 rew rite enable bit(2, 6)  
Flash memory stop bit(3, 5)  
0 : CPU rew rite mode disabled  
1 : CPU rew rite mode enabled  
RW  
RW  
0 : Disables rew rite.  
1 : Enables rew rite.  
0 : Enables flash memory operation.  
1 : Stops flash memory  
FMSTP  
RW  
(enters low -pow er consumption state  
and flash memory is reset).  
(b5-b4)  
Reserved bits  
Set to 0.  
RW  
RO  
RO  
Program status flag(4)  
Erase status flag(4)  
0 : Completed successfully  
1 : Terminated by error  
FMR06  
FMR07  
0 : Completed successfully  
1 : Terminated by error  
NOTES:  
1. To set this bit to 1, set it to 1 immediately after setting it first to 0. Do not generate an interrupt betw een setting the bit  
to 0 and setting it to 1. Enter read array mode and set this bit to 0.  
2. Set this bit to 1 immediately after setting it first to 0 w hile the FMR01 bit is set to 1.  
Do not generate an interrupt betw een setting the bit to 0 and setting it to 1.  
3. Set this bit by a program located in a space other than the flash memory.  
4. This bit is set to 0 by executing the clear status command.  
5. This bit is enabled w hen the FMR01 bit is set to 1 (CPU rew rite mode). When the FMR01 bit is set to 0, w riting 1 to the  
FMSTPbit causes the FMSTPbit to be set to 1. The flash memory does not enter low -pow er consumption state nor is  
it reset.  
6. When setting the FMR01 bit to 0 (CPU rew rite mode disabled), the FMR02 bit is set to 0 (disables rew rite).  
Figure 17.5  
FMR0 Register  
Rev.1.30 Apr 14, 2006 Page 182 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Flash Memory Control Register 1  
b7 b6 b5 b4 b3 b2 b1 b0  
1
0 0 0  
Symbol  
FMR1  
Bit Symbol  
Address  
01B5h  
After Reset  
1000000Xb  
Function  
Bit Name  
RW  
RO  
(b0)  
Reserved bit  
When read, the content is undefined.  
EW1 mode select bit(1, 2)  
Reserved bits  
0 : EW0 mode  
1 : EW1 mode  
FMR11  
RW  
RW  
RW  
RW  
RW  
(b4-b2)  
Set to 0.  
Block 0 rew rite disable bit(2, 3)  
Block 1rew rite disable bit(2, 3)  
Reserved bit  
0 : Enables rew rite.  
1 : Disables rew rite.  
FMR15  
FMR16  
0 : Enables rew rite.  
1 : Disables rew rite.  
(b7)  
Set to 1.  
NOTES:  
1. To set this bit to 1, set it to 1 immediately after setting it first to 0 w hile the FMR01 bit is set to 1 (CPU rew rite mode  
enable) . Do not generate an interrupt betw een setting the bit to 0 and setting it to 1.  
2. This bit is set to 0 by setting the FMR01 bit to 0 (CPU rew rite mode disabled).  
3. When the FMR01 bit is set to 1 (CPU rew rite mode enabled), bits FMR15 and FMR16 can be w ritten to.  
To set this bit to 0, set it to 0 immediately after setting it first to 1.  
To set this bit to 1, set it to 1.  
Figure 17.6  
FMR1 Register  
Rev.1.30 Apr 14, 2006 Page 183 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Flash Memory Control Register 4  
b7 b6 b5 b4 b3 b2 b1 b0  
0
Symbol  
Address  
01B3h  
After Reset  
01000000b  
Function  
FMR4  
Bit Symbol  
Bit Name  
RW  
RW  
Erase-suspend function  
enable bit(1)  
Erase-suspend request bit(2)  
0 : Disable  
1 : Enable  
FMR40  
FMR41  
FMR42  
FMR43  
FMR44  
0 : Erase restart  
RW  
RW  
RO  
RO  
1 : Erase-suspend request  
Program-suspend request bit(3) 0 : Program restart  
1 : Program-suspend request  
0 : Erase not executed  
Erase command flag  
Program command flag  
Reserved bit  
1 : Erase execution in progress  
0 : Program not executed  
1 : Program execution in progress  
Set to 0.  
(b5)  
RO  
RO  
RW  
Read status flag  
0 : Disables reading.  
1 : Enables reading.  
FMR46  
FMR47  
Low -pow er consumption read 0 : Disable  
mode enable bit(1, 4)  
1 : Enable  
NOTES:  
1. To set this bit to 1, set it to 1 immediately after setting it first to 0. Do not generate an interrupt betw een setting the bit  
to 0 and setting it to 1.  
2. This bit is enabled w hen the FMR40 bit is set to 1 (enable) and it can be w ritten to during the period betw een issuing  
an erase command and completing the erase. (This bit is set to 0 during the periods other than the above.)  
In EW0 mode, it can be set to 0 and 1 by a program.  
In EW1 mode, it is automatically set to 1 if a maskable interrupt is generated during an erase operation w hile the  
FMR40 bit is set to 1. Do not set this bit to 1 by a program (0 can be w ritten).  
3. The FMR42 bit is enabled only w hen the FMR40 bit is set to 1 (enable) and programming to the FMR42 bit is enabled  
until auto-programming ends after a program command is generated. (This bit is set to 0 during periods other than the  
above.)  
In EW0 mode, 0 or 1 can be programmed to the FMR42 bit by a program.  
In EW1 mode, the FMR42 bit is automatically set to 1 by generating a maskable interrupt during auto-programming  
w hen the FMR40 bit is set to 1. 1 cannot be w ritten to the FMR42 bit by a program.  
4. Use this mode only in low -speed on-chip oscillator mode.  
Figure 17.7  
FMR4 Register  
Rev.1.30 Apr 14, 2006 Page 184 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Figure 17.8 shows the Timing of Suspend Operation.  
Erasure  
starts  
Erasure  
suspends  
Programming Programming Programming Programming Erasure  
Erasure  
ends  
starts  
suspends  
restarts  
ends  
restarts  
During  
erasure  
During  
erasure  
During  
programming  
During  
programming  
1
0
FMR00 bit in  
FMR0 register  
1
0
FMR46 bit in  
FMR4 register  
1
0
FMR44 bit in  
FMR4 register  
1
0
FMR43 bit in  
FMR4 register  
Check that the  
FMR43 bit is set to 1  
(during erasure  
execution), and that  
the erase-operation  
has not ended.  
Check that the  
Check the status,  
and that the  
programming ends  
normally.  
Check the status,  
and that the  
erasure ends  
normally.  
FMR44 bit is set to 1  
(during program  
execution), and that  
the program has not  
ended.  
Figure 17.8  
Timing of Suspend Operation  
Rev.1.30 Apr 14, 2006 Page 185 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Figure 17.9 shows How to Set and Exit EW0 Mode. Figure 17.10 shows How to Set and Exit EW1  
Mode.  
EW0 Mode Operating Procedure  
Rewrite control program  
Set the FMR01 bit by writing 0 and then 1  
(CPU rewrite mode enabled)(2)  
Set registers CM0 and CM1(1)  
Execute software commands  
Transfer a rewrite control program which uses CPU  
rewrite mode to any area other than the flash  
Execute the read array command(3)  
memory.  
Write 0 to the FMR01 bit  
Jump to the rewrite control program which has been  
transferred to any area other than the flash memory.  
(The subsequent process is executed by the rewrite  
control program in an area other than the flash  
memory.)  
(CPU rewrite mode disabled)  
Jump to a specified address in the flash memory  
NOTES:  
1. Select 5 MHz or below for the CPU clock by the CM06 bit in the CM0 register and bits CM16 to CM17 in the CM1 register.  
2. To set the FMR01 bit to 1, write 0 to the FMR01 bit before writing 1. Do not generate an interrupt between writing 0 and 1.  
3. Disable the CPU rewrite mode after executing the read array command.  
Figure 17.9  
How to Set and Exit EW0 Mode  
EW1 Mode Operating Procedure  
Program in ROM  
Write 0 to the FMR01 bit before writing 1 (CPU  
rewrite mode enabled)(1)  
Write 0 to the FMR11 bit before writing 1 (EW1  
mode)  
Execute software commands  
Write 0 to the FMR01 bit  
(CPU rewrite mode disabled)  
NOTE:  
1. To set the FMR01 bit to 1, write 0 to the FMR01 bit before writing 1.  
Do not generate an interrupt between writing 0 and 1.  
Figure 17.10 How to Set and Exit EW1 Mode  
Rev.1.30 Apr 14, 2006 Page 186 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
On-chip oscillator mode  
(main clock stops) program  
Transfer an on-chip oscillator mode (main clock stops)  
program to an area other then the flash memory.  
Write 0 to the FMR01 bit before writing 1  
(CPU rewrite mode enabled)  
Write 1 to the FMSTP bit (flash memory stops.  
low power consumption mode)(1)  
Jump to the on-chip oscillator mode (main clock stops)  
program which has been transferred to an area other  
than the flash memory.  
(The subsequent processing is executed by the program  
in an area other than the flash memory.)  
Switch the clock source for the CPU clock.  
Turn XIN off.  
Process in on-chip oscillator mode (main  
clock stops)  
Turn main clock onwait until oscillation  
stabilizesswitch the clock source for CPU  
clock(2)  
Write 0 to the FMSTP bit  
(flash memory operation)  
Write 0 to the FMR01 bit  
(CPU rewrite mode disabled)  
Wait until the flash memory circuit stabilizes  
(30 µs)(3)  
Jump to a specified address in the flash memory  
NOTES:  
1. Set the FMR01 bit to 1 (CPU rewrite mode) before setting the FMSTP bit to 1 .  
2. Before switching to a different clock source for the CPU, make sure the designated clock is stable.  
3. Insert a 30 µs wait time in a program. Do not access the flash memory during this wait time.  
Figure 17.11 Process to Reduce Power Consumption in On-Chip Oscillator Mode (Main Clock  
Stops)  
Rev.1.30 Apr 14, 2006 Page 187 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4.3 Software Commands  
The software commands are described below. Read or write commands and data in 8-bit units.  
Table 17.4 Software Commands  
Command  
First Bus Cycle  
Address  
Second Bus Cycle  
Mode Address  
Data  
(D7 to D0)  
FFh  
Data  
(D7 to D0)  
Mode  
Read array  
Write  
×
Read status register  
Clear status register  
Program  
Write  
Write  
Write  
Write  
×
70h  
Read  
×
SRD  
×
50h  
WA  
×
40h  
Write  
Write  
WA  
BA  
WD  
Block erase  
20h  
D0h  
SRD: Status register data (D7 to D0)  
WA: Write address (ensure the address specified in the first bus cycle is the same address as the write  
address specified in the second bus cycle.)  
WD: Write data (8 bits)  
BA: Given block address  
×: Any specified address in the user ROM area  
17.4.3.1 Read Array Command  
The read array command reads the flash memory.  
The MCU enters read array mode when FFh is written in the first bus cycle. When the read address is  
entered in the following bus cycles, the content of the specified address can be read in 8-bit units.  
Since the MCU remains in read array mode until another command is written, the contents of multiple  
addresses can be read continuously.  
17.4.3.2 Read Status Register Command  
The read status register command is used to read the status register.  
When 70h is written in the first bus cycle, the status register can be read in the second bus cycle.  
(Refer to 17.4.4 Status Register.) When reading the status register, specify an address in the user  
ROM area.  
Do not execute this command in EW1 mode.  
17.4.3.3 Clear Status Register Command  
The clear status register command sets the status register to 0.  
When 50h is written in the first bus cycle, bits FMR06 to FMR07 in the FMR0 register and SR4 to SR5  
in the status register are set to 0.  
Rev.1.30 Apr 14, 2006 Page 188 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4.3.4 Program Command  
The program command writes data to the flash memory in 1-byte units.  
By writing 40h in the first bus cycle and data to the write address in the second bus cycle, an  
auto-program operation (data program and verify) will start. Make sure the address value specified in  
the first bus cycle is the same address as the write address specified in the second bus cycle.  
The FMR00 bit in the FMR0 register can be used to determine whether auto-programming has  
completed. The FMR00 bit is set to 0 during auto-programming and set to 1 when auto-programming  
completes.  
The FMR06 bit in the FMR0 register can be used to determine the result of auto-programming after it  
has been finished. (Refer to 17.4.5 Full Status Check.)  
Do not write additions to the already programmed addresses.  
When the FMR02 bit in the FMR0 register is set to 0 (rewriting disabled), or the FMR02 bit is set to 1  
(rewrite enabled) and the FMR15 bit in the FMR1 register is set to 1 (rewriting disabled), program  
commands targeting block 0 are not acknowledged. When the FMR16 bit is set to 1 (rewriting  
disabled), program commands targeting block 1 are not acknowledged.  
In EW1 mode, do not execute this command for any address which a rewrite control program is  
allocated.  
In EW0 mode, the MCU enters read status register mode at the same time auto-programming starts  
and the status register can be read. The status register bit 7 (SR7) is set to 0 at the same time  
auto-programming starts and set back to 1 when auto-programming completes. In this case, the MCU  
remains in read status register mode until the next read array command is written. The status register  
can be read to determine the result of auto-programming after/auto-programming has completed.  
Start  
Write the command code 40h to  
the write address  
Write data to the write address  
No  
FMR00 = 1?  
Yes  
Full status check  
Program completed  
Figure 17.12 Program Command  
Rev.1.30 Apr 14, 2006 Page 189 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4.3.5 Block Erase  
When 20h is written in the first bus cycle and D0h is written to a given address of a block in the  
second bus cycle, an auto-erase operation (erase and verify) of the specified block starts.  
The FMR00 bit in the FMR0 register can be used to determine whether auto-erasure has completed.  
The FMR00 bit is set to 0 during auto-erasure and set to 1 when auto-erasure completes.  
The FMR07 bit in the FMR0 register can be used to determine the result of auto-erasure after  
auto-erasure has completed. (Refer to 17.4.5 Full Status Check.)  
When the FMR02 bit in the FMR0 register is set to 0 (rewriting disable) or the FMR02 bit is set to 1  
(rewrite enabled) and the FMR15 bit in the FMR1 register is set to 1 (rewriting disable), the block  
erase commands targeting block 0 are not acknowledged. When the FMR16 bit is set to 1 (rewriting  
disable), the block erase commands targeting block 1 are not acknowledged.  
Do not use the block erase command during program-suspend.  
Figure 17.13 shows the Block Erase Command (When Not Using Erase-Suspend Function). Figure  
17.14 shows the Block Erase Command (When Using Erase-Suspend Function).  
In EW1 mode, do not execute this command for any address to which a rewrite control program is  
allocated.  
In EW0 mode, the MCU enters read status register mode at the same time auto-erasure starts and  
the status register can be read. The status register bit 7 (SR7) is set to 0 at the same time  
auto-erasure starts and set back to 1 when auto-erasure completes. In this case, the MCU remains in  
read status register mode until the next read array command is written.  
Start  
Write the command code 20h  
Write D0h to a given block  
address  
No  
FMR00 = 1?  
Yes  
Full status check  
Block erase completed  
Figure 17.13 Block Erase Command (When Not Using Erase-Suspend Function)  
Rev.1.30 Apr 14, 2006 Page 190 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
EW0 Mode  
Start  
Maskable interrupt(1, 2)  
FMR40 = 1  
FMR41 = 1  
No  
Write the command code 20h  
FMR46 = 1 ?  
Yes  
Write D0h to any block  
address  
Access flash memory  
FMR41 = 0  
REIT  
No  
FMR00 = 1?  
Yes  
Full status check  
Block erase completed  
EW1 Mode  
Start  
Maskable interrupt(2)  
Access flash memory  
REIT  
FMR40 = 1  
Write the command code 20h  
Write D0h to any block address  
FMR41 = 0  
No  
FMR00 = 1 ?  
Yes  
Full status check  
Block erase completed  
NOTES:  
1. In EW0 mode, the interrupt vector table and interrupt routine for interrupts to be used should be allocated  
to the RAM area.  
2. td(SR-ES) is needed until the interrupt request is acknowledged after it is generated. The interrupt to enter  
erase-suspend should be in interrupt enabled status.  
Figure 17.14 Block Erase Command (When Using Erase-Suspend Function)  
Rev.1.30 Apr 14, 2006 Page 191 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4.4 Status Register  
The status register indicates the operating status of the flash memory and whether an erase or  
program operation has completed normally or in error. Status of the status register can be read by bits  
FMR00, FMR06, and FMR07 in the FMR0 register.  
Table 17.5 lists the Status Register Bits.  
In EW0 mode, the status register can be read in the following cases:  
When a given address in the user ROM area is read after writing the read status register  
command  
When a given address in the user ROM area is read after executing the program or block erase  
command but before executing the read array command.  
17.4.4.1 Sequencer Status (Bits SR7 and FMR00)  
The sequencer status bits indicate the operating status of the flash memory. SR7 is set to 0 (busy)  
during/auto-programming and auto-erasure, and is set to 1 (ready) at the same time the operation  
completes.  
17.4.4.2 Erase Status (Bits SR5 and FMR07)  
Refer to 17.4.5 Full Status Check.  
17.4.4.3 Program Status (Bits SR4 and FMR06)  
Refer to 17.4.5 Full Status Check.  
Table 17.5  
Status Register Bits  
Description  
Value after  
Reset  
Status Register Bit FMR0 Register Bit Status Name  
0
1
SR0 (D0)  
SR1 (D1)  
SR2 (D2)  
SR3 (D3)  
SR4 (D4)  
Reserved  
Reserved  
Reserved  
Reserved  
0
FMR06  
Program status Completed  
normally  
Error  
SR5 (D5)  
FMR07  
Erase status  
Completed  
normally  
Error  
0
SR6 (D6)  
SR7 (D7)  
Reserved  
Sequencer  
status  
FMR00  
Busy  
Ready  
1
• D0 to D7: Indicate the data bus which is read when the read status register command is executed.  
• Bits FMR07 (SR5) to FMR06 (SR4) are set to 0 by executing the clear status register command.  
• When the FMR07 bit (SR5) or FMR06 bit (SR4) is set to 1, the program and block erase commands  
cannot be accepted.  
Rev.1.30 Apr 14, 2006 Page 192 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.4.5 Full Status Check  
When an error occurs, bits FMR06 to FMR07 in the FMR0 register are set to 1, indicating the  
occurrence of an error. Therefore, checking these status bits (full status check) can be used to  
determine the execution result.  
Table 17.6 lists the Errors and FMR0 Register Status. Figure 17.15 shows the Full Status Check and  
Handling Procedure for Individual Errors.  
Table 17.6  
Errors and FMR0 Register Status  
FRM00 Register (Status  
Register) Status  
Error  
Error Occurrence Condition  
FMR07(SR5) FMR06(SR4)  
1
1
Command  
• When a command is not written correctly.  
• When invalid data other than that which can be written  
in the second bus cycle of the block erase command is  
sequence error  
(1)  
written (i.e., other than D0h or FFh)  
• When the program command or block erase command  
is executed while rewriting is disabled using the FMR02  
bit in the FMR0 register, or the FMR15 or FMR16 bit in  
the FMR1 register.  
• When an address not allocated in flash memory is input  
during erase command input.  
• When attempting to erase the block for which rewriting  
is disabled during erase command input.  
• When an address not allocated in flash memory is input  
during write command input.  
• When attempting to write the block for which rewriting  
is disabled during write command input.  
1
0
0
1
Erase error  
• When the block erase command is executed but  
auto-erasure does not complete correctly.  
Program error • When the program command is executed but  
auto-programming does not complete correctly.  
NOTE:  
1. The MCU enters read array mode when FFh is written in the second bus cycle of these commands.  
At the same time, the command code written in the first bus cycle is disabled.  
Rev.1.30 Apr 14, 2006 Page 193 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Command sequence error  
Full status check  
Execute the clear status register command  
(set these status flags to 0)  
FMR06 = 1  
Yes  
and  
Command sequence error  
FMR07 = 1?  
Check if command is properly input  
Re-execute the command  
No  
Yes  
Erase error  
FMR07 = 0?  
Erase error  
No  
Execute the clear status register command  
(set these status flags to 0)  
Erase command  
re-execution times 3 times?  
No  
Block targeting for erasure  
cannot be used  
Yes  
Yes  
FMR06 = 0?  
Program error  
Re-execute block erase command  
No  
Program error  
Execute the clear status register  
command  
(set these status flags to 0)  
Full status check completed  
Specify the other address besides the  
write address where the error occurs for  
the program address(1)  
NOTE:  
1. To rewrite to the address where the program error occurs, check if the full  
status check is complete normally and write to the address after the block  
erase command is executed.  
Re-execute program command  
Figure 17.15 Full Status Check and Handling Procedure for Individual Errors  
Rev.1.30 Apr 14, 2006 Page 194 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.5 Standard Serial I/O Mode  
In standard serial I/O mode, the user ROM area can be rewritten while the MCU is mounted on-board by  
using a serial programmer which is suitable for the MCU.  
Standard serial I/O mode is used to connect with a serial programmer using a special clock  
asynchronous serial I/O.  
There are three standard serial I/O modes:  
Standard serial I/O mode 1.......... Clock synchronous serial I/O used to connect with a serial  
programmer  
Standard serial I/O mode 2.......... Clock asynchronous serial I/O used to connect with a serial  
programmer  
Standard serial I/O mode 3.......... Special clock asynchronous serial I/O used to connect with a serial  
programmer  
This MCU uses standard serial I/O mode 2 and standard serial I/O mode 3.  
Refer to Appendix 2. Connection Examples between Serial Writer and On-Chip Debugging  
Emulator. Contact the manufacturer of your serial programmer for additional information. Refer to the  
user’s manual of your serial programmer for details on how to use it.  
Table 17.7 lists the Pin Functions (Flash Memory Standard Serial I/O Mode 2), Table 17.8 lists the Pin  
Functions (Flash Memory Standard Serial I/O Mode 3). Figure 17.16 shows Pin Connections for  
Standard Serial I/O Mode 3.  
After processing the pins shown in Table 17.8 and rewriting the flash memory using a programmer, apply  
“H” to the MODE pin and reset the hardware to run a program in the flash memory in single-chip mode.  
17.5.1 ID Code Check Function  
The ID code check function determines whether the ID codes sent from the serial programmer and  
those written in the flash memory match (refer to 17.3 Functions to Prevent Rewriting of Flash  
Memory).  
Table 17.7  
Pin Functions (Flash Memory Standard Serial I/O Mode 2)  
Pin  
Name  
Power input  
I/O  
Description  
VCC,VSS  
Apply the voltage guaranteed for programming and  
erasure to the VCC pin and 0 V to the VSS pin.  
Reset input pin.  
Reset input  
I
RESET  
P4_6/XIN  
P4_6 input/clock input  
I
Connect a ceramic resonator or crystal oscillator  
between pins XIN and XOUT.  
P4_7/XOUT  
P4_7 input/clock output  
I/O  
AVCC, AVSS Analog power supply input I  
Connect AVSS to VSS and AVCC to VCC, respectively.  
Input “H” or “L” level signal or leave the pin open.  
Input “H” or “L” level signal or leave the pin open.  
Input “H” or “L” level signal or leave the pin open.  
P1_0 to P1_7 Input port P1  
P3_3 to P3_5 Input port P3  
I
I
I
P4_2/VREF  
MODE  
P3_7  
Input port P4  
MODE  
I/O Input “L”.  
TXD output  
RXD input  
O
I
Serial data output pin.  
Serial data input pin.  
P4_5  
Rev.1.30 Apr 14, 2006 Page 195 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Table 17.8  
Pin Functions (Flash Memory Standard Serial I/O Mode 3)  
Name I/O Description  
Power input  
Pin  
VCC,VSS  
Apply the voltage guaranteed for programming and  
erasure to the VCC pin and 0 V to the VSS pin.  
Reset input pin.  
Reset input  
I
RESET  
P4_6/XIN  
P4_6 input/clock input  
I
Connect a ceramic resonator or crystal oscillator  
between pins XIN and XOUT when connecting external  
oscillator. Apply “H” and “L” or leave the pin open when  
using as input port  
P4_7/XOUT  
P4_7 input/clock output  
I/O  
AVCC, AVSS Analog power supply input I  
Connect AVSS to VSS and AVCC to VCC, respectively.  
Input “H” or “L” level signal or leave the pin open.  
Input “H” or “L” level signal or leave the pin open.  
P1_0 to P1_7 Input port P1  
P3_3 to P3_5, Input port P3  
P3_7  
I
I
P4_2/VREF,  
P4_5  
Input port P4  
I
Input “H” or “L” level signal or leave the pin open.  
MODE  
MODE  
I/O Serial data I/O pin. Connect to flash programmer.  
Rev.1.30 Apr 14, 2006 Page 196 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
20  
19  
18  
17  
16  
15  
14  
13  
12  
11  
1
2
3
4
5
6
7
8
9
10  
RESET  
Connect  
oscillator  
circuit(1)  
VSS  
VCC  
MODE  
Package: PLSP0020JB-A  
NOTE:  
1. It is not necessary to connect an oscillating circuit  
when operating with the on-chip oscillator clock.  
Mode Setting  
Signal  
Value  
Voltage from programmer  
MODE  
VSS VCC  
RESET  
Figure 17.16 Pin Connections for Standard Serial I/O Mode 3  
Rev.1.30 Apr 14, 2006 Page 197 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.5.1.1 Example of Circuit Application in the Standard Serial I/O Mode  
Figure 17.17 shows an example of Pin Processing in Standard Serial I/O Mode 2, and Figure 17.18  
shows Pin Processing in Standard Serial I/O Mode 3. Since the controlled pins vary depending on the  
programmer, refer to the manual of your serial programmer for details.  
MCU  
Data output  
Data input  
TXD  
RXD  
MODE  
(1) In this example, modes are switched between single-chip mode and standard  
serial I/O mode by controlling the MODE input with a switch.  
(2) Connecting an oscillator is necessary. Set the main clock frequency to  
between 1 MHz and 20 MHz. Refer to Appendix 2.1 Connection Example  
with M16C Flash Starter (M3A-0806).  
Figure 17.17 Pin Processing in Standard Serial I/O Mode 2  
MCU  
MODE  
I/O  
MODE  
Reset input  
RESET  
Userr reset signal  
(1) Controlled pins and external circuits vary depending on the programmer.  
Refer to the programmer manual for details.  
(2) In this example, modes are switched between single-chip mode and  
standard serial I/O mode by connecting a programmer.  
(3) When operating with the on-chip oscillator clock, it is not necessary to  
connection oscillating circuit.  
Figure 17.18 Pin Processing in Standard Serial I/O Mode 3  
Rev.1.30 Apr 14, 2006 Page 198 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.6 Parallel I/O Mode  
Parallel I/O mode is used to input and output software commands, addresses, and data necessary to  
control (read, program, and erase) the on-chip flash memory. Use a parallel programmer which supports  
this MCU. Contact the manufacturer of the parallel programmer for more information, and refer to the  
user’s manual of the parallel programmer for details on how to use it.  
ROM areas shown in Figures 17.1 and 17.2 can be rewritten in parallel I/O mode.  
17.6.1 ROM Code Protect Function  
The ROM code protect function disables the reading and rewriting of the flash memory. (Refer to the  
17.3 Functions to Prevent Rewriting of Flash Memory.)  
Rev.1.30 Apr 14, 2006 Page 199 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
17.7 Notes on Flash Memory Version  
17.7.1 CPU Rewrite Mode  
17.7.1.1 Operating Speed  
Before entering CPU rewrite mode (EW0 mode), select 5 MHz or below for the CPU clock using the  
CM06 bit in the CM0 register and bits CM16 to CM17 in the CM1 register. This does note apply to  
EW1 mode.  
17.7.1.2 Prohibited Instructions  
The following instructions cannot be used in EW0 mode because they reference data in the flash  
memory: UND, INTO, and BRK.  
17.7.1.3 Interrupts  
Table 17.9 lists the EW0 Mode Interrupts and Table 17.10 lists the EW1 Mode Interrupts.  
Table 17.9  
Mode  
EW0 Mode Interrupts  
When Watchdog Timer, Oscillation Stop  
Detection and Voltage Monitor 2 Interrupt  
Request is Acknowledged  
When Maskable Interrupt  
Request is Acknowledged  
Status  
EW0 During auto-erasure Any interrupt can be used Once an interrupt request is acknowledged,  
by allocating a vector in  
RAM  
auto-programming or auto-erasure is forcibly  
stopped immediately and the flash memory is  
reset. Interrupt handing starts after the fixed  
period and the flash memory restarts. Since  
the block during auto-erasure or the address  
during auto-programming is forcibly stopped,  
the normal value may not be read. Execute  
auto-erasure again and ensure it completes  
normally.  
Auto-programming  
Since the watchdog timer does not stop during  
the command operation, interrupt requests  
may be generated. Reset the watchdog timer  
regularly.  
NOTES:  
1. Do not use the address match interrupt while a command is being executed because the vector of  
the address match interrupt is allocated in ROM.  
2. Do not use a non-maskable interrupt while block 0 is being automatically erased because the fixed  
vector is allocated in block 0.  
Rev.1.30 Apr 14, 2006 Page 200 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
17. Flash Memory Version  
Table 17.10 EW1 Mode Interrupts  
When Watchdog Timer, Oscillation  
Stop Detection and Voltage Monitor 2  
Interrupt Request are Acknowledged  
Once an interrupt request is  
acknowledged, auto-programming or  
auto-erasure is forcibly stopped  
When Maskable Interrupt Request is  
Acknowledged  
Mode  
Status  
EW1 During  
auto-erasure  
(erase- suspend  
Auto-erasure is suspended after  
td(SR-ES) and interrupt handing is  
executed. Auto-erasure can be  
function enabled) restarted by setting the FMR41 bit in immediately and the flash memory is  
the FMR4 register to 0 (erase restart) reset. Interrupt handing starts after the  
after interrupt handing completes.  
Auto-erasure has priority and the  
interrupt request acknowledgement  
is put on standby. Interrupt handing  
fixed period and the flash memory  
restarts. Since the block during  
During  
auto-erasure  
(erase- suspend  
auto-erasure or the address during  
auto-programming is forcibly stopped,  
the normal value may not be read.  
Execute auto-erasure again and  
ensure it completes normally.  
function disabled) is executed after auto-erasure  
completes.  
During  
Auto-programming is suspended  
Since the watchdog timer does not  
stop during the command operation,  
interrupt requests may be generated.  
Reset the watchdog timer regularly  
using the erase-suspend function.  
auto-programming after td(SR-SUS) and interrupt  
(program suspend handing is executed.  
function enabled) Auto-programming can be restarted  
by setting the FMR42 bit in the FMR4  
register to 0 (program restart) after  
interrupt handing completes.  
During  
Auto-programming has priority and  
auto-programming the interrupt request  
(program suspend acknowledgement is put on standby.  
function disabled) Interrupt handing is executed after  
auto-programming completes.  
NOTES:  
1. Do not use the address match interrupt while a command is executing because the vector of the  
address match interrupt is allocated in ROM.  
2. Do not use a non-maskable interrupt while block 0 is being automatically erased because the fixed  
vector is allocated in block 0.  
17.7.1.4 How to Access  
Write 0 before writing 1 when setting the FMR01, FMR02, or FMR11 bit to 1. Do not generate an  
interrupt between writing 0 and 1.  
17.7.1.5 Rewriting User ROM Area  
In EW0 Mode, if the supply voltage drops while rewriting any block in which a rewrite control program  
is stored, it may not be possible to rewrite the flash memory because the rewrite control program  
cannot be rewritten correctly. In this case, use standard serial I/O mode.  
17.7.1.6 Program  
Do not write additions to the already programmed address.  
17.7.1.7 Entering Stop Mode or Wait Mode  
Do not enter stop mode or wait mode during erase-suspend.  
Rev.1.30 Apr 14, 2006 Page 201 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
18. Electrical Characteristics  
Table 18.1  
Absolute Maximum Ratings  
Symbol  
VCC  
Parameter  
Supply voltage  
Condition  
VCC = AVCC  
Rated Value  
Unit  
V
-0.3 to 6.5  
-0.3 to 6.5  
AVCC  
Analog supply voltage  
VCC = AVCC  
V
VI  
Input voltage  
-0.3 to VCC+0.3  
-0.3 to VCC+0.3  
300  
V
V
VO  
Pd  
Output voltage  
Power dissipation  
Topr = 25°C  
mW  
°C  
°C  
Topr  
Tstg  
Operating ambient temperature  
Storage temperature  
-20 to 85 / -40 to 85 (D version)  
-65 to 150  
Table 18.2  
Recommended Operating Conditions  
Standard  
Symbol  
Parameter  
Conditions  
Unit  
Min.  
Typ.  
Max.  
5.5  
VCC  
Supply voltage  
2.7  
V
V
AVCC  
VSS  
Analog supply voltage  
Supply voltage  
VCC  
0
V
AVSS  
VIH  
Analog supply voltage  
Input “H” voltage  
0
V
0.8VCC  
VCC  
0.2VCC  
-60  
V
VIL  
Input “L” voltage  
0
V
IOH(sum)  
Peak sum output Sum of all  
mA  
“H” current  
pins IOH (peak)  
IOH(peak)  
IOH(avg)  
IOL(sum)  
Peak output “H” current  
-10  
-5  
mA  
mA  
mA  
Average output “H” current  
Peak sum output Sum of all  
60  
“L” currents  
pins IOL (peak)  
IOL(peak)  
Peak output “L”  
currents  
Except P1_0 to P1_3  
P1_0 to P1_3  
0
0
10  
30  
10  
5
mA  
mA  
Drive capacity HIGH  
Drive capacity LOW  
mA  
IOL(avg)  
Average output  
“L” current  
Except P1_0 to P1_3  
P1_0 to P1_3  
mA  
Drive capacity HIGH  
Drive capacity LOW  
3.0 V VCC 5.5 V  
2.7 V VCC < 3.0 V  
15  
5
mA  
mA  
f(XIN)  
Main clock input oscillation frequency  
20  
10  
MHz  
MHz  
NOTES:  
1. VCC = 2.7 to 5.5 V at Topr = -20 to 85 °C / -40 to 85 °C, unless otherwise specified.  
2. Typical values when average output current is 100 ms.  
Rev.1.30 Apr 14, 2006 Page 202 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.3  
Comparator Characteristics  
Standard  
Unit  
Symbol  
Parameter  
Conditions  
Min.  
Typ.  
Max.  
1
Resolution  
Bit  
mV  
µs  
φAD = 10 MHz(3)  
φAD = 10 MHz(3)  
Absolute accuracy  
Conversion time  
±20  
tconv  
Vref  
VIA  
1
Reference voltage  
0
AVCC  
AVCC  
10  
V
Analog input voltage  
0
V
Comparator conversion operating clock  
frequency(2)  
1
MHz  
NOTES:  
1. VCC = 2.7 to 5.5 V at Topr = -20 to 85 °C / -40 to 85 °C, unless otherwise specified.  
2. If f1 exceeds 10 MHz, divided f1 and ensure the comparator conversion operating clock frequency (φAD) is 10 MHz or below.  
3. If AVcc is less than 4.2 V, divided f1 and ensure the comparator conversion operating clock frequency (φAD) is f1/2 or below.  
P1  
30pF  
P3  
P4  
Figure 18.1  
Port P1, P3, and P4 Measurement Circuit  
Rev.1.30 Apr 14, 2006 Page 203 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.4  
Flash Memory (Program ROM) Electrical Characteristics  
Standard  
Unit  
Symbol  
Parameter  
Conditions  
R8C/18 Group  
Min.  
100(3)  
Typ.  
Max.  
Program/erase endurance(2)  
times  
times  
µs  
1,000(3)  
R8C/19 Group  
Byte program time  
Block erase time  
50  
0.4  
400  
9
s
td(SR-SUS)  
Time delay from suspend request until  
suspend  
97+CPUclock  
× 6 cycles  
µs  
Interval from erase start/restart until  
following suspend request  
650  
0
µs  
ns  
µs  
Interval from program start/restart until  
following suspend request  
Time from suspend until program/erase  
restart  
3+CPU clock  
× 4 cycles  
Program, erase voltage  
Read voltage  
2.7  
2.7  
0
5.5  
5.5  
60  
V
V
Program, erase temperature  
Data hold time(8)  
°C  
Ambient temperature = 55 °C  
20  
year  
NOTES:  
1. VCC = 2.7 to 5.5 V at Topr = 0 to 60 °C, unless otherwise specified.  
2. Definition of programming/erasure endurance  
The programming and erasure endurance is defined on a per-block basis.  
If the programming and erasure endurance is n (n = 100 or 10,000), each block can be erased n times. For example, if 1,024  
1-byte writes are performed to block A, a 1 Kbyte block, and then the block is erased, the programming/erasure endurance  
still stands at one. However, the same address must not be programmed more than once per erase operation (overwriting  
prohibited).  
3. Endurance to guarantee all electrical characteristics after program and erase. (1 to Min. value can be guaranteed).  
4. If emergency processing is required, a suspend request can be generated independent of this characteristic. In that case the  
normal time delay to Suspend can be applied to the request.However, we recommend that a suspend request with an interval  
of less than 650 µs is only used once because, if the suspend state continues, erasure cannot operate and the incidence of  
erasure error rises.  
5. In a system that executes multiple programming operations, the actual erasure count can be reduced by writing to sequential  
addresses in turn so that as much of the block as possible is used up before performing an erase operation. For example,  
when programming groups of 16 bytes, the effective number of rewrites can be minimized by programming up to 128 groups  
before erasing them all in one operation. In addition, averaging the number of erase operations between block A and block B  
can further reduce the effective number of rewrites. It is also advisable to retain data on the erase count of each block and  
limit the number of erase operations to a certain number.  
6. If an error occurs during block erase, attempt to execute the clear status register command, then execute the block erase  
command at least three times until the erase error does not occur.  
7. Customers desiring programming/erasure failure rate information should contact their Renesas technical support  
representative.  
8. The data hold time includes time that the power supply is off or the clock is not supplied.  
Rev.1.30 Apr 14, 2006 Page 204 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.5  
Flash Memory (Data flash Block A, Block B) Electrical Characteristics  
Standard  
Unit  
Symbol  
Parameter  
Conditions  
Min.  
10,000(3)  
Typ.  
Max.  
Program/erase endurance(2)  
times  
Byte program time  
50  
400  
µs  
(Program/erase endurance 1,000 times)  
Byte program time  
(Program/erase endurance > 1,000 times)  
65  
0.2  
0.3  
9
µs  
s
Block erase time  
(Program/erase endurance 1,000 times)  
Block erase time  
(Program/erase endurance > 1,000 times)  
s
td(SR-SUS)  
Time delay from suspend request until  
suspend  
97+CPUclock  
× 6 cycles  
µs  
µs  
ns  
µs  
Interval from erase start/restart until  
following suspend request  
650  
0
Interval from program start/restart until  
following suspend request  
Time from suspend until program/erase  
restart  
3+CPU clock  
× 4 cycles  
Program, erase voltage  
Read voltage  
2.7  
2.7  
5.5  
5.5  
85  
V
V
-20(8)  
20  
Program, erase temperature  
°C  
Data hold time(9)  
Ambient temperature = 55 °C  
year  
NOTES:  
1. VCC = 2.7 to 5.5 V at Topr = -20 to 85 °C / -40 to 85 °C, unless otherwise specified.  
2. Definition of programming/erasure endurance  
The programming and erasure endurance is defined on a per-block basis.  
If the programming and erasure endurance is n (n = 100 or 10,000), each block can be erased n times. For example, if 1,024  
1-byte writes are performed to block A, a 1 Kbyte block, and then the block is erased, the programming/erasure endurance  
still stands at one. However, the same address must not be programmed more than once per erase operation (overwriting  
prohibited).  
3. Endurance to guarantee all electrical characteristics after program and erase. (1 to Min. value can be guaranteed).  
4. If emergency processing is required, a suspend request can be generated independent of this characteristic. In that case the  
normal time delay to suspend can be applied to the request. However, we recommend that a suspend request with an interval  
of less than 650 µs is only used once because, if the suspend state continues, erasure cannot operate and the incidence of  
erasure error rises.  
5. In a system that executes multiple programming operations, the actual erasure count can be reduced by writing to sequential  
addresses in turn so that as much of the block as possible is used up before performing an erase operation. For example,  
when programming groups of 16 bytes, the effective number of rewrites can be minimized by programming up to 128 groups  
before erasing them all in one operation. It is also advisable to retain data on the erase count of each block and limit the  
number of erase operations to a certain number.  
6. If an error occurs during block erase, attempt to execute the clear status register command, then execute the block erase  
command at least three times until the erase error does not occur.  
7. Customers desiring programming/erasure failure rate information should contact their Renesas technical support  
representative.  
8. -40 °C for D version.  
9. The data hold time includes time that the power supply is off or the clock is not supplied.  
Suspend request  
(Maskable interrupt request)  
FMR46  
Clock-dependent  
Fixed time (97 µs)  
time  
Access restart  
td(SR-SUS)  
Figure 18.2  
Transition Time to Suspend  
Rev.1.30 Apr 14, 2006 Page 205 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.6  
Voltage Detection 1 Circuit Electrical Characteristics  
Standard  
Unit  
Symbol  
Parameter  
Voltage detection level(3)  
Condition  
Min.  
2.70  
Typ.  
2.85  
600  
Max.  
3.00  
Vdet1  
V
Voltage detection circuit self power consumption  
Waiting time until voltage detection circuit operation  
starts(2)  
VCA26 = 1, VCC = 5.0 V  
nA  
µs  
td(E-A)  
100  
Vccmin  
MCU operating voltage minimum value  
2.7  
V
NOTES:  
1. The measurement condition is VCC = 2.7 V to 5.5 V and Topr = -40°C to 85 °C.  
2. Necessary time until the voltage detection circuit operates when setting to 1 again after setting the VCA26 bit in the VCA2  
register to 0.  
3. Ensure that Vdet2 > Vdet1.  
Table 18.7  
Voltage Detection 2 Circuit Electrical Characteristics  
Standard  
Typ.  
3.30  
40  
Symbol  
Parameter  
Voltage detection level(4)  
Condition  
Unit  
Min.  
3.00  
Max.  
3.60  
Vdet2  
V
Voltage monitor 2 interrupt request generation time(2)  
Voltage detection circuit self power consumption  
Waiting time until voltage detection circuit operation  
starts(3)  
µs  
nA  
µs  
VCA27 = 1, VCC = 5.0 V  
600  
td(E-A)  
100  
NOTES:  
1. The measurement condition is VCC = 2.7 V to 5.5 V and Topr = -40°C to 85 °C.  
2. Time until the voltage monitor 2 interrupt request is generated after the voltage passes Vdet1.  
3. Necessary time until the voltage detection circuit operates when setting to 1 again after setting the VCA27 bit in the VCA2  
register to 0.  
4. Ensure that Vdet2 > Vdet1.  
Rev.1.30 Apr 14, 2006 Page 206 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.8  
Reset Circuit Electrical Characteristics (When Using Voltage Monitor 1 Reset)  
Symbol  
Parameter  
Condition  
Standard  
Unit  
Min.  
Typ.  
Max.  
Vdet1  
100  
Vpor2  
Power-on reset valid voltage  
-20°C Topr 85°C  
-20°C Topr 85°C,  
tw(por2) 0s(3)  
V
tw(Vpor2-Vdet1) Supply voltage rising time when power-on reset is  
deasserted(1)  
ms  
NOTES:  
1. This condition is not applicable when using with Vcc 1.0 V.  
2. When turning power on after the time to hold the external power below effective voltage (Vpor1) exceeds10 s, refer to Table  
18.9 Reset Circuit Electrical Characteristics (When Not Using Voltage Monitor 1 Reset).  
3. tw(por2) is the time to hold the external power below effective voltage (Vpor2).  
Table 18.9  
Reset Circuit Electrical Characteristics (When Not Using Voltage Monitor 1 Reset)  
Symbol  
Parameter  
Condition  
Standard  
Unit  
Min.  
Typ.  
Max.  
0.1  
Vpor1  
Power-on reset valid voltage  
-20°C Topr 85°C  
0°C Topr 85°C,  
tw(por1) 10 s(2)  
V
tw(Vpor1-Vdet1)  
tw(Vpor1-Vdet1)  
tw(Vpor1-Vdet1)  
tw(Vpor1-Vdet1)  
Supply voltage rising time when power-on reset is  
deasserted  
100  
ms  
Supply voltage rising time when power-on reset is  
deasserted  
-20°C Topr < 0°C,  
tw(por1) 30 s(2)  
100  
1
ms  
ms  
ms  
Supply voltage rising time when power-on reset is  
deasserted  
-20°C Topr < 0°C,  
tw(por1) 10 s(2)  
Supply voltage rising time when power-on reset is  
deasserted  
0°C Topr 85°C,  
tw(por1) 1 s(2)  
0.5  
NOTES:  
1. When not using voltage monitor 1, use with Vcc 2.7 V.  
2. tw(por1) is the time to hold the external power below effective voltage (Vpor1).  
(3)  
(3)  
Vdet1  
Vdet1  
Vccmin  
Vpor2  
Vpor1  
Sampling time(1, 2)  
tw(Vpor1–Vdet1)  
tw(por1)  
tw(por2) tw(Vpor2–Vdet1)  
Internal  
reset signal  
(“L” valid)  
1
1
× 32  
× 32  
fRING-S  
fRING-S  
NOTES:  
1. Hold the voltage inside the MCU operation voltage range (Vccmin or above) within the sampling time.  
2. The sampling clock can be selected. Refer to 7. Voltage Detection Circuit for details.  
3. Vdet1 indicates the voltage detection level of the voltage detection 1 circuit. Refer to 7. Voltage Detection Circuit for details.  
Figure 18.3  
Reset Circuit Electrical Characteristics  
Rev.1.30 Apr 14, 2006 Page 207 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.10 High-speed On-Chip Oscillator Circuit Electrical Characteristics  
Standard  
Symbol  
Parameter  
Condition  
Unit  
Min.  
Typ.  
8
Max.  
High-speed on-chip oscillator frequency when the  
reset is deasserted  
VCC = 5.0 V, Topr = 25 °C  
MHz  
0 to +60 °C/5 V ± 5 %(3)  
High-speed on-chip oscillator frequency temperature  
supply voltage dependence(2)  
7.76  
7.68  
7.44  
8.24  
8.32  
8.32  
MHz  
MHz  
MHz  
-20 to +85 °C/2.7 to 5.5 V(3)  
-40 to +85 °C/2.7 to 5.5 V(3)  
NOTES:  
1. The measurement condition is VCC = 5.0 V and Topr = 25 °C.  
2. Refer to 10.6.4 High-Speed On-Chip Oscillator Clock for notes on high-speed on-chip oscillator clock.  
3. The standard value shows when the HRA1 register is assumed as the value in shipping and the HRA2 register value is set to  
00h.  
Table 18.11 Power Supply Circuit Timing Characteristics  
Standard  
Symbol  
Parameter  
Condition  
Unit  
Min.  
1
Typ.  
Max.  
2000  
td(P-R)  
Time for internal power supply stabilization during  
power-on(2)  
µs  
STOP exit time(3)  
td(R-S)  
150  
µs  
NOTES:  
1. The measurement condition is VCC = 2.7 to 5.5 V and Topr = 25 °C.  
2. Waiting time until the internal power supply generation circuit stabilizes during power-on.  
3. Time until CPU clock supply starts after the interrupt is acknowledged to exit stop mode.  
Rev.1.30 Apr 14, 2006 Page 208 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.12 Electrical Characteristics (1) [VCC = 5 V]  
Standard  
Unit  
Symbol  
VOH  
Parameter  
Except XOUT  
Condition  
Min.  
Typ.  
Max.  
VCC  
VCC  
VCC  
Output “H” voltage  
IOH = -5 mA  
VCC 2.0  
VCC 0.3  
VCC 2.0  
V
V
V
IOH = -200 µA  
XOUT  
Drive capacity  
HIGH  
IOH = -1 mA  
Drive capacity  
LOW  
IOH = -500 µA VCC 2.0  
VCC  
V
VOL  
Output “L” voltage  
Except P1_0 to  
P1_3, XOUT  
IOL = 5 mA  
2.0  
0.45  
2.0  
V
V
V
IOL = 200 µA  
P1_0 to P1_3  
Drive capacity  
HIGH  
IOL = 15 mA  
IOL = 5 mA  
IOL = 200 µA  
IOL = 1 mA  
IOL = 500 µA  
Drive capacity  
LOW  
2.0  
0.45  
2.0  
V
V
V
V
V
Drive capacity  
LOW  
XOUT  
Drive capacity  
HIGH  
Drive capacity  
LOW  
2.0  
VT+-VT-  
Hysteresis  
0.2  
1.0  
INT0, INT1, INT2,  
INT3, KI0, KI1, KI2,  
KI3, CNTR0,  
CNTR1, TCIN,  
RXD0  
0.2  
2.2  
V
RESET  
IIH  
IIL  
Input “H” current  
Input “L” current  
VI = 5 V  
VI = 0 V  
VI = 0 V  
5.0  
-5.0  
167  
µA  
µA  
kΩ  
MΩ  
kHz  
V
RPULLUP Pull-up resistance  
30  
50  
1.0  
125  
RfXIN  
Feedback resistance XIN  
fRING-S  
VRAM  
Low-speed on-chip oscillator frequency  
RAM hold voltage  
40  
2.0  
250  
During stop mode  
NOTE:  
1. VCC = 4.2 to 5.5 V at Topr = -20 to 85 °C / -40 to 85 °C, f(XIN) = 20 MHz, unless otherwise specified.  
Rev.1.30 Apr 14, 2006 Page 209 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.13 Electrical Characteristics (2) [Vcc = 5 V] (Topr = -40 to 85  
°
C, unless otherwise specified.)  
Standard  
Unit  
Symbol  
ICC  
Parameter  
Condition  
Min.  
Typ.  
9
Max.  
15  
Power supply current High-speed  
XIN = 20 MHz (square wave)  
mA  
mA  
mA  
mA  
mA  
mA  
mA  
mA  
µA  
(VCC = 3.3 to 5.5 V)  
Single-chip mode,  
output pins are open,  
other pins are VSS,  
comparator is  
mode  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
No division  
XIN = 16 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
No division  
8
5
14  
stopped  
XIN = 10 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
No division  
Medium-  
XIN = 20 MHz (square wave)  
4
speed mode High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
XIN = 16 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
3
XIN = 10 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
2
High-speed  
on-chip  
oscillator  
mode  
Main clock off  
4
8
High-speed on-chip oscillator on = 8 MHz  
Low-speed on-chip oscillator on = 125 kHz  
No division  
Main clock off  
1.5  
110  
High-speed on-chip oscillator on = 8 MHz  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
Low-speed  
on-chip  
oscillator  
mode  
Main clock off  
300  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
FMR47 = 1  
Wait mode  
Wait mode  
Stop mode  
Main clock off  
40  
38  
80  
76  
µA  
µA  
µA  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
While a WAIT instruction is executed  
Peripheral clock operation  
VCA27 = VCA26 = 0  
Main clock off  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
While a WAIT instruction is executed  
Peripheral clock off  
VCA27 = VCA26 = 0  
Main clock off, Topr = 25 °C  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator off  
CM10 = 1  
0.8  
3.0  
Peripheral clock off  
VCA27 = VCA26 = 0  
Rev.1.30 Apr 14, 2006 Page 210 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Timing Requirements  
(Unless Otherwise Specified: VCC = 5 V, VSS = 0 V at Ta = 25 °C) [VCC = 5 V]  
Table 18.14 XIN Input  
Standard  
Unit  
Symbol  
Parameter  
Min.  
50  
Max.  
tc(XIN)  
XIN input cycle time  
XIN input “H” width  
XIN input “L” width  
ns  
ns  
ns  
tWH(XIN)  
tWL(XIN)  
25  
25  
VCC = 5 V  
tc(XIN)  
tWH(XIN)  
XIN input  
tWL(XIN)  
Figure 18.4  
XIN Input Timing Diagram when VCC = 5 V  
Table 18.15 CNTR0 Input, CNTR1 Input, INT1 Input  
Standard  
Symbol  
Parameter  
Unit  
Min.  
100  
40  
Max.  
tc(CNTR0)  
CNTR0 input cycle time  
CNTR0 input “H” width  
CNTR0 input “L” width  
ns  
ns  
ns  
tWH(CNTR0)  
tWL(CNTR0)  
40  
VCC = 5 V  
tc(CNTR0)  
tWH(CNTR0)  
CNTR0 input  
tWL(CNTR0)  
Figure 18.5  
CNTR0 Input, CNTR1 Input, INT1 Input Timing Diagram when VCC = 5 V  
Table 18.16 TCIN Input, INT3 Input  
Standard  
Symbol  
Parameter  
Unit  
Min.  
Max.  
400(1)  
200(2)  
200(2)  
tc(TCIN)  
TCIN input cycle time  
TCIN input “H” width  
TCIN input “L” width  
ns  
ns  
ns  
tWH(TCIN)  
tWL(TCIN)  
NOTES:  
1. When using timer C input capture mode, adjust the cycle time to (1/timer C count source frequency x 3) or above.  
2. When using timer C input capture mode, adjust the pulse width to (1/timer C count source frequency x 1.5) or above.  
VCC = 5 V  
tc(TCIN)  
tWH(TCIN)  
TCIN input  
tWL(TCIN)  
Figure 18.6  
TCIN Input, INT3 Input Timing Diagram when VCC = 5 V  
Rev.1.30 Apr 14, 2006 Page 211 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.17 Serial Interface  
Standard  
Unit  
Symbol  
Parameter  
Min.  
200  
100  
100  
Max.  
tc(CK)  
CLKi input cycle time  
CLKi input “H” width  
CLKi input “L” width  
TXDi output delay time  
TXDi hold time  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
tW(CKH)  
tW(CKL)  
td(C-Q)  
th(C-Q)  
tsu(D-C)  
th(C-D)  
50  
0
RXDi input setup time  
RXDi input hold time  
50  
90  
i = 0 or 1  
VCC = 5 V  
tc(CK)  
tW(CKH)  
CLKi  
tW(CKL)  
th(C-Q)  
TxDi  
RxDi  
td(C-Q)  
tsu(D-C)  
th(C-D)  
Figure 18.7  
Serial Interface Timing Diagram when VCC = 5 V  
Table 18.18 External Interrupt INT0 Input  
Standard  
Symbol  
Parameter  
Unit  
Min.  
Max.  
250(1)  
250(2)  
tW(INH)  
ns  
ns  
INT0 input “H” width  
INT0 input “L” width  
tW(INL)  
NOTES:  
1. When selecting the digital filter by the INT0 input filter select bit, use an INT0 input HIGH width of either (1/digital filter clock  
frequency x 3) or the minimum value of standard, whichever is greater.  
2. When selecting the digital filter by the INT0 input filter select bit, use an INT0 input LOW width of either (1/digital filter clock  
frequency x 3) or the minimum value of standard, whichever is greater.  
VCC = 5 V  
tW(INL)  
INT0 input  
tW(INH)  
Figure 18.8  
External Interrupt INT0 Input Timing Diagram when VCC = 5 V  
Rev.1.30 Apr 14, 2006 Page 212 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.19 Electrical Characteristics (3) [VCC = 3V]  
Standard  
Unit  
Symbol  
VOH  
Parameter  
Except XOUT  
Condition  
Min.  
Typ.  
Max.  
VCC  
VCC  
Output “H” voltage  
IOH = -1 mA  
VCC 0.5  
V
V
XOUT  
Drive capacity  
HIGH  
IOH = -0.1 mA VCC 0.5  
Drive capacity  
LOW  
IOH = -50 µA  
VCC 0.5  
VCC  
0.5  
0.5  
0.5  
0.5  
0.5  
0.8  
V
V
V
V
V
V
V
VOL  
Output “L” voltage  
Except P1_0 to  
P1_3, XOUT  
IOL = 1mA  
P1_0 to P1_3  
Drive capacity  
HIGH  
IOL = 2 mA  
IOL = 1 mA  
IOL = 0.1 mA  
IOL = 50 µA  
Drive capacity  
LOW  
XOUT  
Drive capacity  
HIGH  
Drive capacity  
LOW  
VT+-VT-  
Hysteresis  
0.2  
INT0, INT1, INT2,  
INT3, KI0, KI1, KI2,  
KI3, CNTR0,  
CNTR1, TCIN,  
RXD0  
0.2  
1.8  
V
RESET  
IIH  
IIL  
Input “H” current  
Input “L” current  
VI = 3 V  
VI = 0 V  
VI = 0 V  
4.0  
-4.0  
500  
µA  
µA  
kΩ  
MΩ  
kHz  
V
RPULLUP Pull-up resistance  
66  
160  
3.0  
125  
RfXIN  
Feedback resistance XIN  
fRING-S  
VRAM  
Low-speed on-chip oscillator frequency  
RAM hold voltage  
40  
2.0  
250  
During stop mode  
NOTE:  
1. VCC = 2.7 to 3.3 V at Topr = -20 to 85 °C / -40 to 85 °C, f(XIN) = 10 MHz, unless otherwise specified.  
Rev.1.30 Apr 14, 2006 Page 213 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.20 Electrical Characteristics (4) [Vcc = 3V] (Topr = -40 to 85  
°C, unless otherwise specified.)  
Standard  
Unit  
Symbol  
ICC  
Parameter  
Condition  
Min.  
Typ.  
8
Max.  
13  
Power supply current High-speed  
XIN = 20 MHz (square wave)  
mA  
mA  
mA  
mA  
mA  
mA  
mA  
mA  
µA  
(VCC = 2.7 to 3.3 V)  
Single-chip mode,  
output pins are open,  
other pins are VSS,  
comparator is  
mode  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
No division  
XIN = 16 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
No division  
7
5
12  
stopped  
XIN = 10 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
No division  
Medium-  
XIN = 20 MHz (square wave)  
3
speed mode High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
XIN = 16 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
2.5  
1.6  
3.5  
1.5  
100  
XIN = 10 MHz (square wave)  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
High-speed  
on-chip  
oscillator  
mode  
Main clock off  
7.5  
High-speed on-chip oscillator on = 8 MHz  
Low-speed on-chip oscillator on = 125 kHz  
No division  
Main clock off  
High-speed on-chip oscillator on = 8 MHz  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
Low-speed  
on-chip  
oscillator  
mode  
Main clock off  
280  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
Divide-by-8  
FMR47 = 1  
Wait mode  
Wait mode  
Stop mode  
Main clock off  
37  
35  
74  
70  
µA  
µA  
µA  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
While a WAIT instruction is executed  
Peripheral clock operation  
VCA27 = VCA26 = 0  
Main clock off  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator on = 125 kHz  
While a WAIT instruction is executed  
Peripheral clock off  
VCA27 = VCA26 = 0  
Main clock off, Topr = 25 °C  
High-speed on-chip oscillator off  
Low-speed on-chip oscillator off  
CM10 = 1  
0.7  
3.0  
Peripheral clock off  
VCA27 = VCA26 = 0  
Rev.1.30 Apr 14, 2006 Page 214 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Timing requirements  
(Unless Otherwise Specified: VCC = 3 V, VSS = 0 V at Ta = 25 °C) [VCC = 3 V]  
Table 18.21 XIN Input  
Standard  
Unit  
Symbol  
Parameter  
Min.  
100  
40  
Max.  
tc(XIN)  
XIN input cycle time  
XIN input “H” width  
XIN input “L” width  
ns  
ns  
ns  
tWH(XIN)  
tWL(XIN)  
40  
VCC = 3 V  
tc(XIN)  
tWH(XIN)  
XIN input  
tWL(XIN)  
Figure 18.9  
XIN Input Timing Diagram when VCC = 3 V  
Table 18.22 CNTR0 Input, CNTR1 Input, INT1 Input  
Standard  
Symbol  
Parameter  
Unit  
Min.  
300  
120  
120  
Max.  
tc(CNTR0)  
CNTR0 input cycle time  
CNTR0 input “H” width  
CNTR0 input “L” width  
ns  
ns  
ns  
tWH(CNTR0)  
tWL(CNTR0)  
VCC = 3 V  
tc(CNTR0)  
tWH(CNTR0)  
CNTR0 input  
tWL(CNTR0)  
Figure 18.10 CNTR0 Input, CNTR1 Input, INT1 Input Timing Diagram when VCC = 3 V  
Table 18.23 TCIN Input, INT3 Input  
Standard  
Symbol  
Parameter  
Unit  
Min.  
1,200(1)  
600(2)  
600(2)  
Max.  
tc(TCIN)  
TCIN input cycle time  
TCIN input “H” width  
TCIN input “L” width  
ns  
ns  
ns  
tWH(TCIN)  
tWL(TCIN)  
NOTES:  
1. When using the timer C input capture mode, adjust the cycle time to (1/timer C count source frequency × 3) or above.  
2. When using the timer C input capture mode, adjust the width to (1/timer C count source frequency × 1.5) or above.  
VCC = 3 V  
tc(TCIN)  
tWH(TCIN)  
TCIN input  
tWL(TCIN)  
Figure 18.11 TCIN Input, INT3 Input Timing Diagram when VCC = 3 V  
Rev.1.30 Apr 14, 2006 Page 215 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
18. Electrical Characteristics  
Table 18.24 Serial Interface  
Standard  
Unit  
Symbol  
Parameter  
Min.  
300  
150  
150  
Max.  
tc(CK)  
CLKi input cycle time  
CLKi input “H” width  
CLKi input “L” width  
TXDi output delay time  
TXDi hold time  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
tW(CKH)  
tW(CKL)  
td(C-Q)  
th(C-Q)  
tsu(D-C)  
th(C-D)  
80  
0
RXDi input setup time  
RXDi input hold time  
70  
90  
i = 0 or 1  
VCC = 3 V  
tc(CK)  
tW(CKH)  
CLKi  
tW(CKL)  
th(C-Q)  
TxDi  
RxDi  
td(C-Q)  
tsu(D-C)  
th(C-D)  
Figure 18.12 Serial Interface Timing Diagram when VCC = 3 V  
Table 18.25 External Interrupt INT0 Input  
Standard  
Symbol  
Parameter  
Unit  
Min.  
Max.  
380(1)  
380(2)  
tW(INH)  
ns  
ns  
INT0 input “H” width  
INT0 input “L” width  
tW(INL)  
NOTES:  
1. When selecting the digital filter by the INT0 input filter select bit, use an INT0 input HIGH width of either (1/digital filter clock  
frequency x 3) or the minimum value of standard, whichever is greater.  
2. When selecting the digital filter by the INT0 input filter select bit, use an INT0 input LOW width of either (1/digital filter clock  
frequency x 3) or the minimum value of standard, whichever is greater.  
VCC = 3 V  
tW(INL)  
INTi input  
tW(INH)  
Figure 18.13 External Interrupt INT0 Input Timing Diagram when VCC = 3 V  
Rev.1.30 Apr 14, 2006 Page 216 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19. Usage Notes  
19.1 Notes on Clock Generation Circuit  
19.1.1 Stop Mode and Wait Mode  
When entering stop mode or wait mode, an instruction queue pre-reads 4 bytes from the WAIT  
instruction or an instruction that sets the CM10 bit in the CM1 register to 1 (stops all clocks) before the  
program stops. Therefore, insert at least four NOPs after the WAIT instruction or an instruction that  
sets the CM10 bit to 1.  
19.1.2 Oscillation Stop Detection Function  
Since the oscillation stop detection function cannot be used if the main clock frequency is below 2  
MHz, set bits OCD1 to OCD0 to 00b (oscillation stop detection function disabled) in this case.  
19.1.3 Oscillation Circuit Constants  
Ask the manufacturer of the oscillator to specify the best oscillation circuit constants for your system.  
19.1.4 High-Speed On-Chip Oscillator Clock  
The high-speed on-chip oscillator frequency may be changed up to 10%(1) in flash memory CPU  
rewrite mode during auto-program operation or auto-erase operation.  
The high-speed on-chip oscillator frequency after auto-program operation ends or auto-erase  
operation ends is held the state before the program command or block erase command is generated.  
Also, this note is not applicable when the read array command, read status register command, or  
clear status register command is generated. The application products must be designed with careful  
considerations for the frequency change.  
NOTE:  
1. Change ratio to 8 MHz frequency adjusted in shipping.  
Rev.1.30 Apr 14, 2006 Page 217 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.2 Notes on Interrupts  
19.2.1 Reading Address 00000h  
Do not read address 00000h by a program. When a maskable interrupt request is acknowledged, the  
CPU reads interrupt information (interrupt number and interrupt request level) from 00000h in the  
interrupt sequence. At this time, the acknowledged interrupt IR bit is set to 0.  
If address 00000h is read by a program, the IR bit for the interrupt which has the highest priority  
among the enabled interrupts is set to 0. This may cause the interrupt to be canceled, or an  
unexpected interrupt to be generated.  
19.2.2 SP Setting  
Set any value in the SP before an interrupt is acknowledged. The SP is set to 0000h after reset.  
Therefore, if an interrupt is acknowledged before setting a value in the SP, the program may run out  
of control.  
19.2.3 External Interrupt and Key Input Interrupt  
Either “L” level or “H” level of at least 250 ns width is necessary for the signal input to pins INT0 to  
INT3 and pins KI0 to KI3 regardless of the CPU clock.  
19.2.4 Watchdog Timer Interrupt  
Reset the watchdog timer after a watchdog timer interrupt is generated.  
Rev.1.30 Apr 14, 2006 Page 218 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.2.5 Changing Interrupt Sources  
The IR bit in the interrupt control register may be set to 1 (interrupt requested) when the interrupt  
source changes. When using an interrupt, set the IR bit to 0 (no interrupt requested) after changing  
the interrupt source.  
In addition, changes of interrupt sources include all factors that change the interrupt sources  
assigned to individual software interrupt numbers, polarities, and timing. Therefore, if a mode change  
of a peripheral function involves interrupt sources, edge polarities, and timing, set the IR bit to 0 (no  
interrupt requested) after the change. Refer to the individual peripheral function for its related  
interrupts.  
Figure 19.1 shows an Example of Procedure for Changing Interrupt Sources.  
Interrupt source change  
Disable interrupts(2, 3)  
Change interrupt source (including mode  
of peripheral function)  
Set the IR bit to 0 (interrupt not requested) using  
the MOV instruction(3)  
Enable interrupts(2, 3)  
Change completed  
IR bit: The interrupt control register bit of an  
interrupt whose source is changed.  
NOTES:  
1. Execute the above settings individually. Do not execute  
two or more settings at once (by one instruction).  
2. Use the I flag for the INTi (i = 0 to 3) interrupts.  
To prevent interrupt requests from being generated when  
using peripheral function interrupts other than the INTi  
interrupt, disable the peripheral function before changing  
the interrupt source. In this case, use the I flag if all  
maskable interrupts can be disabled. If all maskable  
interrupts cannot be disabled, use bits ILVL0 to ILVL2 of  
the interrupt whose source is changed.  
3. Refer to 12.5.6 Changing Interrupt Control Register  
Contents for the instructions to be used and usage notes.  
Figure 19.1  
Example of Procedure for Changing Interrupt Sources  
Rev.1.30 Apr 14, 2006 Page 219 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.2.6 Changing Interrupt Control Register Contents  
(a) The contents of an interrupt control register can only be changed while no interrupt requests  
corresponding to that register are generated. If interrupt requests may be generated, disable  
interrupts before changing the interrupt control register contents.  
(b) When changing the contents of an interrupt control register after disabling interrupts, be  
careful to choose appropriate instructions.  
Changing any bit other than IR bit  
If an interrupt request corresponding to a register is generated while executing the instruction,  
the IR bit may not be set to 1 (interrupt requested), and the interrupt request may be ignored.  
If this causes a problem, use the following instructions to change the register: AND, OR,  
BCLR, BSET  
Changing IR bit  
If the IR bit is set to 0 (interrupt not requested), it may not be set to 0 depending on the  
instruction used. Therefore, use the MOV instruction to set the IR bit to 0.  
(c) When disabling interrupts using the I flag, set the I flag as shown in the sample programs  
below. Refer to (b) regarding changing the contents of interrupt control registers by the sample  
programs.  
Sample programs 1 to 3 are for preventing the I flag from being set to 1 (interrupts enabled) before  
the interrupt control register is changed for reasons of the internal bus or the instruction queue buffer.  
Example 1: Use NOP instructions to prevent I flag from being set to 1 before interrupt control  
register is changed  
INT_SWITCH1:  
FCLR  
I
; Disable interrupts  
AND.B #00H,0056H  
NOP  
NOP  
; Set TXIC register to 00h  
;
FSET  
I
; Enable interrupts  
Example 2: Use dummy read to delay FSET instruction  
INT_SWITCH2:  
FCLR  
AND.B #00H,0056H  
MOV.W MEM,R0  
I
; Disable interrupts  
; Set TXIC register to 00h  
; Dummy read  
FSET  
I
; Enable interrupts  
Example 3: Use POPC instruction to change I flag  
INT_SWITCH3:  
PUSHC FLG  
FCLR  
I
; Disable interrupts  
AND.B #00H,0056H  
POPC FLG  
; Set TXIC register to 00h  
; Enable interrupts  
Rev.1.30 Apr 14, 2006 Page 220 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.3 Notes on Timers  
19.3.1 Notes on Timer X  
Timer X stops counting after a reset. Set the values in the timer and prescaler before the count  
starts.  
Even if the prescaler and timer are read out in 16-bit units, these registers are read 1 byte at a  
time by the MCU. Consequently, the timer value may be updated during the period when these  
two registers are being read.  
Do not rewrite bits TXMOD0 to TXMOD1, and bits TXMOD2 and TXS simultaneously.  
In pulse period measurement mode, bits TXEDG and TXUND in the TXMR register can be set to  
0 by writing 0 to these bits by a program. However, these bits remain unchanged if 1 is written.  
When using the READ-MODIFY-WRITE instruction for the TXMR register, the TXEDG or TXUND  
bit may be set to 0 although these bits are set to 1 while the instruction is being executed. In this  
case, write 1 to the TXEDG or TXUND bit which is not supposed to be set to 0 with the MOV  
instruction.  
When changing to pulse period measurement mode from another mode, the contents of bits  
TXEDG and TXUND are undefined. Write 0 to bits TXEDG and TXUND before the count starts.  
The TXEDG bit may be set to 1 by the prescaler X underflow generated after the count starts.  
When using the pulse period measurement mode, leave two or more periods of the prescaler X  
immediately after the count starts, then set the TXEDG bit to 0.  
The TXS bit in the TXMR register has a function to instruct timer X to start or stop counting and a  
function to indicate that the count has started or stopped.  
0 (count stops) can be read until the following count source is applied after 1 (count starts) is  
written to the TXS bit while the count is being stopped. If the following count source is applied, 1  
can be read from the TXS bit. After writing 1 to the TXS bit, do not access registers associated  
with timer X (registers TXMR, PREX, TX, TCSS, and TXIC) except for the TXS bit, until 1 can be  
read from the TXS bit. The count starts at the following count source after the TXS bit is set to 1.  
Also, after writing 0 (count stops) to the TXS bit during the count, timer X stops counting at the  
following count source.  
1 (count starts) can be read by reading the TXS bit until the count stops after writing 0 to the TXS  
bit. After writing 0 to the TXS bit, do not access registers associated with timer X except for the  
TXS bit, until 0 can be read from the TXS bit.  
Rev.1.30 Apr 14, 2006 Page 221 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.3.2 Notes on Timer Z  
Timer Z stops counting after a reset. Set the values in the timer and prescaler before the count  
starts.  
Even if the prescaler and timer are read out in 16-bit units, these registers are read 1 byte at a  
time by the MCU. Consequently, the timer value may be updated during the period when these  
two registers are being read.  
Do not rewrite bits TZMOD0 to TZMOD1, and the TZS bit simultaneously.  
In programmable one-shot generation mode and programmable wait one-shot generation mode,  
when setting the TZS bit in the TZMR register to 0 (stops counting) or setting the TZOS bit in the  
TZOC register to 0 (stops one-shot), the timer reloads the value of the reload register and stops.  
Therefore, in programmable one-shot generation mode and programmable wait one-shot  
generation mode read the timer count value before the timer stops.  
The TZS bit in the TZMR register has a function to instruct timer Z to start or stop counting and a  
function to indicate that the count has started or stopped.  
0 (count stops) can be read until the following count source is applied after 1 (count starts) is  
written to the TZS bit while the count is being stopped. If the following count source is applied, 1  
can be read from the TZS bit. After writing 1 to the TZS bit, do not access registers associated  
with timer Z (registers TZMR, PREZ, TZSC, TZPR, TZOC, PUM, TCSC, and TZIC) except for the  
TZS bit, until 1 can be read from the TZS bit. The count starts at the following count source after  
the TZS bit is set to 1.  
Also, after writing 0 (count stops) to the TZS bit during the count, timer Z stops counting at the  
following count source.  
1 (count starts) can be read by reading the TZS bit until the count stops after writing 0 to the TZS  
bit. After writing 0 to the TZS bit, do not access registers associated with timer Z except for the  
TZS bit, until 0 can be read from the TZS bit.  
19.3.3 Notes on Timer C  
Access registers TC, TM0, and TM1 in 16-bit units.  
The TC register can be read in 16-bit units. This prevents the timer value from being updated  
between when the low-order bytes and high-order bytes are being read.  
Example of reading timer C:  
MOV.W  
0090H,R0  
; Read out timer C  
Rev.1.30 Apr 14, 2006 Page 222 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.4 Notes on Serial Interface  
When reading data from the U0RB register either in the clock asynchronous serial I/O mode or in the  
clock synchronous serial I/O mode. Ensure the data is read in 16-bit units. When the high-order byte  
of the U0RB register is read, bits PER and FER in the U0RB register and the RI bit in the U0C1  
register are set to 0.  
Example (when reading receive buffer register):  
MOV.W  
00A6H,R0  
; Read the U0RB register  
When writing data to the U0TB register in the clock asynchronous serial I/O mode with 9-bit transfer  
data length, write data to the high-order byte first then the low-order byte, in 8-bit units.  
Example (when reading transmit buffer register):  
MOV.B  
MOV.B  
#XXH,00A3H ; Write the high-order byte of U0TB register  
#XXH,00A2H ; Write the low-order byte of U0TB register  
Rev.1.30 Apr 14, 2006 Page 223 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.5 Notes on Comparator  
Write to each bit (other than bit 6) in the ADCON0 register, each bit in the ADCON1 register, or the  
CMPSEL bit in the ADCON2 register when the comparator conversion stops (before a trigger  
occurs).  
When changing comparator conversion operating mode, select an analog input pin again.  
To use in one-shot mode, ensure that the comparator conversion is completed and the AD register is  
read. The IR bit in the ADIC register or the ADST bit in the ADCON0 register can determine whether  
the comparator conversion is completed.  
To use in repeat mode, use the undivided main clock as the CPU clock.  
If the ADST bit in the ADCON0 register is set to 0 (comparator conversion stops) by a program and  
the comparator conversion is forcibly terminated during the comparator conversion operation, the  
conversion result of the comparator will be indeterminate. If the ADST bit is set to 0 by a program, do  
not use the AD register value.  
Connect a 0.1 µF capacitor between the VCC/AVCC pin and VSS/AVSS pin.  
Rev.1.30 Apr 14, 2006 Page 224 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.6 Notes on Flash Memory Version  
19.6.1 CPU Rewrite Mode  
19.6.1.1 Operating Speed  
Before entering CPU rewrite mode (EW0 mode), select 5 MHz or below for the CPU clock using the  
CM06 bit in the CM0 register and bits CM16 to CM17 in the CM1 register. This does note apply to  
EW1 mode.  
19.6.1.2 Prohibited Instructions  
The following instructions cannot be used in EW0 mode because they reference data in the flash  
memory: UND, INTO, and BRK.  
19.6.1.3 Interrupts  
Table 19.1 lists the EW0 Mode Interrupts and Table 19.2 lists the EW1 Mode Interrupts.  
Table 19.1  
Mode  
EW0 Mode Interrupts  
When Watchdog Timer, Oscillation Stop  
Detection and Voltage Monitor 2 Interrupt  
Request is Acknowledged  
When Maskable Interrupt  
Request is Acknowledged  
Status  
EW0 During auto-erasure Any interrupt can be used Once an interrupt request is acknowledged,  
by allocating a vector in  
RAM  
auto-programming or auto-erasure is forcibly  
stopped immediately and the flash memory is  
reset. Interrupt handing starts after the fixed  
period and the flash memory restarts. Since  
the block during auto-erasure or the address  
during auto-programming is forcibly stopped,  
the normal value may not be read. Execute  
auto-erasure again and ensure it completes  
normally.  
Auto-programming  
Since the watchdog timer does not stop during  
the command operation, interrupt requests  
may be generated. Reset the watchdog timer  
regularly.  
NOTES:  
1. Do not use the address match interrupt while a command is being executed because the vector of  
the address match interrupt is allocated in ROM.  
2. Do not use a non-maskable interrupt while block 0 is being automatically erased because the fixed  
vector is allocated in block 0.  
Rev.1.30 Apr 14, 2006 Page 225 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
Table 19.2  
Mode  
EW1 Mode Interrupts  
When Watchdog Timer, Oscillation  
When Maskable Interrupt Request is  
Acknowledged  
Status  
Stop Detection and Voltage Monitor 2  
Interrupt Request are Acknowledged  
Once an interrupt request is  
acknowledged, auto-programming or  
auto-erasure is forcibly stopped  
EW1 During auto-  
erasure (erase-  
Auto-erasure is suspended after  
td(SR-ES) and interrupt handing is  
suspend function executed. Auto-erasure can be  
enabled)  
restarted by setting the FMR41 bit in immediately and the flash memory is  
the FMR4 register to 0 (erase restart) reset. Interrupt handing starts after the  
after interrupt handing completes.  
Auto-erasure has priority and the  
interrupt request acknowledgement  
fixed period and the flash memory  
restarts. Since the block during auto-  
erasure or the address during auto-  
programming is forcibly stopped, the  
normal value may not be read. Execute  
auto-erasure again and ensure it  
completes normally.  
Since the watchdog timer does not  
stop during the command operation,  
interrupt requests may be generated.  
Reset the watchdog timer regularly  
using the erase-suspend function.  
During auto-  
erasure (erase-  
suspend function is put on standby. Interrupt handing  
disabled)  
is executed after auto-erasure  
completes.  
During auto-  
programming  
Auto-programming is suspended  
after td(SR-SUS) and interrupt  
(program suspend handing is executed.  
function enabled) Auto-programming can be restarted  
by setting the FMR42 bit in the FMR4  
register to 0 (program restart) after  
interrupt handing completes.  
During auto-  
programming  
Auto-programming has priority and  
the interrupt request  
(program suspend acknowledgement is put on standby.  
function disabled) Interrupt handing is executed after  
auto-programming completes.  
NOTES:  
1. Do not use the address match interrupt while a command is executing because the vector of the  
address match interrupt is allocated in ROM.  
2. Do not use a non-maskable interrupt while block 0 is being automatically erased because the fixed  
vector is allocated in block 0.  
19.6.1.4 How to Access  
Write 0 before writing 1 when setting the FMR01, FMR02, or FMR11 bit to 1. Do not generate an  
interrupt between writing 0 and 1.  
19.6.1.5 Rewriting User ROM Area  
In EW0 Mode, if the supply voltage drops while rewriting any block in which a rewrite control program  
is stored, it may not be possible to rewrite the flash memory because the rewrite control program  
cannot be rewritten correctly. In this case, use standard serial I/O mode.  
19.6.1.6 Program  
Do not write additions to the already programmed address.  
19.6.1.7 Entering Stop Mode or Wait Mode  
Do not enter stop mode or wait mode during erase-suspend.  
Rev.1.30 Apr 14, 2006 Page 226 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
19. Usage Notes  
19.7 Notes on Noise  
19.7.1 Inserting a Bypass Capacitor between VCC and VSS Pins as a  
Countermeasure against Noise and Latch-Up  
Connect a bypass capacitor (at least 0.1 µF) using the shortest and thickest wire possible.  
19.7.2 Countermeasures against Noise Error of Port Control Registers  
During rigorous noise testing or the like, external noise (mainly power supply system noise) can  
exceed the capacity of the MCU’s internal noise control circuitry. In such cases the contents of the  
port related registers may be changed.  
As a firmware countermeasure, it is recommended that the port registers, port direction registers, and  
pull-up control registers be reset periodically. However, examine the control processing fully before  
introducing the reset routine as conflicts may be created between the reset routine and interrupt  
routines.  
Rev.1.30 Apr 14, 2006 Page 227 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
20. Notes on On-chip Debugger  
20. Notes on On-chip Debugger  
When using on-chip debugger to develop and debug programs for the R8C/18 Group and R8C/19 Group,  
take note of the following.  
(1) Do not access the related UART1 registers.  
(2) Do not use from addresses OC000h address to OC7FFh because the on-chip debugger uses these  
addresses.  
(3) Do not set the address match interrupt (registers AIER, RMAD0, and RMAD1 and fixed vector  
tables) in a user system.  
(4) Do not use the BRK instruction in a user system.  
(5) A stack pointer of up to 8 bytes is used during user program breaks. Therefore, leave 8 bytes free  
for the stack area.  
Connecting and using the on-chip debugger has some special restrictions. Refer to the on-chip debugger  
manual for on-chip debugger details.  
Rev.1.30 Apr 14, 2006 Page 228 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Appendix 1. Package Dimensions  
Appendix 1. Package Dimensions  
JEITA Package Code  
RENESAS Code  
PLSP0020JB-A  
Previous Code  
20P2F-A  
MASS[Typ.]  
0.1g  
P-LSSOP20-4.4x6.5-0.65  
11  
20  
NOTE)  
F
1. DIMENSIONS "*1" AND "*2"  
DO NOT INCLUDE MOLD FLASH.  
2. DIMENSION "*3" DOES NOT  
INCLUDE TRIM OFFSET.  
1
10  
Index mark  
c
A2  
A1  
Dimension in Millimeters  
Reference  
Symbol  
*2  
D
Min Nom Max  
D
E
6.4 6.5 6.6  
4.3 4.4 4.5  
1.15  
A2  
A
1.45  
0.1 0.2  
0
A1  
bp  
c
*3  
bp  
e
0.17 0.22 0.32  
Detail F  
y
0.2  
10°  
0.13 0.15  
0°  
HE  
e
6.2 6.4 6.6  
0.53 0.65 0.77  
0.10  
y
L
0.3 0.5 0.7  
JEITA Package Code  
P-SDIP20-6.3x19-1.78  
RENESAS Code  
PRDP0020BA-A  
Previous Code  
20P4B  
MASS[Typ.]  
1.0g  
20  
11  
1
10  
c
NOTE)  
1. DIMENSIONS "*1" AND "*2"  
DO NOT INCLUDE MOLD FLASH.  
2. DIMENSION "*3" DOES NOT  
INCLUDE TRIM OFFSET.  
*2  
D
Dimension in Millimeters  
Reference  
Symbol  
Min Nom Max  
e1  
D
7.32 7.62 7.92  
18.8 19.0 19.2  
6.15 6.3 6.45  
4.5  
E
A
A1  
A2  
bp  
b3  
c
0.51  
*3  
b3  
bp  
e
3.3  
SEATING PLANE  
0.38 0.48 0.58  
0.9 1.0 1.3  
0.22 0.27 0.34  
0°  
15°  
e
L
1.528 1.778 2.028  
3.0  
Rev.1.30 Apr 14, 2006 Page 229 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Appendix 1. Package Dimensions  
JEITA Package Code  
P-HWQFN28-5x5-0.50  
RENESAS Code  
Previous Code  
MASS[Typ.]  
0.05g  
PWQN0028KA-B  
28PJW-B  
D
15  
21  
21  
15  
22  
14  
14  
22  
D2  
Lp  
28  
8
28  
8
7
1
7
1
e
bp  
x
Dimension in Millimeters  
Reference  
F
Symbol  
Min  
4.9  
4.9  
Nom  
5.0  
Max  
5.1  
D
E
5.0  
5.1  
A2  
A
0.75  
0.8  
A1  
bp  
e
0
0
0.05  
0.25  
y
0.15  
0.2  
0.5  
0.6  
Lp  
x
0.5  
0.7  
0.05  
0.05  
2.0  
Detail F  
y
D2  
E1  
2.0  
Rev.1.30 Apr 14, 2006 Page 230 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group Appendix 2. Connection Examples between Serial Writer and On-Chip Debugging  
Appendix 2. Connection Examples between Serial Writer and On-Chip  
Debugging Emulator  
Appendix Figure 2.1 shows a Connection Example with M16C Flash Starter (M3A-0806) and Appendix  
Figure 2.2 shows a Connection Example with E8 Emulator (R0E000080KCE00).  
20  
19  
18  
17  
16  
15  
14  
13  
12  
11  
1
2
TXD  
(2)  
3
RESET  
Connect oscillation  
circuit(1)  
VSS  
4
5
VCC  
6
7
8
MODE  
9
10  
10  
TXD  
7
1
VSS  
VCC  
RXD  
4
M16C flash starter  
(M3A-0806)  
RXD  
NOTES:  
1. An oscillation circuit must be connected, even when operating with the on-chip oscillator clock.  
2. Connect an external reset circuit.  
Appendix Figure 2.1  
Connection Example with M16C Flash Starter (M3A-0806)  
20  
19  
18  
17  
16  
15  
14  
13  
12  
11  
1
2
3
Connect oscillation  
circuit(1)  
4
User reset signal  
5
VSS  
VCC  
6
7
8
9
4.7kΩ  
13  
14  
12  
10  
8
10  
RESET  
MODE  
MODE  
7
VCC  
6
4
2
VSS  
NOTE:  
E8 emulator  
(R0E000080KCE00)  
1. It is not necessary to connect an oscillation circuit  
when operating with the on-chip oscillator clock.  
Appendix Figure 2.2  
Connection Example with E8 Emulator (R0E000080KCE00)  
Rev.1.30 Apr 14, 2006 Page 231 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Appendix 3. Example of Oscillation Evaluation Circuit  
Appendix 3. Example of Oscillation Evaluation Circuit  
Appendix Figure 3.1 shows an Example of Oscillation Evaluation Circuit.  
20  
19  
18  
17  
16  
15  
14  
13  
12  
11  
1
2
3
RESET  
VSS  
4
Connect  
oscillation  
circuit  
5
6
7
8
9
10  
NOTE:  
1. Write a program to perform the evaluation.  
Appendix Figure 3.1  
Example of Oscillation Evaluation Circuit  
Rev.1.30 Apr 14, 2006 Page 232 of 233  
REJ09B0222-0130  
R8C/18 Group, R8C/19 Group  
Register Index  
Register Index  
A
O
U
AD ..........................................166 OCD .........................................57 U0BRG ...................................148  
ADCON0 .................................165 OFS ..................................98, 177 U0C0 ......................................150  
ADCON1 .................................165  
ADCON2 .................................166  
ADIC ........................................77  
AIER .........................................93  
U0C1 ......................................151  
U0MR .....................................149  
U0RB ......................................148  
U0TB ......................................148  
U1BRG ...................................148  
U1C0 ......................................150  
U1C1 ......................................151  
U1MR .....................................149  
U1RB ......................................148  
U1TB ......................................148  
UCON .....................................151  
P
P1 ............................................33  
P3 ............................................33  
P4 ............................................33  
PD1 ..........................................33  
C
CM0 .........................................55 PD3 ..........................................33  
CM1 .........................................56 PD4 ..........................................33  
CMP0IC ....................................77 PM0 ..........................................51  
CMP1IC ....................................77 PM1 ..........................................51  
CSPR .......................................99 PRCR .......................................71  
PREX .....................................105  
V
PREZ ......................................119  
D
PUM .......................................120 VCA1 ........................................43  
PUR0 ........................................34 VCA2 ........................................43  
PUR1 ........................................34 VW1C .......................................44  
VW2C .......................................45  
DRR .........................................34  
E
R
W
ñ¢égópí ....................................35  
RMAD0 .....................................93  
RMAD1 .....................................93 WDC .........................................98  
WDTR .......................................99  
F
WDTS .......................................99  
S
FMR0 .....................................182  
FMR1 .....................................183  
FMR4 .....................................184  
S0RIC .......................................77  
S0TIC .......................................77  
S1RIC .......................................77  
S1TIC .......................................77  
H
HRA0 .......................................58  
HRA1 .......................................59  
HRA2 .......................................59  
T
TC ..........................................137  
TCC0 ......................................138  
TCC1 ......................................139  
TCIC .........................................77  
I
INT0F .......................................85 TCOUT ...................................140  
INT0IC ......................................78 TCSS ..............................105, 121  
INT1IC ......................................77 TM0 ........................................137  
INT3IC ......................................77 TM1 ........................................137  
INTEN ......................................85 TX ..........................................105  
TXIC .........................................77  
TXMR .....................................104  
TZIC .........................................77  
K
TZMR .....................................118  
TZOC .....................................120  
TZPR ......................................119  
KIEN .........................................91  
KUPIC ......................................77  
TZSC ......................................119  
Rev.1.30 Apr 14, 2006 Page 233 of 233  
REJ09B0222-0130  
REVISION HISTORY  
R8C/18 Group, R8C/19 Group Hardware  
Description  
Summary  
Rev.  
Date  
Page  
0.10  
0.21  
Feb 15, 2005  
Apr 04, 2005  
4
First Edition issued  
Figure 1.1 is partly revised.  
5, 6  
18  
49  
55  
61  
88  
93  
Table 1.3, Table1.4 are partly revised.  
Table 4.3 is partly revised.  
Figure 10.1 is partly revised.  
“10.1 Main clock” is partly revised.  
Table 10.4 is partly revised.  
“12.4 Address Match Interrupt” is partly revised.  
Table 13.1 is partly revised.  
123, 127 Table 14.9, Table 14.10 are partly revised.  
130  
133  
137  
142  
147  
154  
159  
160  
161  
164  
166  
199  
200  
“14.2.5 Precautions on Timer Z” is partly revised.  
Figure 14.26 is partly revised.  
Table 14.11 is partly revised.  
Figure 15.1 is partly revised.  
Figure 15.6 is partly revised.  
Table 15.6 is partly revised.  
Table 16.1 is partly revised.  
Figure 16.1 is partly revised.  
Figure 16.2 is partly revised.  
Figure 16.4 is partly revised.  
Figure 16.5 is partly revised.  
Table 18.4 is partly revised.  
Table 18.5 is partly revised.  
Figure 18.2 is revised.  
206  
210  
Title of Table 18.15 is partly revised.  
Title of Figure 18.5 is partly revised.  
Title of Table 18.22 is partly revised.  
Title of Figure 18.10 is partly revised.  
216  
223  
5, 6  
9
“19.3.2 Precautions on Timer Z” is partly revised.  
“20 Precautions on On-Chip Debugger” is partly revised.  
Table 1.3, Table1.4 are partly revised.  
Table 1.5 is partly revised.  
1.00  
May 27, 2005  
21  
Figure 5.3 revised  
33 to 36 Table 6.4 to Table 6.17 are added.  
42  
43  
46  
47  
54  
56  
Figure 7.5 is partly revised.  
Figure 7.6 Note 10 added.  
Table 7.2 is partly revised.  
Table 7.3 is partly revised.  
Figure 10.2 is partly deleted.  
Figure 10.4 is partly deleted.  
C - 1  
REVISION HISTORY  
R8C/18 Group, R8C/19 Group Hardware  
Description  
Summary  
Rev.  
1.00  
Date  
Page  
May 27, 2005  
57  
61  
62  
63  
Figure 10.5 is partly deleted.  
“10.3.2 CPU Clock” is partly deleted.  
Table 10.2 is partly revised.  
“10.4.1.1 High-speed Mode” is partly deleted.  
“10.4.1.2 Medium-speed Mode” is partly deleted.  
“10.4.1.3 High-speed, Low-speed On-chip Oscillator Mode” is partly  
deleted.  
66  
Figure 10.8 is revised.  
67  
Figure 10.9 is deleted.  
69  
“10.6.1 Stop Mode and Wait Mode” is revised.  
Figure 14.1 is partly revised.  
Table 14.2 is partly revised.  
Table 14.3 is partly revised.  
Table 14.4 is partly revised.  
Table 14.5 is partly revised.  
Table 14.6 is partly revised.  
Figure 16.2 is partly revised.  
Figure 16.4 is partly revised.  
Figure 16.5 is partly revised.  
Figure 17.7 is partly revised.  
Figure 17.9 is partly revised.  
Figure 17.11 is partly revised.  
Figure 17.14 is partly revised.  
“17.5 Standard Serial I/O Mode” is revised.  
Table 17.7 is added.  
102  
105  
106  
108  
109  
112  
164  
167  
169  
183  
185  
186  
190  
194  
195  
196  
Table 17.8 is partly revised.  
Title of Figure 17.16 is partly revised.  
“17.5.1.1 Example of Circuit Application in the Standard Serial I/O Mode”  
is revised.  
197  
Figure 17.17 is added.  
Title of Figure 17.18 is partly revised.  
Former “17.7.1.7” is deleted.  
200  
206  
207  
209  
213  
216  
Table 18.9 is revised.  
Table 18.10 is partly revised.  
Table 18.13 is partly revised.  
Table 18.20 is partly revised.  
“19.1.1 Stop Mode and Wait Mode” is revised.  
“19.1.3 Oscillation Circuit Constants” is added.  
Former “19.6.1.7” is deleted.“  
225  
227  
“20. Precautions on On-chip Debugger” is partly added.  
C - 2  
REVISION HISTORY  
R8C/18 Group, R8C/19 Group Hardware  
Description  
Summary  
Rev.  
1.10  
Date  
Page  
Jun 09, 2005  
27  
28  
Figure 6.1 Note 1 added.  
Figure 6.2 Note 1 added.  
30  
Figure 6.3 Note 4 added.  
34  
Table 6.7 is partly revised (register name).  
36  
Table 6.15 is partly revised (UCON PD3).  
Table 14.2 is partly revised (Write to Timer).  
Table 14.3 is partly revised (Write to Timer).  
Table 14.4 is partly revised (Write to Timer).  
Table 14.5 is partly revised (Write to Timer).  
Table 14.6 is partly revised (Write to Timer).  
Table 14.7 is partly revised (Write to Timer).  
Figure 17.16 is partly revised.  
105  
106  
108  
109  
112  
121  
196  
207  
229  
3
Table 18.10 is partly revised.  
Appendix Figure 2.1, 2.2 are partly revised.  
1.20  
Nov 01, 2005  
Table 1.2 Performance Outline of the R8C/19 Group;  
Flash Memory: (Data area) (Data flash)  
(Program area) (Program ROM) revised  
4
6
9
Figure 1.1 Block Diagram;  
“Peripheral Function” added,  
“System Clock Generation” “System Clock Generator” revised  
Table 1.4 Product Information of R8C/19 Group;  
ROM capacity: “Program area” “Program ROM”,  
“Data area” “Data flash” revised  
Table 1.5 Pin Description;  
Power Supply Input: “VCC/AVCC” “VCC”,  
“VSS/AVSS” “VSS” revised  
Analog Power Supply Input: added  
11  
13  
15  
Figure 2.1 CPU Register;  
“Reserved Area” “Reserved Bit” revised  
2.8.10 Reserved Area;  
“Reserved Area” “Reserved Bit” revised  
3.2 R8C/19 Group, Figure 3.2 Memory Map of R8C/19 Group;  
“Data area” “Data flash”,  
“Program area” “Program ROM” revised  
16  
Table 4.1 SFR Information(1);  
0009h: “XXXXXX00b” “00h”  
000Ah: “00XXX000b” “00h”  
001Eh: “XXXXX000b” “00h” revised  
C - 3  
REVISION HISTORY  
R8C/18 Group, R8C/19 Group Hardware  
Description  
Summary  
Rev.  
1.20  
Date  
Page  
Nov 01, 2005  
18  
Table 4.3 SFR Information(3);  
0085h:  
0086h:  
0087h:  
008Ch:  
008Dh:  
“Prescaler Z” “Prescaler Z Register”  
“Timer Z Secondary” “Timer Z Secondary Register”  
“Timer Z Primary” “Timer Z Primary Register”  
“Prescaler X” “Prescaler X Register”  
“Timer X” “Timer X Register”  
0090h, 0091h:Timer C” “Timer C Register” revised  
36  
37  
Table 6.16 Port XIN/P4_6, XOUT/P4_7 Setting;  
Setting value  
CM1: “1” “0”, CM0: “0” “1”, Feedback resistance: “OFF” “ON”,  
Table 6.18 Unassigned Pin Handling, Figure 6.9 Unassigned Pin  
Handling;  
“Port P4_2, P4_6, P4_7” “Port P4_6, P4_7”  
“VREF” “Port P4_2/VREF” revised  
51  
Table 9.2 Bus Cycles for Access Space of the R8C/1B (19) Group  
added, Table 9.3 Access Unit and Bus Operation;  
“SFR” “SFR, Data flash”,  
“ROM/RAM” “ROM (Program ROM), RAM” revised  
52  
56  
60  
Table 10.1 Specification of Clock Generation Circuit;  
Note 2: deleted  
Figure 10.4 OCD Register;  
Note 3: partly deleted  
10.2.1 Low-speed On-Chip Oscillator Clock;  
“The application products ... to accommodate the frequency range.” →  
“The application products ... for the frequency change.” revised  
10.2.2 High-Speed On-Chip Oscillator Clock;  
“The high-speed on-chip oscillator frequency ... for details.” added  
62  
67  
Table 10.2 Setting and Mode of Clock Associated Bit;  
Medium-speed Mode/devide-by-16: “00b”” “11b”  
High-speed,... Mode/devide-by-2: “00b”” “01b”  
CM13 added  
10.5.1 How to Use Oscillation Stop Detection Function;  
“This function cannot ... is 2 MHz or below.” →  
“This function cannot be ... is below 2 MHz.” revised  
68  
69  
Figure 10.9 Procedure of Switching Clock Source From Low-Speed On-  
Chip Oscillator to Main Clock revised  
10.6.2 Oscillation Stop Detection Function;  
“Since the oscillation ...frequency is 2MHz or below, ...” →  
“Since the oscillation ...frequency is below 2MHz, ...” revised  
10.6.4 High-Speed On-Ship Oscillator Clock added.  
70  
84  
Figure 11.1 PRCR Register;  
After Reset: “XXXXX000b”” “00h” revised  
Figure 12.11 INTEN and INT0F Registers;  
After Reset: “XXXXX000b”” “00h” revised  
C - 4  
REVISION HISTORY  
R8C/18 Group, R8C/19 Group Hardware  
Description  
Summary  
Rev.  
1.20  
Date  
Page  
Nov 01, 2005  
92  
Figure 12.19 AIER, RMAD0 to RMAD1 Registers;  
Address Match Interrupt Enable Register and Address Match Interrupt  
Register i(i=0, 1) revised  
102  
115  
Figure 14.1 Block Diagram of Timer X;  
“Peripheral data bus” “Data Bus” revised  
14.1.6 Precautions on Timer X;  
“When writing “1” (count starts) to ... writing “1” to the TXS bit.” →  
‘ “0” (count stops) can be read ... after the TXS bit is set to “1”.’ revised  
116  
133  
Figure 14.11 Block Diagram of Timer Z;  
“Peripheral Data Bus” “Data Bus” revised  
14.2.5 Precautions on Timer Z;  
“When writing “1” (count starts) to ... writing “1” to the TZS bit.” →  
‘ “0” (count stops) can be read ... after the TZS bit is set to “1”.’ revised  
147  
Figure 15.3 U0TB to U1TB, U0RB to U1RB and U0BRG to U1BRG  
Registers;  
“UARTi Transmit Buffer Register (i=0 to 1)” and “UARTi Receive Buffer  
Register (i=0 to 1)” revised  
150  
157  
162  
171  
Figure 15.6 U0C1 to U1C1 and UCON Registers;  
UARTi Transmit / Receive Control Register 1 (i=0 to 1) revised  
Table 15.5 Registers to Be Used and Settings in UART Mode;  
UiBRG: ““0 to 7” revised  
Table 16.1 Performance of Comparator  
Analog Input Voltage: “0V to Vref” “0V to AVCC” revised  
Table 17.1 Flash Memory Version Performance;  
Program and Erase Endurance: (Program area) (Program ROM),  
(Data area) (Data Flash) revised  
173  
17.2 Memory Map;  
“The user ROM ... area ... Block A and B.” →  
“The user ROM ... area (program ROM) ... Block A and B (data flash).”  
revised  
Figure 17.1 Flash Memory Block Diagram for R8C/18 Group revised  
174  
189  
Figure 17.2 Flash Memory Block Diagram for R8C/19 Group revised  
17.4.3.5 Block Erase  
“The block erase command cannot ... program-suspend.” added  
200  
Table 17.10 Interrupt in EW1 Mode;  
During automatic programming (program suspend function enabled)  
and During automatic programming (program suspend function  
disabled) revised  
203  
204  
206  
Table 18.4 Flash Memory (Program ROM) Electrical Characteristics;  
NOTES 3 and 5 revised, NOTE8 deleted  
Table 18.5 Flash Memory (Data flash Block A, Block B) Electrical  
Characteristics; NOTES 1 and 3 revised  
Table 18.8 Reset Circuit Electrical Characteristics (When Using Voltage  
Monitor 1 Reset); NOTE 2 revised  
C - 5  
REVISION HISTORY  
R8C/18 Group, R8C/19 Group Hardware  
Description  
Summary  
Rev.  
1.20  
Date  
Page  
Nov 01, 2005  
207  
Table 18.10 High-speed On-Chip Oscillator Circuit Electrical  
Characteristics;  
“High-Speed On-Chip Oscillator ...” →  
“High-Speed On-Chip Oscillator Frequency ...” revised  
NOTE 2, 3 added  
209  
212  
216  
Table 18.13 Electrical Characteristics (2) [Vcc = 5V];  
NOTE 1 deleted  
Table 18.20 Electrical Characteristics (4) [Vcc = 3V];  
NOTE 1 deleted  
19.1.2 Oscillation Stop Detection Function;  
“Since the oscillation ...frequency is 2MHz or below, ...” →  
“Since the oscillation ...frequency is below 2MHz, ...” revised  
220  
221  
225  
19.3.1 Precautions on Timer X;  
“When writing “1” (count starts) to ... writing “1” to the TXS bit.” →  
‘ “0” (count stops) can be read ... after the TXS bit is set to “1”.’ revised  
19.3.2 Precautions on Timer Z;  
“When writing “1” (count starts) to ... writing “1” to the TZS bit.” →  
‘ “0” (count stops) can be read ... after the TZS bit is set to “1”.’ revised  
Table 19.2 Interrupt in EW1 Mode;  
During automatic programming (program suspend function enabled)  
and During automatic programming (program suspend function  
disabled) revised  
227  
20.Precautions on On-Chip Debugger; (1) added  
Products of PWQN0028KA-B package included  
“or SDIP” “SDIP or a 28-pin plastic molded-HWQFN”  
1.30  
Apr 14, 2006  
1
2, 3  
Table 1.1, Table 1.2;  
Interrupts: Internal 8 10 sources,  
Package: “28-pin molded-plastic HWQFN” added  
5, 6  
9
Table 1.3, Table 1.4; Type No. added, deleted  
Figure 1.6 added  
12  
Table 1.7 added  
16, 17 Figure 3.1, Figure 3.2; Part Number added, deleted  
26 5.2 “When a capacitor is connected to ... pin 0.8VCC or more.” added  
35 to 38 Table 6.4, Table 6.5, Table 6.6, Table 6.12, Table 6.13, Table 6.14;  
revised  
54  
97  
98  
Figure 10.1 revised  
Figure 13.1 revised  
Figure 13.2;  
Option Function Select Register: NOTE 1 revised, NOTE 2 added  
Watchdog Timer Control Register: NOTE 1 deleted  
107  
136  
143  
Table 14.3; NOTE 1 added  
Figure 14.25 revised  
Table 14.12; NOTE 1 revised  
C - 6  
REVISION HISTORY  
R8C/18 Group, R8C/19 Group Hardware  
Description  
Summary  
Rev.  
1.30  
Date  
Page  
Apr 14, 2006  
148  
150  
164  
177  
Figure 15.3; NOTE 3 added  
Figure 15.5; NOTE 1 added  
Table 16.1 revised  
17.3.2;  
“The ROM code protect function is disabled .... on-chip flash memory.”  
deleted  
To disable ROM code protect ....” revised  
Figure 17.4; NOTE 1 revised, NOTE 2 added  
182  
192  
194  
Figure 17.5; NOTE 6 added  
Table 17.5; Value after Reset revised  
Figure 17.15 revised  
204, 205 Table 18.4, Table 18.5;  
TaAmbient temperature”,  
Conditions: VCC = 5.0 V at Topr = 25 °C deleted  
210, 214 Table 18.13, Table 18.20; The title revised, Condition of Stop Mode “Topr  
= 25 °C” added  
212, 216 Table 18.17, Table 18.24; Standard of td(C-Q) and tsu(D-C) revised  
229, 230 Package Dimensions revised, added  
231  
232  
Appendix Figure 2.1 revised  
Appendix Figure 3.1 revised  
C - 7  
R8C/18 Group, R8C/19 Group Hardware Manual  
Publication Data : Rev.0.10 Feb 15, 2005  
Rev.1.30 Apr 14, 2006  
Published by : Sales Strategic Planning Div.  
Renesas Technology Corp.  
© 2006. Renesas Technology Corp., All rights reserved. Printed in Japan  
R8C/18 Group, R8C/19 Group  
Hardware Manual  
2-6-2, Ote-machi, Chiyoda-ku, Tokyo,100-0004, Japan  

相关型号:

R8C1A

RENESAS 16-BIT SINGLE-CHIP MICROCOMPUTER R8C FAMILY / R8C/1x SERIES
RENESAS

R8C20

RENESAS MCU R8C FAMILY / R8C/2x SERIES
RENESAS
RENESAS

R8C22_08

RENESAS MCU
RENESAS
RENESAS

R8C24

SINGLE-CHIP 16-BIT CMOS MCU
RENESAS

R8C25

RENESAS 16-BIT SINGLE-CHIP MCU R8C FAMILY / R8C/2x SERIES
RENESAS

R8C26

SINGLE-CHIP 16-BIT CMOS MCU
RENESAS

R8C26_10

SINGLE-CHIP 16-BIT CMOS MCU
RENESAS

R8C27

RENESAS 16-BIT SINGLE-CHIP MCU R8C FAMILY / R8C/2x SERIES
RENESAS

R8C28

SINGLE-CHIP 16-BIT CMOS MCU
RENESAS

R8C28_08

RENESAS 16-BIT SINGLE-CHIP MCU R8C FAMILY / R8C/2x SERIES
RENESAS