Skip to content

Commit

Permalink
Update DueAdcFast.cpp
Browse files Browse the repository at this point in the history
  • Loading branch information
AntonioPrevitali authored Feb 1, 2022
1 parent e0e48be commit f8043f5
Showing 1 changed file with 22 additions and 1 deletion.
23 changes: 22 additions & 1 deletion src/DueAdcFast.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -477,6 +477,11 @@ uint32_t DueAdcFast::FindValueForPin(uint8_t pin)


uint32_t DueAdcFast::FindAvgForPin(uint8_t pin,uint16_t pSkip, uint16_t nrM)
{
return FindAvgForPinPos(0,pin,pSkip,nrM);
}

uint32_t DueAdcFast::FindAvgForPinPos(uint32_t xpos,uint8_t pin,uint16_t pSkip, uint16_t nrM)
{
uint16_t xch;
uint16_t xval;
Expand All @@ -491,7 +496,10 @@ uint32_t DueAdcFast::FindAvgForPin(uint8_t pin,uint16_t pSkip, uint16_t nrM)
// controlla se canale e tra quelli che vengono raccolti/abilitati
if (!( enabcha & (1 << xch) )) return 0xFFFF; // canale non enabled
xch = xch << 12; // like format of CHNB TAG
curRPR = ADC->ADC_RPR;
if (xpos == 0)
curRPR = ADC->ADC_RPR;
else
curRPR = xpos;
prpr = (uint16_t*) curRPR;
if (pSkip > 0) // se richiesto indietreggia
{
Expand Down Expand Up @@ -540,6 +548,19 @@ uint32_t DueAdcFast::FindAvgForPin(uint8_t pin,uint16_t pSkip, uint16_t nrM)
}


// questa GetPosCurr è velocissima e quindi è chiamabile anche
// mentre si è dentro un interrupt...
uint32_t DueAdcFast::GetPosCurr(void)
{
uint32_t curRPR;
curRPR = ADC->ADC_RPR;
return curRPR;
}





uint32_t DueAdcFast::to10BitResolution(uint32_t value)
{
// convert value to 10 bit resolution (from 12bit)
Expand Down

0 comments on commit f8043f5

Please sign in to comment.