1*61c4878aSAndroid Build Coastguard Worker.. _module-pw_analog: 2*61c4878aSAndroid Build Coastguard Worker 3*61c4878aSAndroid Build Coastguard Worker========= 4*61c4878aSAndroid Build Coastguard Workerpw_analog 5*61c4878aSAndroid Build Coastguard Worker========= 6*61c4878aSAndroid Build Coastguard Worker.. pigweed-module:: 7*61c4878aSAndroid Build Coastguard Worker :name: pw_analog 8*61c4878aSAndroid Build Coastguard Worker 9*61c4878aSAndroid Build Coastguard Workerpw_analog contains interfaces and utility functions for using the ADC. 10*61c4878aSAndroid Build Coastguard Worker 11*61c4878aSAndroid Build Coastguard Worker-------- 12*61c4878aSAndroid Build Coastguard WorkerFeatures 13*61c4878aSAndroid Build Coastguard Worker-------- 14*61c4878aSAndroid Build Coastguard Worker 15*61c4878aSAndroid Build Coastguard Workerpw::analog::AnalogInput 16*61c4878aSAndroid Build Coastguard Worker======================= 17*61c4878aSAndroid Build Coastguard WorkerThe common interface for obtaining ADC samples. This interface represents 18*61c4878aSAndroid Build Coastguard Workera single analog input or channel. Users will need to supply their own ADC 19*61c4878aSAndroid Build Coastguard Workerdriver implementation in order to configure and enable the ADC peripheral. 20*61c4878aSAndroid Build Coastguard WorkerUsers are responsible for managing multithreaded access to the ADC driver if the 21*61c4878aSAndroid Build Coastguard WorkerADC services multiple channels. 22*61c4878aSAndroid Build Coastguard Worker 23*61c4878aSAndroid Build Coastguard Workerpw::analog::MicrovoltInput 24*61c4878aSAndroid Build Coastguard Worker========================== 25*61c4878aSAndroid Build Coastguard WorkerThe common interface for obtaining voltage samples in microvolts. This interface 26*61c4878aSAndroid Build Coastguard Workerrepresents a single voltage input or channel. Users will need to supply their 27*61c4878aSAndroid Build Coastguard Workerown ADC driver implementation in order to configure and enable the ADC 28*61c4878aSAndroid Build Coastguard Workerperipheral in order to provide the reference voltages and to configure and 29*61c4878aSAndroid Build Coastguard Workerenable the ADC peripheral where needed. Users are responsible for managing 30*61c4878aSAndroid Build Coastguard Workermultithreaded access to the ADC driver if the ADC services multiple channels. 31*61c4878aSAndroid Build Coastguard Worker 32*61c4878aSAndroid Build Coastguard Workerpw::analog::GmockAnalogInput 33*61c4878aSAndroid Build Coastguard Worker============================ 34*61c4878aSAndroid Build Coastguard WorkergMock of AnalogInput used for testing and mocking out the AnalogInput. 35*61c4878aSAndroid Build Coastguard Worker 36*61c4878aSAndroid Build Coastguard Workerpw::analog::GmockMicrovoltInput 37*61c4878aSAndroid Build Coastguard Worker=============================== 38*61c4878aSAndroid Build Coastguard WorkergMock of MicrovoltInput used for testing and mocking out the MicrovoltInput. 39*61c4878aSAndroid Build Coastguard Worker 40*61c4878aSAndroid Build Coastguard Worker------------- 41*61c4878aSAndroid Build Coastguard WorkerAPI reference 42*61c4878aSAndroid Build Coastguard Worker------------- 43*61c4878aSAndroid Build Coastguard Worker 44*61c4878aSAndroid Build Coastguard Workerpw::analog::AnalogInput 45*61c4878aSAndroid Build Coastguard Worker======================= 46*61c4878aSAndroid Build Coastguard Worker.. doxygenclass:: pw::analog::AnalogInput 47*61c4878aSAndroid Build Coastguard Worker :members: 48*61c4878aSAndroid Build Coastguard Worker 49*61c4878aSAndroid Build Coastguard Workerpw::analog::GmockAnalogInput 50*61c4878aSAndroid Build Coastguard Worker============================ 51*61c4878aSAndroid Build Coastguard Worker.. literalinclude:: public/pw_analog/analog_input_gmock.h 52*61c4878aSAndroid Build Coastguard Worker :start-after: #pragma once 53*61c4878aSAndroid Build Coastguard Worker :end-before: } // namespace pw::analog 54*61c4878aSAndroid Build Coastguard Worker 55*61c4878aSAndroid Build Coastguard Workerpw::analog::MicrovoltInput 56*61c4878aSAndroid Build Coastguard Worker========================== 57*61c4878aSAndroid Build Coastguard Worker.. doxygenclass:: pw::analog::MicrovoltInput 58*61c4878aSAndroid Build Coastguard Worker :members: 59*61c4878aSAndroid Build Coastguard Worker 60*61c4878aSAndroid Build Coastguard Workerpw::analog::GmockMicrovoltInput 61*61c4878aSAndroid Build Coastguard Worker=============================== 62*61c4878aSAndroid Build Coastguard Worker.. literalinclude:: public/pw_analog/microvolt_input_gmock.h 63*61c4878aSAndroid Build Coastguard Worker :start-after: #pragma once 64*61c4878aSAndroid Build Coastguard Worker :end-before: } // namespace pw::analog 65