Hi, Tommy, Finally, I solved the mystery. It is not hardware, it is our firmware. We have some functions written in assembler for speed, and I finally found that one of averaging ADC post-processing functions uses "spike detection and ignoring" with the hardcoded threshold was set too low, 256 counts per loop. After increasing this to 1024 sine went through fine. I made it as passing parameter, so I can command what threshold level to use, and this has solved the issue Thanks for your help! Igor
↧