VoltageControl
1.0.0
需要處理文本。我不會拒絕幫助:)
Arduino電壓控制庫。
該類是模板,使用1個參數: uint8_t _id = 0 。第一個非組合參數透明地將uint8_t值傳達給了引起的燒瓶,這使您可以在每瓶使用幾個類的副本時識別類。例如,PIN讀取ADC:
VoltageControl < A1 > Volt1 ;
VoltageControl < A2 > Volt2 ;
//...
Volt1 . SetRequest ( OnRequestVoltage );
Volt2 . SetRequest ( OnRequestVoltage );
//...
int32_t OnRequestVoltage ( uint8_t id )
{
return analogRead ( id );
}為了方便起見,班上有兩位設計師。
` VoltageControl ()`沒有參數的類設計師。使用時,需要通過Set方法傳達設置。
VoltageControl ( request_t callback_req , uint16_t interval_req , response_t callback_res , bool once , uint32_t coefficient , int32_t vmin , int32_t vmax )類設計師指示所有設置。
SetResponse()的描述,ACP值的翻譯係數,最小允許電壓的最小允許電壓,最大允許電壓。 int32_t OnRequestVoltage ( uint8_t id )當課程讀取ADC的值時,將引起此燒瓶功能。您可以執行或集成的讀取ADC( analogRead() )的方法,直接與寄存器一起使用,也可以為任何可用的輪胎讀取外部ADC。
void OnResponseVoltage ( uint8_t id , int32_t value , int8_t state )當您需要通知主要程序有關更改的主題時,此坦克功能將是交換。您可以決定代碼的分支,並在此處完成所需的一切。
GetValid()的描述。 void SetRequest ( request_t callback , uint16_t interval )該方法表示讀取ADC的儲罐功能。
void SetResponse ( response_t callback , bool once = false)該方法表示電壓測量結果的電壓測量結果。如果once = true ,則只有在更改條件(減少,增加,正常電壓)時,會發生呼叫功能的呼叫,否則挑戰將在ADC的每次測量中發生。
void SetCoefficient ( uint32_t coefficient )該方法確定了將ACP值轉換為微波的係數。
void SetMin ( uint32_t vmin )該方法確定最小允許電壓。
void SetMax ( uint32_t vmax )該方法確定最大允許電壓。
void SetStart ()該方法設置了類啟動標誌。
void SetStop ()該方法設置了類停止標誌。
int8_t GetValid ()該方法檢查電壓並以數字形式返回結果。
-1少於允許的0 1 。 int32_t GetVoltage ()該方法返回當前電壓。
void Processing ( uint32_t currentTime = millis ())數字處理方法。如果您的loop具有當前時間的定義,則建議將這一次作為參數傳遞。
static inline uint32_t GetCoefficient ( float vref , float r1 = 0 , float r2 = 1 , float quantization = 1024 )有助於計算SetCoefficient()方法的係數的實用程序。如果不使用分隔線,則僅表示VREF。