Subversion Repositories svnkaklik

Compare Revisions

No changes between revisions

Ignore whitespace Rev 494 → Rev 495

/programy/C/avr/tests/ATmega128/blik.c
0,0 → 1,48
/*********************************************
* vim: set sw=8 ts=8 si :
* Author: Guido Socher, Copyright: GPL
* This program is to test the led connected to
* PC5.
* See http://linuxfocus.org/English/November2004/
* for details.
* Chip type : ATMEGA644
* Clock frequency : Internal clock 1 Mhz (factory default)
*********************************************/
#include <avr/io.h>
#include <inttypes.h>
#define F_CPU 8000000UL // 8 MHz
#include <util/delay.h>
 
+
+void cekej(int ms)
+{
+
+ // we use a calibrated macro. This is more
+ // accurate and not so much compiler dependent
+ // as self made code.
+ while (ms)
+ {
+ _delay_ms(0.96);
+ ms--;
+ }
+}
+
+int main(void)
+{
+ /* INITIALIZE */
+ /* enable PC5 as output */
+ DDRC|= (1<<LED);
+
+ /* PC5 is 5 (see file include/avr/iom8.h) and 1<<PC5 is 00100000
+ * This can also be written as _BV(PC5)*/
+ while (1) {
+ /* led on, pin=0 */
+ PORTC|= (1<<LED);
+ cekej(100);
+ /* set output to 5V, LED off */
+ PORTC &= ~(1<<LED);
+ cekej(1000);
+ }
+ return(0);
+}