|
|
本帖最后由 迷你强 于 2015-5-23 22:27 编辑
用arduion做一个充电器,想做恒流充电,但程序运行的结果一直不对。
DC是BUCK电路中的占空比, A0口是主路一个小电阻上的电压,想通过采集A0的电压来改变占空比实现恒流充电。
但实际用示波器测的结果是电压一直增加,到最大值后又从0开始增加。
- int PWM1=4;
- int DC=128;
- int val=0;
- void setup() {
- TCCR0B = (TCCR0B & 0xF8) | 1;
- pinMode(PWM1,OUTPUT);
- }
- void loop() {
- analogWrite(PWM1,DC);
- do
- {
- val=analogRead(A0);
- if ((val<922)&&(DC<256))
- DC++;
- if((val>922)&&(DC>0))
- DC--;
- }while(val != 922);
- }
复制代码
跪求问题在哪啊{:soso_e109:} 毕业设计马上要结束了。
|
|