标题: STC15单片机多个ADC串口控制PCA的脉宽随ADC变化 [打印本页]

作者: HEIZI555    时间: 2018-4-5 13:31
标题: STC15单片机多个ADC串口控制PCA的脉宽随ADC变化
各位大神好,请问下,如何能让多个ADC引脚控制同一个PCA脉宽(如:PCA模块0工作于8位PWM)随ADC的值输出???
现在怎么搞都只能一个ADC引脚控制PCA脉宽随ADC的值输出:如下
                                                                P1ASF=0x00;
                                                               CL = 0;                         //复位PCA寄存器
                                                                   CH = 0;
                                                                P1ASF =  P1ASF_2;                   //P1.2口为A/D口
                                                                P1M1 &=P1ASF_2;        //外部采集端口设为输入
                                                                P1M0 &=~P1ASF_2;       
                                                                AD2=GetADCResult(2);                                                
                                                                RunPWM(AD2);       
如果像下面这样就不行:(AD2口输入的值跟PCA模块0输出的值不一致,大小变化不定),如何让两个ADC口同时可以控制PCA模块0输出的值跟随ADC输入的值一样???举例,当ADC2口输入2.0V时,PCA模块0输出的值也可以测到2.0V的值,        当ADC3口输入1.0V时,PCA模块0输出的值也可以测到1.0V的值        ???                                                       
                                                              P1ASF=0x00;
                                                               CL = 0;                         //复位PCA寄存器
                                                                   CH = 0;
                                                                P1ASF =  P1ASF_2;                   //P1.2口为A/D口
                                                                P1M1 &=P1ASF_2;        //外部采集端口设为输入
                                                                P1M0 &=~P1ASF_2;       
                                                                AD2=GetADCResult(2);                                                
                                                                RunPWM(AD2);               
                                               
                                                                 P1ASF=0x00;
                                                                 CL = 0;                         //复位PCA寄存器
                                                                     CH = 0;
                                                                P1ASF =  P1ASF_3;                   //P1.2口为A/D口
                                                                P1M1 &=P1ASF_3;        //外部采集端口设为输入
                                                                P1M0 &=~P1ASF_3;       
                                                                AD3=GetADCResult(3);                                                
                                                                RunPWM(AD3);
               






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1