Hello All,
I've got a question or two about the pp5020/H10 player and the ADC scrollpad interface.
1.) Is there ANY more information about this chipset, and where would I find it?
2.) The ADCs are quoted on the datasheet as being 8 bit, but the ADC code says they are 10 bit. Are the 8 bit ADCs used as 10 bit ADCs through a feature of the chip?
3.) If the adc_data2 bits 0 and 1 contain lowest bits of the 10 bit A/D, then the code in adc_h10.c does not me:
adc_data2 = (ADC_DATA2 >> (8*channel+6)) & 0x3.
Shouldn't this be:
adc_data2 = ADC_DATA2 >> (8*channel) & 0x3
or are the 2 lsb bits at the msb position of ADC_DATA2?
4.) The ADCs are not interrupt driven? Is it not more common to see a register which lets us know the A/D is completed? Again, without a datasheet, I can't tell, but everything seems to work.
Of course my end goal is to get the scrollpad working the way the original firmware works. So I've noticed touching the scrollpad at the bottom has quite a bit more noise than touching the top. At the top, the noise will be +/- 0x08 - 0x10 whereas at the bottom it is somewhere near +/- 0x70. Also there seems to be a periodic dip in the value. This has made it really difficult to get the input data filtered.
Any help would really be appreciated. I've looked at the iPod linux wiki memory map, and can't seem to relate it to the H10. For instance, does the H10 actually have access to the A/D converter interrupts?