Hallo Im Datenblatt des Atmega32 steht, dass er vier PWM Ausgänge besitzt. Wie Kannich diese in Bascom ansprechen. 2 klappen ja noch (hab ich von roboternetz.de/wissen) (Keine werbung) Aber wie kann ich alle vier ansteuern? Infos, dass keine unnötigen diskussionen aufkommen: Atmega32 Brauche nur die Configuration und ein Programmbeispiel, um alle vier anzusprechen Vielen Dank Christian
@Teufel: Du schwätzt dummes Zeugs, BASCOM-Fragen werden hier sehr wohl beantwortet. Bist wohl auf der Jagd nach "Kunden" für Dein Kindergarten-Forum? Oder wie soll man Deine aggressive Bascom-Forum-Werbung verstehen? @Christian: Schau Dir mal das AVR-Buch von Roland Walter an, das müsste auch online als Leseprobe auf seiner HP stwhen. Dort wirst Du auf fast jeder zweiten Seite darauf hingewiesen, dass das Benutzen von BASCOM den Blick ins Datenblatt nicht erspart. Du erfährst auch, dass man nicht alles mit den CONFIG-Befehlen von BASCOM machen muss, sondern dass man die I/O-Register (der Timer und anderen integrierten Hardware) auch von Hand bedienen kann, so wie es auch der C- oder ASM-Programmierer macht. Zu den 4 PWMs... Schau zuerst auf das Anschluss-Schema auf Seite 2 des Mega32-Datenblatts. Dort stehen Namen an den Pins. Suche nach den PWM-Pins, sie heißen OCxx, OC für Output-Compare, x(0,1,2) für die Timernummer und x (A,B) für die Unternummer innerhalb des Timers. Nun weißt Du erstmal, welche Timer mit PWM ausgestattet sind. Jetzt kannst Du im Kapitel des jeweiligen Timers nach der Registerbeschreibung suchen und erfährst, welche Bits in welchen I/O-Registern gesetzt werden müssen, um die gewünschte Funktion einzuschalten. Damit kannst Du auch die Modi aktiveren, die BASCOMs CONFIG nicht unterstützt. Zuerst solltest Du aber mal die Randbedingungen klären, vielleicht genügt Dir ja eine relativ geringe PWM-Frequenz oder Auflösung, die Du in Software einfacher realisieren kannst. Eine Lichtsteuerung mit 16 PWMs in Software macht ein Mega32 völlig nebenbei, während er noch einen Ziffern-Tastenblock abfragt und ein LCD4004 steuert. Das war allerdings in ASM. ~
1.) in den Registern Tccr1a,Tccr1b,Tccr2 und Tccr0 Eigenschaften der Kanäle festlegen PWM Frequenz, Phase, Bitbreite usw... ->siehe Datenblatt 2.) den Registern Ocr1al,Ocr1bl,Ocr2 und Ocr0 den gewünschten Helligkeitswert zuweisen 3.) Beim Anschluss die festgelegten Pins beachten Ocr1al(PWM1) - PD5 Ocr1bl(PWM2) - PD4 Ocr2 (PWM3) - PD7 Ocr0 (PWM4) - PB3 ------------------------------------------------------------------------ - In Bascom sollte das dann etwa so aussehen: Tccr1a = &B10100001 Tccr1b = &B00000010 Tccr2 = &B01100010 Tccr0 = &B011 Assr = &B00000000 Ocr1al = 127 Ocr1bl = 255 Ocr2 = 15 Ocr0 = 0 Gruß Jan
Tccr0 ist natürlich ebenfalls 8 Bit breit, also Tccr0 = &B01100010 oder wies auch immer eingestellt werden soll
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.