Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
projects:icspio [2014/12/23 18:18] – external edit 127.0.0.1 | projects:icspio [2017/01/12 22:44] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 3: | Line 3: | ||
ICSP I/O is a protocol and group of functions designed | ICSP I/O is a protocol and group of functions designed | ||
to quickly develop test code for the devices supported | to quickly develop test code for the devices supported | ||
- | by the k8048 Microchip PIC programmer. | + | by [[: |
It uses the I/O lines used by the ICSP programming | It uses the I/O lines used by the ICSP programming | ||
Line 9: | Line 9: | ||
the Velleman K8048. | the Velleman K8048. | ||
- | ICSP I/O was not designed a replacement for more established | + | ICSP I/O was not designed |
and more reliable protocols but it can be used for prototyping. | and more reliable protocols but it can be used for prototyping. | ||
- | ==== Usage==== | + | === Licence |
+ | |||
+ | ICSP I/O is licensed under same terms as [[: | ||
+ | |||
+ | === Install === | ||
+ | |||
+ | < | ||
+ | hg clone http:// | ||
+ | cd pickles | ||
+ | make | ||
+ | make install | ||
+ | </ | ||
+ | |||
+ | === Usage === | ||
< | < | ||
Line 27: | Line 40: | ||
the main source file to ensure that this address is both valid and that there is enough space for allocation. | the main source file to ensure that this address is both valid and that there is enough space for allocation. | ||
- | ==== Demo ==== | + | The include files are located in / |
+ | |||
+ | === Demo === | ||
== Set LEDs and read switches in a loop == | == Set LEDs and read switches in a loop == | ||
< | < | ||
- | ktest 5 ARG | + | ptest 5 ARG |
</ | </ | ||
== Set LEDs and read switches from the command line == | == Set LEDs and read switches from the command line == | ||
< | < | ||
- | kio CMD ARG | + | pio CMD ARG |
- | Src/ | + | |
- | Src/ | + | |
</ | </ | ||
- | ==== Functions | + | === Functions ==== |
== GETBYTE == | == GETBYTE == | ||
Line 62: | Line 75: | ||
routines from within a sub-routine since it will overflow the stack. | routines from within a sub-routine since it will overflow the stack. | ||
- | ==== Protocol | + | === Protocol ==== |
PGD is used for data I/O with even parity and PGC for clock synchronisation. | PGD is used for data I/O with even parity and PGC for clock synchronisation. | ||
PGC is unidirectional and is only controlled by the master (host), this is the | PGC is unidirectional and is only controlled by the master (host), this is the | ||
- | slave. The interface may or not be inverted but this is catered for by the | + | slave. The interface may or not be inverted but this is catered for by |
- | k8048 Microchip PIC programmer | + | [[: |
- | Data is setup on the master prior to a clock low to high transition and setup | + | Data is set up on the master prior to a clock low to high transition and set up |
on the slave after a clock low to high transition. Data is read after a clock | on the slave after a clock low to high transition. Data is read after a clock | ||
high to low transition on both master and slave. | high to low transition on both master and slave. | ||
Line 91: | Line 104: | ||
be held high in order for data input to operate with the Velleman K8048. | be held high in order for data input to operate with the Velleman K8048. | ||
- | ==== Reference | + | === Reference === |
^Arch. ^Stack level| | ^Arch. ^Stack level| |