Test carte

Committer:
fabienlepoutre
Date:
Sun Feb 05 18:07:28 2012 +0000
Revision:
1:c7eef0f145fc
Parent:
0:5d57f03fdcca

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fabienlepoutre 0:5d57f03fdcca 1 #include <LibTest.h>
fabienlepoutre 0:5d57f03fdcca 2
fabienlepoutre 1:c7eef0f145fc 3
fabienlepoutre 0:5d57f03fdcca 4 AnalogIn In15(p15);
fabienlepoutre 0:5d57f03fdcca 5 AnalogIn In16(p16);
fabienlepoutre 0:5d57f03fdcca 6 AnalogIn In17(p17);
fabienlepoutre 0:5d57f03fdcca 7 AnalogOut Out18(p18);
fabienlepoutre 0:5d57f03fdcca 8 AnalogIn In19(p19);
fabienlepoutre 0:5d57f03fdcca 9 AnalogIn In20(p20);
fabienlepoutre 0:5d57f03fdcca 10
fabienlepoutre 0:5d57f03fdcca 11 int i_IntroTest(){
fabienlepoutre 0:5d57f03fdcca 12 int choix;
fabienlepoutre 0:5d57f03fdcca 13 pc.printf("\n\n\r Programme de test \n\n\r");
fabienlepoutre 0:5d57f03fdcca 14 pc.printf("Selectionner le test a effectuer: \n\r");
fabienlepoutre 0:5d57f03fdcca 15 pc.printf("1. CAN / CNA \n\r");
fabienlepoutre 0:5d57f03fdcca 16
fabienlepoutre 0:5d57f03fdcca 17 pc.printf("Choix : ");
fabienlepoutre 0:5d57f03fdcca 18 pc.scanf("%d", &choix);
fabienlepoutre 0:5d57f03fdcca 19 pc.printf("%d \n \r", choix);
fabienlepoutre 0:5d57f03fdcca 20
fabienlepoutre 0:5d57f03fdcca 21
fabienlepoutre 0:5d57f03fdcca 22 return choix;
fabienlepoutre 0:5d57f03fdcca 23 }
fabienlepoutre 0:5d57f03fdcca 24
fabienlepoutre 0:5d57f03fdcca 25 void v_TestCAN_CNA(){
fabienlepoutre 0:5d57f03fdcca 26 char char1 = 0;
fabienlepoutre 0:5d57f03fdcca 27 float val=1;
fabienlepoutre 0:5d57f03fdcca 28 int aff = 0;
fabienlepoutre 0:5d57f03fdcca 29 pc.printf("\033[2J");
fabienlepoutre 0:5d57f03fdcca 30 pc.printf("\033[H");
fabienlepoutre 0:5d57f03fdcca 31
fabienlepoutre 0:5d57f03fdcca 32 while(char1 != 'q'){
fabienlepoutre 0:5d57f03fdcca 33
fabienlepoutre 0:5d57f03fdcca 34
fabienlepoutre 0:5d57f03fdcca 35 pc.printf("valeur testee = %f : \n\r", val);
fabienlepoutre 0:5d57f03fdcca 36
fabienlepoutre 0:5d57f03fdcca 37 int result = i_TestPorts(val, aff);
fabienlepoutre 0:5d57f03fdcca 38 aff =0;
fabienlepoutre 0:5d57f03fdcca 39 if((result == 6)&&val<3.3){
fabienlepoutre 0:5d57f03fdcca 40 pc.printf("Il y a %d ports defaillants et V < 3,3V => Probleme sur Port Analog Out ", result);
fabienlepoutre 0:5d57f03fdcca 41 }
fabienlepoutre 0:5d57f03fdcca 42
fabienlepoutre 0:5d57f03fdcca 43 pc.printf("Continuer? y / q voir valeur des ports : v \r\n");
fabienlepoutre 0:5d57f03fdcca 44 char1 = pc.getc();
fabienlepoutre 0:5d57f03fdcca 45 if(char1 == 'v'){
fabienlepoutre 0:5d57f03fdcca 46 aff = 1;
fabienlepoutre 0:5d57f03fdcca 47 }
fabienlepoutre 0:5d57f03fdcca 48
fabienlepoutre 0:5d57f03fdcca 49 val = val + 0.2;
fabienlepoutre 0:5d57f03fdcca 50 if(val >= 3.3){
fabienlepoutre 0:5d57f03fdcca 51 val = 0;
fabienlepoutre 0:5d57f03fdcca 52 }
fabienlepoutre 0:5d57f03fdcca 53
fabienlepoutre 0:5d57f03fdcca 54 pc.printf("\033[2J");
fabienlepoutre 0:5d57f03fdcca 55 pc.printf("\033[H");
fabienlepoutre 0:5d57f03fdcca 56
fabienlepoutre 0:5d57f03fdcca 57 }
fabienlepoutre 0:5d57f03fdcca 58 }
fabienlepoutre 0:5d57f03fdcca 59
fabienlepoutre 0:5d57f03fdcca 60
fabienlepoutre 0:5d57f03fdcca 61 int i_TestPorts(float val, int aff){
fabienlepoutre 0:5d57f03fdcca 62 int ret = 0;
fabienlepoutre 0:5d57f03fdcca 63 val = val/3.3;
fabienlepoutre 0:5d57f03fdcca 64 Out18 = val;
fabienlepoutre 0:5d57f03fdcca 65
fabienlepoutre 0:5d57f03fdcca 66 printf("Compte rendu du test : \r\n");
fabienlepoutre 0:5d57f03fdcca 67 if((In15.read() < (val-0.01))||(In15 > val + 0.01)){
fabienlepoutre 0:5d57f03fdcca 68 printf("Port p15 inexact \n\r");
fabienlepoutre 0:5d57f03fdcca 69 ret ++;
fabienlepoutre 0:5d57f03fdcca 70 }
fabienlepoutre 0:5d57f03fdcca 71 if((In16.read() < (val-0.01))||(In16 > val + 0.01)){
fabienlepoutre 0:5d57f03fdcca 72 printf("Port p16 inexact \n\r");
fabienlepoutre 0:5d57f03fdcca 73 ret ++;
fabienlepoutre 0:5d57f03fdcca 74 }
fabienlepoutre 0:5d57f03fdcca 75
fabienlepoutre 0:5d57f03fdcca 76 if((In17.read() < (val-0.01))||(In17 > val + 0.01)){
fabienlepoutre 0:5d57f03fdcca 77 printf("Port p17 inexact \n\r");
fabienlepoutre 0:5d57f03fdcca 78 ret ++;
fabienlepoutre 0:5d57f03fdcca 79 }
fabienlepoutre 0:5d57f03fdcca 80
fabienlepoutre 0:5d57f03fdcca 81 if((Out18.read() < (val-0.01))||(Out18.read() > val + 0.01)){
fabienlepoutre 0:5d57f03fdcca 82 printf("Port p18 inexact \n\r");
fabienlepoutre 0:5d57f03fdcca 83 ret ++;
fabienlepoutre 0:5d57f03fdcca 84 }
fabienlepoutre 0:5d57f03fdcca 85
fabienlepoutre 0:5d57f03fdcca 86 if((In19.read() < (val-0.01))||(In19 > val + 0.01)){
fabienlepoutre 0:5d57f03fdcca 87 printf("Port p19 inexact \n\r");
fabienlepoutre 0:5d57f03fdcca 88 ret ++;
fabienlepoutre 0:5d57f03fdcca 89 }
fabienlepoutre 0:5d57f03fdcca 90
fabienlepoutre 0:5d57f03fdcca 91 if((In20.read() < (val-0.01))||(In20 > val + 0.01)){
fabienlepoutre 0:5d57f03fdcca 92 printf("Port p20 inexact \n\r");
fabienlepoutre 0:5d57f03fdcca 93 ret ++;
fabienlepoutre 0:5d57f03fdcca 94 }
fabienlepoutre 0:5d57f03fdcca 95 if(aff ==1){
fabienlepoutre 0:5d57f03fdcca 96 printf("p15 = %f, \r\n", In15.read()*3.3);
fabienlepoutre 0:5d57f03fdcca 97 printf("p16 = %f, \r\n", In16.read()*3.3);
fabienlepoutre 0:5d57f03fdcca 98 printf("p17 = %f, \r\n", In17.read()*3.3);
fabienlepoutre 0:5d57f03fdcca 99 printf("p18 = %f, \r\n", Out18.read()*3.3);
fabienlepoutre 0:5d57f03fdcca 100 printf("p19 = %f, \r\n", In19.read()*3.3);
fabienlepoutre 0:5d57f03fdcca 101 printf("p20 = %f, \r\n", In20.read()*3.3);
fabienlepoutre 0:5d57f03fdcca 102 }
fabienlepoutre 0:5d57f03fdcca 103
fabienlepoutre 0:5d57f03fdcca 104 return ret;
fabienlepoutre 0:5d57f03fdcca 105
fabienlepoutre 0:5d57f03fdcca 106 }