Stap 4: Laten we doen wat programmeren
Dus nu dat we de circuits, is het harde werk er ^^!Ik ben met behulp van de 16F88 van een pic van microchip dus ik zal het gebruiken van MPLAB IDE naar programma, de taal die wordt gebruikt is de C, MPLAB moet een speciale compiler (shareware) genaamd CCS, maar u kunt het programma schrijven in assembler (ik ga niet om te leren hoe om het te doen in asm).
Hier is de fonctions en de verschillende definitie van elk lijnen:
#include < 16F88.h >
#fuses INTRC, NOPROTECT, NOWDT, NOLVP
#use Delay(Clock=4000000)
#define Y1 pin_B7
#define Y2 pin_B6
#define Y3 pin_B5
#define Y4 pin_B4
#define X1 pin_A0
#define X2 pin_A7
#define X3 pin_A6
#define LED_OK pin_A1
#define LED_NO pin_A2
#define per 10
#define nul 11
#define B 12
int L1 = 0, L2 = 0, L3 = 0, L4 = 0;
VOID Clavier()
{
L1 = 0; L2 = 0; L3 = 0; L4 = 0;
output_high(Y1);
output_low(y2);
output_low(Y3);
output_low(Y4);
Als (input(X1))
{
L1 = 7;
}
anders als (input(X2))
{
L1 = 8;
}
anders als (input(X3))
{
L1 = 9;
}
output_low(Y1);
output_high(y2);
output_low(Y3);
output_low(Y4);
Als (input(X1))
{
L2 = 4;
}
anders als (input(X2))
{
L2 = 5;
}
anders als (input(X3))
{
L2 = 6;
}
output_low(Y1);
output_low(y2);
output_high(Y3);
output_low(Y4);
Als (input(X1))
{
L3 = 1;
}
anders als (input(X2))
{
L3 = 2;
}
anders als (input(X3))
{
L3 = 3;
}
output_low(Y1);
output_low(y2);
output_low(Y3);
output_high(Y4);
Als (input(X1))
{
L4 = A; Lettre A
}
anders als (input(X2))
{
L4 = NUL; Chiffre 0
}
anders als (input(X3))
{
L4 = B; Lettre B
}
}
VOID Code()
{
Als (L1 == 7 & & L2 == 5 & & L3 == 2 & & L4 == A)
{
output_high(LED_OK);
output_low(LED_NO);
L1 = 0; L2 = 0; L3 = 0; L4 = 0;
delay_ms(1000);
output_low(LED_NO);
output_low(LED_OK);
}
anders als (L1 == 0 || L2 == 0 || L3 == 0 || L4 == 0)
{
output_low(LED_NO);
output_low(LED_OK);
}
anders als (L1! = 7 & & L2! = 5 & & L3! = 2 & & L4! = A)
{
output_high(LED_NO);
output_low(LED_OK);
delay_ms(1000);
output_low(LED_NO);
output_low(LED_OK);
L1 = 0; L2 = 0; L3 = 0; L4 = 0;
}
}
En hier hebben we het hoofdprogramma die roepen de fonction dat we gezien
#include "fonctions.h"
void main()
{
while(1)
{
Clavier();
Code();
}
}
We lezen het toetsenblok, elke regel door elke regel en vervolgens zoeken we als de code juist is!
That's all Folks!
Succes