Exemple
de programme C - MLI double
Le programme est identique au
précédent seul change les valeurs des signaux MLI
do
{
P1=0xFF;
capt = P1;
switch (capt) // codage de la
position sur 4 capteurs
{
case 0x7F : mem2 = 0xF0; mem4
= 0x00;LED=1;break;
case 0x3F : mem2 = 0xE0; mem4
= 0x10;LED=1;break;
case 0xBF : mem2 = 0xD0; mem4
= 0x20;LED=1;break;
case 0x9F : mem2 = 0xC0; mem4
= 0x40;LED=1;break;
case 0xDF : mem2 = 0xB0; mem4
= 0x50;LED=1;break;
case 0xCF : mem2 = 0xA0; mem4
= 0x60;LED=1;break;
case 0xEF : mem2 = 0x90; mem4
= 0x70;LED=0;break;
case 0xE7 : mem2 = 0x80; mem4
= 0x80;LED=0;break; //centre
case 0xF7 : mem2 = 0x70; mem4
= 0x90;LED=0;break;
case 0xF3 : mem2 = 0x60; mem4
= 0xA0;LED=1;break;
case 0xFB : mem2 = 0x50; mem4
= 0xB0;LED=1;break;
case 0xF9 : mem2 = 0x40; mem4
= 0xC0;LED=1;break;
case 0xFD : mem2 = 0x20; mem4
= 0xD0;LED=1;break;
case 0xFC : mem2 = 0x10; mem4
= 0xE0;LED=1;break;
case 0xFE : mem2 = 0x00; mem4
= 0xF0;LED=1;break;
}
mem1=(255-mem2);
mem3=(255-mem4);
}
while(1); |