Zitat von
PIC_Tick
Moin
ich gehe mal davon aus das du PIC Controller kennst.
#FUSES INTRC_IO //Internal RC Osc, no CLKOUT
#use delay(clock=20000000)
Bei use delay deine Clock frequenz eingeben. Dann kannst du über setup_oscillator( OSC_2MHZ ); die Frequenz des Oszilator bestimmen. Welche Frequenze der Interne kann erfährst du im Datenblatt.
Hi,
danke für deine Antwort, leider hat sie mir nur bedinngt weitergeholfen da der Syntax wohl für einen anderen Compiler als cc5x ist und ich bei cc5x nur eine Fehlermeldung bekomme:
(The source line starting with '#' contains invalid syntax or context
dependent syntax)
Aber ggf. habe ich auch was anderes falsch gemacht. Hier mal mein Quellcode:
Code:
//Display Ansteuerung für 19"-Rahmen\\
#include "prozess.h" // Der verwendete Prozessor
#include "C:\cc5x\INT16CXX.H" //Zuständig für das Speichern der Register bei einem Interrupt
#FUSES INTRC_IO //Internal RC Osc, no CLKOUT
#use delay(clock=40000000)
void pause(uns16 ms) // Unterprogramm zum Abwarten einer
{ // angegebenen Anzahl von Millisekunden
while(ms) // Schleife verlassen, wenn ms=0 ist
{
OPTION = 2; // Vorteiler auf 8 einstellen
TMR0 = 131; // 125 * 8 = 1000 (= 1 ms)
while (TMR0); // Abwarten einer Millisekunde
ms--; // "ms" mit jeder Millisekunde erniedrigen
}
}
void aktivieren()
{
GPIO.4=1;
GPIO.1=1;
pause(1000);
pause(1000);
pause(1000);
GPIO.4=0;
}
void deaktivieren()
{
GPIO.1=0;
pause(1000);
pause(1000);
pause(1000);
}
void main(void) // Hier beginnt das Hauptprogramm
{
CMCON=0x07; //alles digitale IO-Pins
ANSEL=0x00; //alles digitale IO-Pins
WPU=0; //Pullups off
setup_oscillator( OSC_2MHZ );
TRISIO.0=1; // Eingang BUS
TRISIO.1=0; // Ausgang zum Schalten der 4066
TRISIO.2=1; // Eingang Taster mit Pulldown
TRISIO.3=0; // Ausgang Signal für BUS
TRISIO.4=0; // Unbenutzt
TRISIO.5=0; // Unbenutzt
Start:
if (GPIO.2 == 1) {
aktivieren();
}
if (GPIO.0 == 1) {
deaktivieren();
}
goto Start;
}
Lesezeichen