首先咱要搞明白一个问题,可能有不少人会没注意,就是工作频率和
时钟频率,对于
单片机,咱们通常使用时钟的说法,而接受单片机控制的片子,如ADC0809是用工作频率的说法。
ADC0809处理信号的快慢,是通过CLK端的输入信号频率控制的,而对于ADC0809来说,最高工作频率是640KHZ。因此,CLK的输入信号不要大于640KHZ。
可以说有两种方法,一种就是通过单片机的ALE口,由于ALE口的频率是单片机时钟频率的1/6,所以在ALE接入CLK时,如果单片机的时钟频率是6MHZ,那么CLK的频率是1MHZ,大于规定的最大值640KHZ,因此还要在ALE与CLK之间加一个二分频,此时ADC0809的工作频率是500KHZ,可以工作。
另一种编程也是可以的,但是此时的CLK要接在P1.X口。这个可以通过编程让定时/
计数器定时多少US或者是MS(根据用户要求的ADC0809转换速率来确定),定时计数到0后给一个脉冲通过P1.x输出,建议用电路实现吧,虽然编程也不是很难,可是编程写得太多,总不是件好事