Summary of 93C66 EEPROM chip with an AVR microcontroller
This article explains programming a 93C66 EEPROM with an AVR microcontroller for a moving message sign. It details the chip's pinout, connection to the AVR (S, C, D, Q pins), and configuration for 8-bit mode by tying ORG low. The text outlines seven instructions including READ, WRITE, EWEN, and ERASE, noting that EWEN must be sent first to enable writing. Data transmission involves clocking bits through the start bit, opcode, and address fields.
Parts used in the Moving Message Sign:
- 93C66 EEPROM chip
- AVR microcontroller
- Vcc power supply (+5V)
- GND ground connection
How to program a 93C66 EEPROM chip with an AVR microcontroller?
The 93C66 is a serially (MICROWIRE) Electrically Erasable Programmable ROM (EEPROM) chip with 4 kbit (4096 bit, can be ORGanized as 256 x 16bit or 512 x 8bit) memory space. Here a DIL version (which I will use in my moving message sign project) of the 93C66:
The 93C66 (ST) has five control pins, D (data input), C (clock), S (chip select), ORG (8- or 16bit organized) and Q (data output).
Other pins are Vcc (supply), Vss (GND) and DU (Don’t Use) Connect four (S, C, D and Q) of the five control pins directly to an AVR, connect Vcc to +5V, and connect Vss to GND. Tide ORG and DU to GND, the 93C66 will now be 8bit (byte) organized, meaning that the user can store 512 bytes.
If you power the 93C66 up, you must keep the S (chip select) line low, at init the 93C66 is in Write Disable mode (you cannot write yet). Here a diagram on how to connect the 93C66 to an AVR microcontroller:
The 93C66 operates with seven Instructions, READ (fetch data), WRITE (store data), EWEN (enable writing), EWDS (disable writing), ERASE (clear byte), ERALL (clear all memory), WRALL (write whole memory with the same data) The instructions are built from a startbit (a single bit), opcode bits (2 bits) and address bits (9 bits) The instructions READ, WRITE and ERASE are 3 bits (addressfield set by you), all other instructions are 12 bits. You can make for example a table with the instructions-data. Here the instruction set from the datasheet:

For more detail: 93C66 EEPROM chip with an AVR microcontroller
- How many control pins does the 93C66 have?
The 93C66 has five control pins which are D, C, S, ORG, and Q. - What happens if you tie ORG to GND?
Tying ORG to GND organizes the 93C66 as 8bit, allowing storage of 512 bytes. - Can you write data without sending the EWEN instruction?
No, you cannot write any data because the chip starts in Write Disable mode. - What is the first instruction you must transmit to the 93C66?
The first instruction you must transmit is the EWEN instruction to enable writing. - How do you initiate data transmission on the S line?
You make the S line high while keeping the clock low before setting data on the D pin. - Does the 93C66 operate with 7 or more instructions?
The 93C66 operates with exactly seven instructions including READ, WRITE, and ERASE. - What is the total memory space of the 93C66 chip?
The chip has a 4 kbit memory space organized as 256 x 16bit or 512 x 8bit. - Which pins connect directly to the AVR microcontroller?
You connect four control pins S, C, D, and Q directly to an AVR.

