H bridge ATtiny85
Napsal: 13 úno 2018, 18:10
Zdravim, potreboval by som pomoc so spravnou funkcnostou zapojenia. Pri zapojeni v arduine je regulacia aj zmena polarity funkcna a plynula ale ak zapojenie bezi na attiny85, tak regulacia zo zaciatku nieje plynula a su enormne prudove skoky. poprosil by som vas o radu je tu aj program aj schema aj video spravania oboch pripadov.program je z arduina , na attiny je totozny akurat vstupy/vystupy maju zodpovedajuce piny.Robi to pri zatazi indukcnej(motor), pri odporovej to nerobi.
https://youtu.be/rECJns_t2ns video
https://youtu.be/cYWBeiBUliY
int butt = 4; int led = 7; int pwmA = 11; int pwmB = 10;
int stav = 0; int predstav = 0; int citac = 0;
void setup() {
pinMode(led,OUTPUT);
pinMode(butt,INPUT);
pinMode(pwmA,OUTPUT);
pinMode(pwmB,OUTPUT);
}
void loop() {
int pot = analogRead(A0);
int reg = map(pot,0,1023,0,255);
stav = digitalRead(butt);
if(stav != predstav)
{
if(stav == HIGH){
citac ++;delay(500);}}
delay(100);
predstav = stav;
if(citac % 2 ==0)
{analogWrite(pwmA,reg);
digitalWrite(pwmB,LOW);
digitalWrite(led,HIGH);
}
else{analogWrite(pwmB,reg);
digitalWrite(pwmA,LOW);
digitalWrite(led,LOW);
}
}
https://youtu.be/rECJns_t2ns video
https://youtu.be/cYWBeiBUliY
int butt = 4; int led = 7; int pwmA = 11; int pwmB = 10;
int stav = 0; int predstav = 0; int citac = 0;
void setup() {
pinMode(led,OUTPUT);
pinMode(butt,INPUT);
pinMode(pwmA,OUTPUT);
pinMode(pwmB,OUTPUT);
}
void loop() {
int pot = analogRead(A0);
int reg = map(pot,0,1023,0,255);
stav = digitalRead(butt);
if(stav != predstav)
{
if(stav == HIGH){
citac ++;delay(500);}}
delay(100);
predstav = stav;
if(citac % 2 ==0)
{analogWrite(pwmA,reg);
digitalWrite(pwmB,LOW);
digitalWrite(led,HIGH);
}
else{analogWrite(pwmB,reg);
digitalWrite(pwmA,LOW);
digitalWrite(led,LOW);
}
}