Hiho,
das ist das erste mal, das ich ein microcontroller programmiere, sprich ich bin ein noob in diesem Bereich. Ich weiß nicht, wie ich mit AVR-Studio arbeiten kann und so. Jetzt will ich ein microcontroller für eine Binäruhr programmieren. Habe schon in google gesucht.
Mein gefundener Code:
kann mir jemand erklären 1. ob der code geeignet ist und 2. den code grunzetzlich erklären? da ich da garnichts verstehe (und bin sowieso kein Fan von C&P)
PS: Hoffe habe das richtige Forum gewählt ^^
das ist das erste mal, das ich ein microcontroller programmiere, sprich ich bin ein noob in diesem Bereich. Ich weiß nicht, wie ich mit AVR-Studio arbeiten kann und so. Jetzt will ich ein microcontroller für eine Binäruhr programmieren. Habe schon in google gesucht.
Mein gefundener Code:
Code:
#include <avr/io.h>
#include <avr/wdt.h>
int main(void)
{
wdt_disable();
// Ausgänge definieren
DDRA = 0xff; //Alle Pins auf A als Ausgänge definieren
DDRB = 0xff; //Alle Pins auf B als Ausgänge definieren
DDRC = 0xff; //Alle Pins auf C als Ausgänge definieren
// Ausgänge auf LOW setzen
PORTA = 0x00; //Alle Pins auf A auf LOW setzen
PORTB = 0x00; //Alle Pins auf B auf LOW setzen
PORTC = 0x00; //Alle Pins auf C auf LOW setzen
//Eingänge definieren für die Einstellung der Uhrzeit
DDRD = 0x00; //Alle Pins auf D als Eingänge definieren
PORTD = 0x00; //PullUps deaktiviern
//Interne UHR
//Variablen Definieren
int s1=0;
int s2=0;
int m1=0;
int m2=0;
int h1=0;
int h2=0;
int main (void)
{
for (;;)
{
_delay_ms(1000);
s1 = s1 + 1;
if (s1 > 9)
{
s2 = s2 + 1;
s1 = 0;
}
if (s2 = 6)
{
m1 = m1 + 1;
s2 = 0;
}
if (m1 > 9)
{
m2 = m2 + 1;
m1 = 0;
}
if (m2 = 6)
{
h1 = h1 + 1;
m2 = 0;
}
if (h1 > 9) && (h2 < 2)
{
h2 = h2 + 1
h1 = 0
}
if (h2 = 2) && (h1 < 5)
{
h2 = 0;
h1 = 0;
}
// Hier kommt noch die Ausgabe
}
}
kann mir jemand erklären 1. ob der code geeignet ist und 2. den code grunzetzlich erklären? da ich da garnichts verstehe (und bin sowieso kein Fan von C&P)
PS: Hoffe habe das richtige Forum gewählt ^^