Bevor Du einen MAX232 oder wie auch immer bemühst, kannst Du prüfen, ob
wirklich die Pegel ungenügend sind.
Dazu brauchst Du ein Terminal-Programm, mit welchem Du die
Steuerleitungen der seriellen Schnittstelle einzeln manuell ein- und
ausschalten kannst.
Ich glaube, mit HTerm http://www.der-hammer.info sollte es gehen.
Nun schliesst Du den Programmer an, möglichst ohne eingesetztem PIC.
Nun schaltest Du mit der Terminalsoftware die Steuerleitungen einzeln
ein und aus und schaust, was Du am entsprechenden Anschluss auf dem
PIC-Sockel misst.
Die Zuordnung der Signale zum SubD9 Stecker und deren Namen findest Du
unter:
http://www.hardwarebook.info/Serial_%28PC_9%29
Wenn Du das mit dem PC und dem Laptop machst und die Resultate sauber
tabellarisch notierst, kannst Du:
- einen Unterschied feststellen. Dann kann es sich lohnen, die
Eingangsschaltung mit den Transistoren am Programmer zu ändern resp.
durch einen MAX232 oder so zu ersetzen.
- keinen Unterschied feststellen. Dann liegt das Problem wohl beim
Timing.
Dazu kann ich Dir leider keine Tipps geben. Vielleicht kann man in
Windows XP irgendetwas einstellen, aber ich bezweifle es. Interessant
wäre es zu wissen, wie die serielle Schnittstelle im Laptop realisiert
ist: als Teil des Chipset oder womöglich intern via USB angeschlossen
oder...
Im zweiten Fall lohnt es sich m.E. nicht, eine serielle Schnittstelle
via PC-Card oder so nachzurüsten (und auf keinen Fall via USB), weil Du
im Voraus nicht wissen kannst, ob es funktioniert.
Schlauer ist da schon der Kauf eines neuen Programmers, wie z.B. den
PICkit 2 von Microchip. Kostet ca. 50 EUR, wird über USB angeschlossen
und mit Strom versorgt und unterstützt so ziemlich alle aktuellen PICs.
Und für zukünftige wird Microchip so gut wie sicher kostenlose Updates
zum Flashen anbieten.
Ich hoffe, ich konnte Dir ein bisschen helfen. Poste doch bitte das
Resultat Deiner Messungen, dann wissen wir mehr.
Severino