HelloWorld AD8556

Dependencies:   AD8556 mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "AD8556.h"
00003 Serial pc(USBTX, USBRX);
00004 AD8556 aop(PTD7); //KL25Z
00005 //AD8556 aop(p21); //MBED
00006 unsigned char mode=ADC_MODE_SIMULATION;
00007 float vdd=5.0,vss=0.0;
00008 
00009 void pc_rx(void)
00010 {
00011     char c;
00012     c=pc.getc();
00013     switch (c) {
00014         case 'h':
00015         case 'H':
00016             pc.printf("\r\nHELP\r\n");
00017             pc.printf("G : GAIN (V/V)\r\n");
00018             pc.printf("O : OFFSET (V)\r\n");
00019             pc.printf("M : MODE SIMULATION/FUSE\r\n");
00020             pc.printf("S : SUPPLY VDD VSS\r\n");
00021             
00022             break;
00023         case 'G':
00024             float gain;
00025             pc.printf("\r\nGAIN =");
00026             pc.scanf("%f",&gain);
00027             aop.prog_gain(gain,mode);
00028             pc.printf("%f\r\n",gain);
00029             break;
00030         case 'O':
00031             float offset;
00032             pc.printf("\r\nOFFSET =");
00033             pc.scanf("%f",&offset);
00034             aop.prog_vdac(offset,vdd,vss,mode);
00035             pc.printf("%f\r\n",offset);
00036             break;
00037         case 'M':
00038             pc.printf("\r\nMODE :");
00039             pc.printf("\r\n1:SIMULATION");
00040             pc.printf("\r\n2:FUSE");
00041             pc.scanf("%d",&mode);
00042             if(mode==2)
00043                 pc.printf("\r\nFUSE");
00044                 else
00045                 {
00046                     mode=ADC_MODE_SIMULATION;
00047                     pc.printf("\r\nSIMULATION");
00048                 }
00049             break;
00050         case 'S':
00051             pc.printf("\r\nSUPPLY :");
00052             pc.printf("\r\nVCC :");
00053             pc.scanf("%f",&vdd);
00054             pc.printf("%f\r\n",vdd);
00055             pc.printf("\r\nVSS :");
00056             pc.scanf("%f",&vss);
00057             pc.printf("%f\r\n",vss);
00058             break;
00059     }
00060 }
00061 
00062 
00063 
00064 int main()
00065 {
00066 pc.printf("\r\nAD8556 HelloWolrd 12/09/2013\r\n");
00067     //aop.init(ADC_Simulate_Parameter_Value,0x00, 0x00,0x7F);
00068 
00069     while (1) {
00070         if (pc.readable()) //reception d'une trame com
00071             pc_rx();
00072     }
00073 
00074 
00075 }