Go to content Go to menu

In System Programmer



MOSI: data input
MISO: data output
SCK: clock input
RESET: used to activate the serial Programming


Normally, the flash memory of an ATMEL microcontroller is programmed using a parallel interface, which consists of sending the data byte by byte (using 8 independent lines for the data, and another bunch of lines for the address, the control word and clock input). On the other hand ISP is performed using only 4 lines, and literally, data is transferred through 2 lines only, as in a I2C interface, where data is shifted in bit by bit though MOSI line, with a clock cycle between each bit and the next (on the SCK line).

MISO line is used for reading and for code verification, it is only used to output the code from the FLASH memory of the microcontroller.
The RST pin, which is normally used to reset the device, is also used to enable the 3 pins (MOSI, MISO and SCK) to be used for ISP simply by setting RST to HIGH (5V), otherwise if RST is low (0V), your program start running and those three pins, are used normally as P1.5, P1.6 and P1.7.