Hallo,
Ik heb een example program gekregen van Keil in C. Wat ik
kan gebruiken om mijn ARM microcontroller te testen. Ik weet alleen dat het programma een looplicht voorstelt. In grote lijnen begrijp ik ook wat het programma doet. Maar tog zou ik dieper willen weten stap voor stap wat er daar nu precies staat. Bvb: bij forever loop veronderstel ik dat dit betekent dat het looplicht zich steeds moet herhalen. Maar wat betekenen al die andere commandos? Heeft iemand hier voldoende kennis over C om uit te leggen wat dit programma eigenlijk doet stap voor stap?:
/******************************************************************************/
/* This file is part of the uVision/ARM development tools */
/* Copyright KEIL ELEKTRONIK GmbH 2002-2004 */
/******************************************************************************/
/* */
/* BLINKY.C: LED Flasher */
/* */
/******************************************************************************/
#include <LPC210x.H> /* LPC21xx definitions */
/* Delay function */
void delay (void)
{
unsigned int cnt;
for(cnt = 0; cnt < 200000; cnt++); /* Delay */
}
int main (void)
{
unsigned int n;
IODIR = 0x0000FFFF; /* P0.0 .. P0.15 defined as Outputs */
while(1) /* Loop forever */
{
for(n = 0x00000001; n <= 0x00008000; n <<= 1)
{
IOSET = n; /* Turn on LED */
delay(); /* Delay */
IOCLR = 0x0000FFFF; /* Turn off LEDs */
}
}
}
Alvast bedankt!
vriendelijke groeten,Mathias
http://www.circuitsonline.net/forum/view/61651
Daar is genoeg info uit te halen.
Dit forum is niet bedoeld voor basis c-vragen.
timmie
niet met me uitspraken(of opmerkingen) eens mail me.K8048 guide
en zet het volgende keer aub tussen code tags dan ziet het er dus zo uit:
/******************************************************************************/
/* This file is part of the uVision/ARM development tools */
/* Copyright KEIL ELEKTRONIK GmbH 2002-2004 */
/******************************************************************************/
/* */
/* BLINKY.C: LED Flasher */
/* */
/******************************************************************************/
#include <LPC210x.H> /* LPC21xx efinitions */ udefineren welke controlleru
/* Delay function */
void delay (void)
{
unsigned int cnt; declaratie
for(cnt = 0; cnt < 200000; cnt++); /* Delay */ das de vertraging wat ook weer een teller is
}
int main (void)
{
unsigned int n;
IODIR = 0x0000FFFF; /* P0.0 .. P0.15 defined as Outputs */ dat zet de poorten als uitgang
while(1) /* Loop forever */ oneindige lus
{
for(n = 0x00000001; n <= 0x00008000; n <<= 1) tellertje
{
IOSET = n; /* Turn on LED */
delay(); /* Delay */
IOCLR = 0x0000FFFF; /* Turn off LEDs */
}
}
}
met wat commentaar van mij
en inderdaad dit is vrij basic
flipflop
"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein