/* Programm für Schweißlicht (Doktorhut)
* für ATtiny13 @ 1,2 MHz
* Hardware: Weiße LED an PB4 gegen Masse
* „h#s“ Henrik Haftmann, TU Chemnitz, 12. März 2014
* tabsize = 8, encoding = utf-8 (ohne Windows-Header BOM)
*/
#include <avr/io.h>
#include <stdlib.h>
#include <util/delay_basic.h>
static void schweissen(uint16_t laenge, uint16_t warte) {
uint16_t i;
for (i=0; i<laenge; i++) {
PORTB|=0x10;
_delay_loop_2((rand()>>2)+1); // 1..8K
PORTB&=~0x10;
_delay_loop_2((rand()>>3)+1); // 1..4K
}
for (i=0; i<warte; i++) {
_delay_loop_2(32);
}
}
int main() {
DDRB|=0x10;
for(;;) {
uint16_t laenge=(rand()>>8)+200; // 200..327
uint16_t warte=rand()+16384; // 16K..48K
schweissen(laenge,warte);
}
return 0;
}
Detected encoding: UTF-8 | 0
|