Bit 1
AC
: Auxiliary flag
0: no auxiliary carry
1: an operation results in a carry out of the low nibbles in addition, or no borrow from the
high nibble into the low nibble in subtraction
Bit 0
C
: Carry flag
0: no carry-out
1: an operation results in a carry during an addition operation or if a borrow does not take place
during a subtraction operation
C
is also affected by a rotate through carry instruction.
EEPROM Data Memory
The device contains an area of internal EEPROM Data Memory. EEPROM, which stands for
Electrically Erasable Programmable Read Only Memory, is by its nature a non-volatile form of
re-programmable memory, with data retention even when its power supply is removed. By
incorporating this kind of data memory, a whole new host of application possibilities are made
available to the designer. The availability of EEPROM storage allows information such as product
identification numbers, calibration values, specific user data, system setup data or other product
information to be stored directly within the product microcontroller. The process of reading and
writing data to the EEPROM memory has been reduced to a very trivial affair.
EEPROM Data Memory Structure
The EEPROM Data Memory capacity is 64
´
8 or 128
´
8 bits for this series of devices. Unlike the
Program Memory and RAM Data Memory, the EEPROM Data Memory is not directly mapped into
memory space and is therefore not directly addressable in the same way as the other types of memory.
Read and Write operations to the EEPROM are carried out in single byte operations using an address
and data register in Bank 0 and a single control register in Bank 1.
Device
Capacity
Address
BS83B08-3/B12-3/B16-3/B16G-3
64
´
8
00H ~ 3FH
BS83C24-3
128
´
8
00H ~ 7FH
EEPROM Registers
Three registers control the overall operation of the internal EEPROM Data Memory. These are the
address register, EEA, the data register, EED and a single control register, EEC. As both the EEA and
EED registers are located in Bank 0, they can be directly accessed in the same was as any other Special
Function Register. The EEC register however, being located in Bank1, cannot be addressed directly
and can only be read from or written to indirectly using the MP1 Memory Pointer and Indirect
Addressing Register, IAR1. Because the EEC control register is located at address 40H in Bank 1, the
MP1 Memory Pointer must first be set to the value 40H and the Bank Pointer register, BP, set to the
value, 01H, before any operations on the EEC register are executed.
BS83B08-3/B12-3/B16-3/B16G-3/C24-3
8-Bit Touch Key Flash MCU
Rev. 1.50
31
April 28, 2020