Librairie de l'IOGS nécessaire pour utiliser le CNA AD7303
AD7303.cpp
- Committer:
- Thur
- Date:
- 2017-06-22
- Revision:
- 0:30a6c5c8c8eb
File content as of revision 0:30a6c5c8c8eb:
#include "AD7303.h" #include "mbed.h" AD7303::AD7303(PinName Cs,PinName Mosi, PinName Miso, PinName Sck) : CS_DAC(Cs),ad7303(Mosi,Miso,Sck) {}; /* * Initialisation du CNA * Internal Vref / Power-Up on both DACA and DACB * Load DACA and DACB with VDD/2 on outputs */ void AD7303::initDAC(void) { // CS DAC CS_DAC = 1; wait_ms(10); CS_DAC = 0; ad7303.write(INT_REF | UPDATE_DACA); ad7303.write(0x80); CS_DAC = 1; wait_ms(10); CS_DAC = 0; ad7303.write(INT_REF | UPDATE_DACB); ad7303.write(0x80); CS_DAC = 1; wait_ms(10); return; } /* * Changement mode de configuration * entrees : * mode : mode de fonctionnement souhaite * val : valeur en sortie (8 bits) */ void AD7303::changeModeDAC(char mode, char val) { CS_DAC = 0; ad7303.write(mode); ad7303.write(val); CS_DAC = 1; return; } /* * Modification de la tension de sortie du DACA - Reference interne * entree : * val : valeur sur 8 bits de la tension a appliquer */ void AD7303::changeDACA_IntRef(char val) { CS_DAC = 0; ad7303.write(INT_REF | UPDATE_DACA); ad7303.write(val); CS_DAC = 1; return; } /* * Modification de la tension de sortie du DACB - Reference interne * entree : * val : valeur sur 8 bits de la tension a appliquer */ void AD7303::changeDACB_IntRef(char val) { CS_DAC = 0; ad7303.write(INT_REF | UPDATE_DACB); ad7303.write(val); CS_DAC = 1; return; } /* * Modification de la tension de sortie du DACA - Reference externe * entree : * val : valeur sur 8 bits de la tension a appliquer */ void AD7303::changeDACA_ExtRef(char val) { CS_DAC = 0; ad7303.write(EXT_REF | UPDATE_DACA); ad7303.write(val); CS_DAC = 1; return; } /* * Modification de la tension de sortie du DACB - Reference externe * entree : * val : valeur sur 8 bits de la tension a appliquer */ void AD7303::changeDACB_ExtRef(char val) { CS_DAC = 0; ad7303.write(EXT_REF | UPDATE_DACB); ad7303.write(val); CS_DAC = 1; return; }