Hallo Zusammen,
unter dem Artikel Brushless-Controller für Modellbaumotoren gibt es
einen Schaltplan zum Beispiel einer Halbbrück inklusive Strommessung.
Dazu wird beschrieben: "Der Widerstand R20 ist dazu da, dass auf dem
Treiber das PWM-Signal liegt, sobald die Leitung „IN_A“ in der Luft
hängt (uC Pin als Eingang definiert). So wird nur ein einziger
PWM-Ausgang vom Mikrocontroller benötigt für alle drei Phasen, erfordert
also kein Soft-PWM oder sonst irgend ein Murks."
Link:
http://www.mikrocontroller.net/articles/Brushless-Controller_f%C3%BCr_Modellbaumotoren
Das wollte ich jetzt testen. Der Controller ist ein Atmega 16. An PD7
liegt das PWM Signal. PD6 stellt IN_A da. Der Widerstand R20 wurde wie
in dem Beispiel gewählt. Zum Test habe ich anstatt des
Halbbrückentreibers eine LED genommen. Doch leider ist die LED nicht
aus.
1 | #define F_CPU 8000000
|
2 | #include <avr/io.h>
|
3 | #include <stdlib.h>
|
4 | #include <util/delay.h>
|
5 |
|
6 | int main (void) {
|
7 |
|
8 | DDRD |= (1<<PD7);
|
9 | TCCR2 |= (1<<COM21);
|
10 | TCCR2 |= (1<<WGM21) | (1<<WGM20);
|
11 | TCCR2 |= (1<<CS22) | (1<<CS21) | (1<<CS20);
|
12 | OCR2 = 128;
|
13 |
|
14 | DDRD &= ~(1<<PD6);
|
15 |
|
16 | //PORTD |= (1 << PD6);
|
17 |
|
18 | while (1)
|
19 | {
|
20 | //blank
|
21 | }
|
22 | return 0;
|
23 | }
|
Vielen Dank. Gruß Steffen