HelloWorld AD8556

Dependencies:   AD8556 mbed

Committer:
fblanc
Date:
Thu Sep 12 13:35:15 2013 +0000
Revision:
1:e43b05e13f28
Parent:
0:019c7e30bd13
3.3V ->5V

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fblanc 0:019c7e30bd13 1 #include "mbed.h"
fblanc 0:019c7e30bd13 2 #include "AD8556.h"
fblanc 0:019c7e30bd13 3 Serial pc(USBTX, USBRX);
fblanc 0:019c7e30bd13 4 AD8556 aop(PTD7); //KL25Z
fblanc 0:019c7e30bd13 5 //AD8556 aop(p21); //MBED
fblanc 0:019c7e30bd13 6 unsigned char mode=ADC_MODE_SIMULATION;
fblanc 1:e43b05e13f28 7 float vdd=5.0,vss=0.0;
fblanc 0:019c7e30bd13 8
fblanc 0:019c7e30bd13 9 void pc_rx(void)
fblanc 0:019c7e30bd13 10 {
fblanc 0:019c7e30bd13 11 char c;
fblanc 0:019c7e30bd13 12 c=pc.getc();
fblanc 0:019c7e30bd13 13 switch (c) {
fblanc 0:019c7e30bd13 14 case 'h':
fblanc 0:019c7e30bd13 15 case 'H':
fblanc 0:019c7e30bd13 16 pc.printf("\r\nHELP\r\n");
fblanc 0:019c7e30bd13 17 pc.printf("G : GAIN (V/V)\r\n");
fblanc 0:019c7e30bd13 18 pc.printf("O : OFFSET (V)\r\n");
fblanc 0:019c7e30bd13 19 pc.printf("M : MODE SIMULATION/FUSE\r\n");
fblanc 0:019c7e30bd13 20 pc.printf("S : SUPPLY VDD VSS\r\n");
fblanc 0:019c7e30bd13 21
fblanc 0:019c7e30bd13 22 break;
fblanc 0:019c7e30bd13 23 case 'G':
fblanc 0:019c7e30bd13 24 float gain;
fblanc 0:019c7e30bd13 25 pc.printf("\r\nGAIN =");
fblanc 0:019c7e30bd13 26 pc.scanf("%f",&gain);
fblanc 0:019c7e30bd13 27 aop.prog_gain(gain,mode);
fblanc 0:019c7e30bd13 28 pc.printf("%f\r\n",gain);
fblanc 0:019c7e30bd13 29 break;
fblanc 0:019c7e30bd13 30 case 'O':
fblanc 0:019c7e30bd13 31 float offset;
fblanc 0:019c7e30bd13 32 pc.printf("\r\nOFFSET =");
fblanc 0:019c7e30bd13 33 pc.scanf("%f",&offset);
fblanc 0:019c7e30bd13 34 aop.prog_vdac(offset,vdd,vss,mode);
fblanc 0:019c7e30bd13 35 pc.printf("%f\r\n",offset);
fblanc 0:019c7e30bd13 36 break;
fblanc 0:019c7e30bd13 37 case 'M':
fblanc 0:019c7e30bd13 38 pc.printf("\r\nMODE :");
fblanc 0:019c7e30bd13 39 pc.printf("\r\n1:SIMULATION");
fblanc 0:019c7e30bd13 40 pc.printf("\r\n2:FUSE");
fblanc 0:019c7e30bd13 41 pc.scanf("%d",&mode);
fblanc 0:019c7e30bd13 42 if(mode==2)
fblanc 0:019c7e30bd13 43 pc.printf("\r\nFUSE");
fblanc 0:019c7e30bd13 44 else
fblanc 0:019c7e30bd13 45 {
fblanc 0:019c7e30bd13 46 mode=ADC_MODE_SIMULATION;
fblanc 0:019c7e30bd13 47 pc.printf("\r\nSIMULATION");
fblanc 0:019c7e30bd13 48 }
fblanc 0:019c7e30bd13 49 break;
fblanc 0:019c7e30bd13 50 case 'S':
fblanc 0:019c7e30bd13 51 pc.printf("\r\nSUPPLY :");
fblanc 0:019c7e30bd13 52 pc.printf("\r\nVCC :");
fblanc 0:019c7e30bd13 53 pc.scanf("%f",&vdd);
fblanc 0:019c7e30bd13 54 pc.printf("%f\r\n",vdd);
fblanc 0:019c7e30bd13 55 pc.printf("\r\nVSS :");
fblanc 0:019c7e30bd13 56 pc.scanf("%f",&vss);
fblanc 0:019c7e30bd13 57 pc.printf("%f\r\n",vss);
fblanc 0:019c7e30bd13 58 break;
fblanc 0:019c7e30bd13 59 }
fblanc 0:019c7e30bd13 60 }
fblanc 0:019c7e30bd13 61
fblanc 0:019c7e30bd13 62
fblanc 0:019c7e30bd13 63
fblanc 0:019c7e30bd13 64 int main()
fblanc 0:019c7e30bd13 65 {
fblanc 1:e43b05e13f28 66 pc.printf("\r\nAD8556 HelloWolrd 12/09/2013\r\n");
fblanc 0:019c7e30bd13 67 //aop.init(ADC_Simulate_Parameter_Value,0x00, 0x00,0x7F);
fblanc 0:019c7e30bd13 68
fblanc 0:019c7e30bd13 69 while (1) {
fblanc 0:019c7e30bd13 70 if (pc.readable()) //reception d'une trame com
fblanc 0:019c7e30bd13 71 pc_rx();
fblanc 0:019c7e30bd13 72 }
fblanc 0:019c7e30bd13 73
fblanc 0:019c7e30bd13 74
fblanc 0:019c7e30bd13 75 }