C Control PRO UNIT MEGA 32 198206 Benutzerhandbuch
Produktcode
198206
108
Compiler
© 2005 Conrad Electronic
char str1[
12
],str2[
12
];
void main(void)
{
str1=
{
str1=
"Taster 1"
;
str2=
"Taster 2"
;
Port_DataDir(PortD,
0
);
// Port D auf Eingang
Port_Write(PortD,
0xff
);
// Pullup für alle Eingänge setzen
Thread_Start(
1
,thread1);
// Thread 1 starten
while(true)
// Endlosschleife
{
if(!Port_ReadBit(
if(!Port_ReadBit(
26
)) Msg_WriteText(str1);
// SW1 wurde gedrückt
}
}
}
5.3.15.10Thread Beispiel 2
// Demoprogramm für Multithreading mit Thread_Delay
void thread1(void)
{
while(true)
{
while(true)
// Endlosschleife
{
Msg_WriteText(str2); Thread_Delay(
Msg_WriteText(str2); Thread_Delay(
200
);
// Text wird alle 2 Sekunden
ausgegeben
}
}
}
char str1[
12
],str2[
12
];
void main(void)
{
str1=
{
str1=
"Thread1"
;
str2=
"Thread2"
;
Thread_Start(
1
,thread1);
// Thread 1 wird gestartet
while(true)
// Endlosschleife
{
Thread_Delay(
Thread_Delay(
100
); Msg_WriteText(str1);
// Text wird jede Sekunde
ausgegeben
}
}
}
5.3.16 Timer
Es stehen im C-Control Pro Mega 32 zwei unabhängige Timer-Counter zur Verfügung. Timer_0
mit 8 Bit und Timer_1 mit 16 Bit. Timer_2 wird von der Firmware als interne Zeitbasis verwendet,
und ist fest auf einen 10ms Interrupt eingestellt. Mann kann die internen Timer für vielfältige
Aufgaben einsetzen:
mit 8 Bit und Timer_1 mit 16 Bit. Timer_2 wird von der Firmware als interne Zeitbasis verwendet,
und ist fest auf einen 10ms Interrupt eingestellt. Mann kann die internen Timer für vielfältige
Aufgaben einsetzen:
·
·
·
·