Hallo,
ich habe mir mal das Programm für das Servo angesehen. Deine erste Warteschleife dauert nicht 1ms sondern 3,85ms, die zweite nicht 12ms sondern 61,5ms (bei 4MHz). Ein Servo braucht 1 bis 2ms (1,5ms für Mitte) und eine Periodendauer von ca. 20ms. Ich habe die Schleifen jetzt mal auf 1,2ms bzw. 18,5ms geändert. Brauchst du wirklich "Low Voltage Programm Enable"? Wenn dein Programmiergerät mit 13V arbeitet (am MCLR-Pin) ist das nicht nötig, ich habe es im config ausgeschalten. Das neue config lautet: XT-Oszillator, ohne Watchdog-Timer, Power-Up-Timer on, Low-Voltage-Programm off, MCLR on, Code-Protect off. Um das Ganze zum Laufen zu bringen brauchst du einen Wiederstand von Pin RA4 nach +5V (ca. 1kOhm sollte gehen). Außerdem muss der MCLR-Pin auf +5V gelegt werden. Falls du auf den Quarz verzichten möchtest und den internen 4MHz-Takt nutzen willst musst du bei config 3f32h (statt 3f21h) eintragen.
Gruß,
Michael
Lesezeichen