Rob's web

ICSP

In-system programming (ISP) wil zeggen dat een microcontroller geprogrammeerd kan worden zonder dat hij van de printplaat gehaald moet worden. De controller hoeft dus niet geprogrammeerd te worden voordat deze in een systeem wordt geïnstalleerd. Deze techniek wordt het meeste toegepast in microcontrollers zoals de Atmel AVR serie en de Microchip PIC. Een de facto standaard voor in-circuit programmeren is de z.g. JTAG interface.

ISP headers

MISOMaster In, Slave Out
MOSIMaster Out, Slave In
SCKSerial clock
RSTReset
VCCVCC
GNDGround

Arduino

MegaUno
Nano
FunctieBusFunctieUno
Nano
Mega
5012MiSo12+5V--
5213SClk34MoSi1151
--Reset56GND--

Shields die Megacompatable zijn gebruiken de ICSP bus voor de data lijnen en niet de zij bus connectoren.

Voor het kiezen van een interface, SS-lijn, wordt een van de I/O poorten gebruikt. SS staat voor SlaveSelect.

Libraries

Om de bus te kunnen gebruiken moet deze in de sourcecode te worden gedeclareerd.

#include <SPI.h>