2015-07-17 11:44:42 +00:00
|
|
|
unsigned long start_time;
|
|
|
|
|
unsigned long stop_time;
|
|
|
|
|
unsigned long values[2000];
|
|
|
|
|
|
|
|
|
|
void setup() {
|
2015-07-17 15:14:55 +00:00
|
|
|
Serial.begin(115200);
|
2015-07-17 11:44:42 +00:00
|
|
|
REG_ADC_MR = 0x10380180; // change from 10380200 to 10380180, 1 is the PREESCALER and 8 means FREERUN
|
|
|
|
|
ADC -> ADC_CHER = 0x03; // enable ADC on pin A0
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void loop() {
|
|
|
|
|
unsigned int i;
|
|
|
|
|
//reads in on pins 6 and 7
|
|
|
|
|
|
|
|
|
|
start_time = micros();
|
|
|
|
|
for(i=0;i<1000;i++){
|
|
|
|
|
while((ADC->ADC_ISR & 0x03)==0); // wait for conversion
|
|
|
|
|
values[i]=ADC->ADC_CDR[0];
|
|
|
|
|
values[i+1000]=ADC->ADC_CDR[1];//get values
|
|
|
|
|
}
|
|
|
|
|
stop_time = micros();
|
|
|
|
|
|
|
|
|
|
Serial.print("Total time: ");
|
|
|
|
|
Serial.println(stop_time-start_time);
|
|
|
|
|
Serial.print("Average time per conversion: ");
|
|
|
|
|
Serial.println((float)(stop_time-start_time)/2000);
|
|
|
|
|
|
|
|
|
|
Serial.println("Values: ");
|
|
|
|
|
for(i=0;i<1000;i++) {
|
|
|
|
|
Serial.print(values[i]);
|
|
|
|
|
Serial.print(", ");
|
|
|
|
|
Serial.println(values[i+1000]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
delay(2000);
|
|
|
|
|
}
|