Am Donnerstag, 15. September 2016 23:26:24 UTC+2 schrieb Phil: > > (1) I know this because I tried reading the ADC REVISION register using > the PRU and got zero as a result. >
It takes some cycles before the ADC is up and running. Check the ID register several times. In libpruio it works similar to this snippet (find original code in file pruio_adc.p): LDI r2, 0b10 // load clock demand value MOV r1, 0x44E004BC // load CM_WKUP_ADC_TSC_CLKCTRL address SBBO r2, r1, 0, 1 // write clock register LDI r5, 0 // clear timeout counter MOV r3, 0x44E0D000 // load ADC address AdcWait: LBBO r0, r3, 0, 4 // load ADC REVISION QBNE AdcCopy, r0, 0 // if ADC is up -> copy config ADD r5, r5, 1 // increase timeout counter QBGE AdcWait, r5.b1, 16 // if no timeout -> wait AdcCopy: Regards -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/8b026fec-1f54-4566-a260-b7741ea25cc0%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
