Stap 10: Gebruik de PIC18F4550
Welke LEDs gewenste en erachter te komen welke LEDs op het gewenste OFF. We gebruiken de gegevens uit voorbeeld 3 in stap #8.
MSb Lsb Hex
IC1 - 1ste Byte verzonden -> 11000000 0xC0
IC2 - 2de Byte verzonden -> 00000000 0x00
IC3 - 3e Byte verzonden -> 00000110 0x06
IC4 - 4e Byte verzonden -> 00001001 0x09
Dit is hoe de gegevens zou worden gestuurd in de functie: SPI_Send_595(0xC0000609);
Vrij eenvoudig. Neem elke hex waarde van bytes en regelen het in een 32-bits variabele beginnen met de 1ste byte en verder door naar de 4e byte. SPI_Send_595(uint32 data) zorgt voor het verzenden en arrêtering van de gegevens in van de 74HC595. Alle code is toegelicht, dus ik zal alleen postcode sommige pseudo hieronder wat de werking van de functie verklaart.
Pseudocode
-32-bits variabele wordt doorgegeven aan de functie SPI_Send_595(data)
-De MSB is de eerste byte verzonden uit de PIC18F4550 (het zal eindigen in IC1)
-De tweede byte wordt verzonden uit de PIC (het zal eindigen in IC2)
-De derde byte wordt verzonden uit de PIC (het zal eindigen in IC3)
-De LSB is de laatste byte verzonden uit de PIC (het eindigt in IC4)
-RD2 gaat hoog, die de gegevens in de registers van de verschuiving zakken
-RD2 gaat laag, terug te keren naar de standaardstatus