ADC internal channels read example.

Dependencies:   mbed

Committer:
adustm
Date:
Thu Aug 17 14:40:24 2017 +0000
Revision:
8:a5c45b3d6ba2
Parent:
7:61fede667db2
Fix typo in define list + fix display error

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bcostm 0:bd554f9d9a54 1 #include "mbed.h"
bcostm 0:bd554f9d9a54 2
bcostm 4:e784c25594d7 3 /*
bcostm 4:e784c25594d7 4 This basic example just shows how to read the ADC internal channels raw values.
bcostm 4:e784c25594d7 5 Please look in the corresponding device reference manual for a complete
bcostm 4:e784c25594d7 6 description of how to make a temperature sensor, VBat or Vref measurement.
bcostm 4:e784c25594d7 7 */
bcostm 1:55c36e464885 8
bcostm 4:e784c25594d7 9 AnalogIn adc_temp(ADC_TEMP);
bcostm 4:e784c25594d7 10 AnalogIn adc_vref(ADC_VREF);
adustm 8:a5c45b3d6ba2 11 #if defined(TARGET_DISCO_F051R8) || defined(TARGET_NUCLEO_F030R8) || defined(TARGET_NUCLEO_F031K6) || defined(TARGET_NUCLEO_F042K6) || defined(TARGET_NUCLEO_F070RB) || defined(TARGET_NUCLEO_F072RB) || defined(TARGET_NUCLEO_F091RC) || defined(TARGET_NUCLEO_F207ZG) || defined(TARGET_NUCLEO_F302R8) || defined(TARGET_NUCLEO_F303K8) || defined(TARGET_DISCO_F303VC) || defined(TARGET_NUCLEO_F303RE) || defined(TARGET_NUCLEO_F303ZE) || defined(TARGET_DISCO_F334C8) || defined(TARGET_NUCLEO_F334R8) || defined(TARGET_MTS_DRAGONFLY_F411RE) || defined(TARGET_MTS_MDOT_F405RG) || defined(TARGET_MTS_MDOT_F411RE) || defined(TARGET_DISCO_F401VC) || defined(TARGET_NUCLEO_F401RE) || defined(TARGET_ARCH_MAX) || defined(TARGET_DISCO_F407VG) || defined(TARGET_NUCLEO_F410RB) || defined(TARGET_ELMO_F411RE) || defined(TARGET_NUCLEO_F411RE) || defined(TARGET_NUCLEO_F412ZG) || defined(TARGET_DISCO_F413ZH) || defined(TARGET_DISCO_F429ZI) || defined(TARGET_NUCLEO_F429ZI) || defined(TARGET_NUCLEO_F439ZI) || defined(TARGET_B96B_F446VE) || defined(TARGET_NUCLEO_F446RE) || defined(TARGET_NUCLEO_F446ZE) || defined(TARGET_DISCO_F469NI) || defined(TARGET_DISCO_F746NG) || defined(TARGET_NUCLEO_F746ZG) || defined(TARGET_NUCLEO_F756ZG) || defined(TARGET_NUCLEO_F767ZI) || defined(TARGET_DISCO_F769NI) || defined(TARGET_DISCO_L072CZ_LRWAN1) || defined(TARGET_NUCLEO_L432KC) || defined(TARGET_DISCO_L476VG) || defined(TARGET_NUCLEO_L476RG) || defined(TARGET_NUCLEO_L486RG)
bcostm 4:e784c25594d7 12 AnalogIn adc_vbat(ADC_VBAT); // Warning: Not available on all devices
arostm 6:3e184b0bcc33 13 #endif
bcostm 0:bd554f9d9a54 14
bcostm 0:bd554f9d9a54 15 DigitalOut led(LED1);
bcostm 0:bd554f9d9a54 16
bcostm 0:bd554f9d9a54 17 int main()
bcostm 0:bd554f9d9a54 18 {
bcostm 4:e784c25594d7 19 printf("\nSTM32 ADC internal channels reading example\n");
bcostm 0:bd554f9d9a54 20 while(1) {
adustm 8:a5c45b3d6ba2 21 printf("ADC Temp = %f\n", (adc_temp.read()*100));
arostm 7:61fede667db2 22 printf("ADC VRef = %f\n", adc_vref.read());
adustm 8:a5c45b3d6ba2 23 #if defined(TARGET_DISCO_F051R8) || defined(TARGET_NUCLEO_F030R8) || defined(TARGET_NUCLEO_F031K6) || defined(TARGET_NUCLEO_F042K6) || defined(TARGET_NUCLEO_F070RB) || defined(TARGET_NUCLEO_F072RB) || defined(TARGET_NUCLEO_F091RC) || defined(TARGET_NUCLEO_F207ZG) || defined(TARGET_NUCLEO_F302R8) || defined(TARGET_NUCLEO_F303K8) || defined(TARGET_DISCO_F303VC) || defined(TARGET_NUCLEO_F303RE) || defined(TARGET_NUCLEO_F303ZE) || defined(TARGET_DISCO_F334C8) || defined(TARGET_NUCLEO_F334R8) || defined(TARGET_MTS_DRAGONFLY_F411RE) || defined(TARGET_MTS_MDOT_F405RG) || defined(TARGET_MTS_MDOT_F411RE) || defined(TARGET_DISCO_F401VC) || defined(TARGET_NUCLEO_F401RE) || defined(TARGET_ARCH_MAX) || defined(TARGET_DISCO_F407VG) || defined(TARGET_NUCLEO_F410RB) || defined(TARGET_ELMO_F411RE) || defined(TARGET_NUCLEO_F411RE) || defined(TARGET_NUCLEO_F412ZG) || defined(TARGET_DISCO_F413ZH) || defined(TARGET_DISCO_F429ZI) || defined(TARGET_NUCLEO_F429ZI) || defined(TARGET_NUCLEO_F439ZI) || defined(TARGET_B96B_F446VE) || defined(TARGET_NUCLEO_F446RE) || defined(TARGET_NUCLEO_F446ZE) || defined(TARGET_DISCO_F469NI) || defined(TARGET_DISCO_F746NG) || defined(TARGET_NUCLEO_F746ZG) || defined(TARGET_NUCLEO_F756ZG) || defined(TARGET_NUCLEO_F767ZI) || defined(TARGET_DISCO_F769NI) || defined(TARGET_DISCO_L072CZ_LRWAN1) || defined(TARGET_NUCLEO_L432KC) || defined(TARGET_DISCO_L476VG) || defined(TARGET_NUCLEO_L476RG) || defined(TARGET_NUCLEO_L486RG)
bcostm 4:e784c25594d7 24 printf("ADC VBat = %f\n", adc_vbat.read());
adustm 8:a5c45b3d6ba2 25 printf("\033[3A");
adustm 8:a5c45b3d6ba2 26 #else
adustm 8:a5c45b3d6ba2 27 printf("\033[2A");
arostm 7:61fede667db2 28 #endif
bcostm 0:bd554f9d9a54 29 led = !led;
bcostm 0:bd554f9d9a54 30 wait(1.0);
bcostm 0:bd554f9d9a54 31 }
bcostm 0:bd554f9d9a54 32 }