þÔÏ-ÔÏ Ñ ÎÅ ÐÏÊÍÕ, ÔÏÌÉ ÌÙÖÉ ÎÅ ÅÄÕÔ, ÔÏÌÉ ÒÕËÉ ÉÚ Ö ÒÁÓÔÕÔ. ËÒÉÓÔÁÌÌ - ÍÅÇÁ8, ÐÏ ÉÄÅÅ ÄÏÌÖÎÁ ÍÉÇÁÔØ Ó×ÅÔÏÄÉÏÄÉËÏÍ ÎÁ portb2. ËÏÍÐÉÌÑÔÏÒ - ÇÃÃ, ÛØÀ É ×ÅÒÉÆÉÃÉÒÕÀ ÂÁÊÔÂÌÁÓÔÅÒ/avreal. ÄÒÕÇÏÊ ÉÓÈÏÄÎÉË ÂÅÚ ÐÒÅÒÙ×ÁÎÉÊ É Ó ÚÁÄÅÒÖËÁÍÉ ÞÅÒÅÚ delay() × ÔÏÊ ÖÅ ÓÈÅÍÅ Ó×ÅÔÏÄÉÏÄÉËÏÍ ÍÉÇÁÌ, ÔÁË ÞÔÏ ÐÒÏÂÌÅÍÁ Ñ×ÎÏ × ÉÓÈÏÄÎÉËÅ.
þÔÏ Ñ ÄÅÌÁÀ ÎÅ ÔÁË? ëÁË ÎÁÄÏ? éÄÅÑ ÂÙÌÁ ÐÏÓÔÁ×ÉÔØ ÐÒÅÄÄÅÌÉÔÅÌØ 256, ÐÒÅÄÅÌ 625, ÞÁÓÔÏÔÕ ×ÓÔÒÏÅÎÎÏÇÏ RC ÇÅÎÅÒÁÔÏÒÁ 8 íçÃ, ÐÏÌÕÞÉÔØ 50çà ÐÒÅÒÙ×ÁÎÉÑ.
=== Cut ÎÅÒÁÂÏÞÅÅ === #include <inttypes.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/delay.h>
#include <avr/signal.h>
void init() { TIMSK = (1<<TOIE1); TCCR1B = 0x0D; TCCR1A = 0xA0; OCR1A = 0x271; DDRB = 2; PORTB = 2; OCR1A = 625; }
SIGNAL(SIG_OVERFLOW1) { static uint8_t cnt = 0; cnt++; if (cnt > 50) cnt = 0; if (cnt == 25) PORTB = 0; if (cnt == 00) PORTB = 2; }
int main() { init (); sei (); for(;;) { } return 0; } === Cut ===
=== Cut ÒÁÂÏÞÅÅ=== #include <inttypes.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/delay.h>
void ioinit() { cli(); DDRB |= 0x02; // pb1 out PORTB &= 0xFD; // pbl ground }
void delay(uint16_t t) // in ms { uint16_t a; for(a=0;a<250*8;a++) { _delay_loop_2(t); } }
int main(void) { ioinit(); for(;;) { PORTB |= 0x02; //pb1 pin delay(100); PORTB &= 0xFD; delay(100); }; return 0; } === Cut ===
. ó Õ×ÁÖÅÎÉÅÍ, HÉËÉÔÁ. icq:240059686, lj-user:nicka_startcev ... ÉÚÍÅÎÁ - ÜÔÏ... ÎÕ... ÐÁpÏÌØ pÕÔÏ×ÙÊ ÎÁ ÉÎÓÔÉÔÕÔÓËÏÊ ÂÏpÄÅ ×Ù×ÅÓÉÔØ...