Freescale Semiconductor, Inc.
SOFTWARE INTERFACE
Communication between the MC68HC705J1A and the 9356 is done with a synchronous serial protocol. As
mentioned earlier, the MC68HC705J1A bit programs its I/O pins to communicate with the 9356. A timing
diagram of the serial link can be found in the 9356 data sheet if needed.
The 9356 will accept seven different commands. They are as follows:
1)
2)
3)
4)
5)
6)
7)
READ —
WRITE —
WRALL —
ERASE —
ERAL
WEN
WDS
—
—
—
Read a 16-bit data word from an address in memory
Write a 16-bit data word from an address in memory
Write all addresses with the same 16-bit data word
Erase a 16-bit data word from an address in memory
Erase all addresses within the memory map
Erase/write enable the EEPROM memory
Erase/write disable the EEPROM memory
Freescale Semiconductor, Inc...
The 9356 transmission format is a frame of data bits containing an opcode, an address, and if needed, a
word of data. The opcode is three bits long, the address is eight bits long, and the data word is 16 bits long.
Table 1 illustrates the bit information each instruction needs.
Table 1.
Instruction
READ
WEN
ERASE
ERAL
WRITE
WRALL
WDS
Opcode
110
100
111
100
101
100
100
Address
A7–A0
11XXXXXX
A7–A0
10XXXXXX
A7–A0
01XXXXXX
00XXXXXX
D15–D0
D15–D0
Data
IMPLEMENTATION AND TEST
Software was written to provide subroutines to perform each of the seven commands. A total of four bytes
of RAM are needed to support the subroutines. These bytes are described below.
1)
2)
3)
4)
OP_CODE — Contains the opcode needed for the command
ADDR
DATA_H
DATA_L
— Contains the address for the command
— The high byte for the data word
— The low byte for the data word
As needed, each EEPROM command subroutine will call other supporting subroutines to execute the
transmission of data between the MC68HC705J1A and the 9356. Appendix B contains flowcharts for all of
these subroutines.
2
For More Information On This Product,
Go to: www.freescale.com
AN1241/D