
AN1241/D
2
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)
READ
—
Read a 16-bit data word from an address in memory
2)
WRITE —
Write a 16-bit data word from an address in memory
3)
WRALL —
Write all addresses with the same 16-bit data word
4)
ERASE —
Erase a 16-bit data word from an address in memory
5)
ERAL
—
Erase all addresses within the memory map
6)
WEN
—
Erase/write enable the EEPROM memory
7)
WDS
—
Erase/write disable the EEPROM memory
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.
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)
OP_CODE — Contains the opcode needed for the command
2)
ADDR
— Contains the address for the command
3)
DATA_H
— The high byte for the data word
4)
DATA_L
— 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.
Instruction
Opcode
Address
Data
READ
110
A7–A0
WEN
100
11XXXXXX
ERASE
111
A7–A0
ERAL
100
10XXXXXX
WRITE
101
A7–A0
D15–D0
WRALL
100
01XXXXXX
D15–D0
WDS
100
00XXXXXX
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.