´╗┐ Afug-Info.de - Amateurfunk und mehr... ´╗┐ Afug-Info.de - Amateurfunk und mehr... ´╗┐ Afug-Info.de - Amateurfunk und mehr...
Afug-Info.de
Ohne  Java
Ohne  Flash
Ohne  Skripte
Ohne  Werbung
Ohne  Social Plugins

Willkommen bei Afug-Info.de
´╗┐ Afug-Info.de - Amateurfunk und mehr...

TTL-Rechteck-Generator mit einem PIC12F675

Beispielprojekt inklusive Source Code und brennbarer Hex-Datei

Hier wird eine einfache Methode vorgestellt, um einen PIC-Microcontroller in einen TTL-Taktgeber zu verwandeln - vollst├Ąndiger Source-Code (in Basic und C) und Hex-Datei inbegriffen.

Um ein TTL-Rechtecksignal zu generieren, braucht es nicht unbedingt einen Funktionsgenerator - daf├╝r gen├╝gt oftmals auch ein PIC Mikrocontroller. Ein solcher PIC-Generator ist portabel einsatzf├Ąhig, kosteng├╝nstig und so gut wie ohne Aufwand zu realisieren. Verwendbar ist der PIC-TTL-Rechteckgenerator zum Beispiel zur Messung der Kabel-Impedanz und der Kabell├Ąnge sowie zur Fehlersuche in Kabeln.

Der interne Oszillator mit Taktausgang wird dabei so konfiguriert, dass ein Signal von ca. 1 MHz auf einem Pin ausgegeben wird. Dies kann ├╝ber die Konfiguration des Mikrocontrollers in der Programmiersoftware eingestellt oder oftmals auch ├╝ber das Brennprogramm eingegeben werden (Konfiguration siehe Basic-Code unten). Da der Microcontroller ohne Programm, das abl├Ąuft, jedoch nicht arbeitet, wird auf einem weiteren Pin eine Leuchtdiode ├╝ber einen Vorwiderstand angeschlossen zur visuellen Kontrolle der Mikrocontroller-Ausgabefunktion (simple Blinkschaltung). Dieser Aufbau wurde mit einem PIC12F675 (Einzelpreis: ca. 1,20 ÔéČ) getestet, geeignet daf├╝r sind selbstverst├Ąndlich auch zahlreiche andere Typen.

PIC12F675 auf Steckboard
Bild 1: Ein PIC12F675 als TTL-Rechteckgenerator auf einem Testboard. Die wei├če Leuchtdiode mit Vorwiderstand (Wert je nach verwendeter LED) dient der visuellen Kontrolle der PIC-Funktion (Blinkschaltung). Ein 100nF Kondensator gl├Ąttet (unbedingt erforderlich). ├ťber einen Schutzwiderstand (ideal 50 Ohm) wird das Rechtecksignal vom Ausgangspin 3 mit einer Krokodilklemme abgegriffen und in das Oszilloskop bzw. in das zu messende Kabel eingespeist.

Der Anschlussplan f├╝r den PIC12F675 ist Bild 2 zu entnehmen.

PIC12F675 Beschaltung
Bild 2: Anschlussbelegung f├╝r den PIC 12F675 als TTL-Rechteckgenerator.

Dieser Aufbau wurde mit dem geringstm├Âglichen Aufwand und auf m├Âglichst einfache Weise zu realisieren versucht.

Die Daten zum Brennen im hex-Format und in den Programmiersprachen C und Basic:

hex-Code f├╝r PIC 12F675 mit TTL-Rechtecksignalausgang und LED-Blinkschaltung: (Chip-Einstellung ├╝ber Programmer, Daten sind Basic- oder Assembler-Code zu entnehmen)

Download    brennbare hex-Datei PIC12F675-R-gen.rar (komprimiert)


0000: 2805 3FFF 3FFF 3FFF 0009 2037 1683 1085
0008: 3041 0090 1283 0185 1683 019F 3007 1283
0010: 0099 1683 0185 1283 1485 3032 00A2 01A3
0018: 2021 1085 3002 00A4 202F 2813 281F 0063
0020: 281F 0AA3 308E 00A1 3001 00A0 0BA0 2826
0028: 0BA1 2824 0BA2 2822 0BA3 2822 0008 30E8
0030: 00A2 3003 00A3 2021 0BA4 282F 0008 101F
0038: 139F 1683 019F 3007 1283 0099 0185 0008

Basic-Code f├╝r PIC12F675

;Chip Settings
#chip 12F675,4
#config CPD=OFF, CP=OFF, BODEN=OFF, MCLRE=OFF, PWRTE=OFF, WDT=OFF, OSC=INTRC_OSC_CLKOUT

gpio = 0
Ansel = 0
cmcon = 7
TrisIO = 0

start:
gpio.1 = 1
wait 50 ms
gpio.1 = 0
wait 2 s
goto start
end

C-Code f├╝r PIC12F675

Chip-Konfiguration ist noch vorzunehmen (Daten sind Basic-Code zu entnehmen) !

void main()
{
ANSEL = 0;       // Analog zu Digital 12F675
CMCON = 7;       // Comparator aus
gpio = 0;        // Setzt gesamten Port auf Null
TRISIO = 0;      // Setzt alle GPIO als Ausgang

do
{
gpio = 1;        // GPIO auf 000001 setzen
Delay_ms(50);    // 50 mS EIN

gpio = 0;        // GPIO auf 000000 setzen
Delay_ms(2000);  // 2 Sek. warten
} while(1);      // Endlosschleife von ÔÇ×whileÔÇť zu ÔÇ×doÔÇť
}



Anwendungsm├Âglichkeit:

Verwendbar als Taktgeber zur Messung der Kabel-Impedanz und der Kabell├Ąnge sowie zur Fehlersuche in Kabeln.

Alternativ zum PIC-Taktgeber kann ein TTL-Rechtecksignal auch mit einem Quarz-Oszillator erzeugt werden.


Weiterf├╝hrende Links:



Seitenanfang

´╗┐ Afug-Info.de - Amateurfunk und mehr...