Моя сцылко лучше

![]() |
roboforum.ruТехнический форум по робототехнике. |
|

теория в первом, вирусы онлайн сканеры не нашли, такая шняшкоПодозрение на вирус!
На сайте обнаружены iframe-вставки, ссылающиеся на сомнительные сайты либо обфусицированный код.

это так хромиум отреагировал. А файрефох открыл нормально.
Внимание! Обнаружена проблема!
arv.radioliga.com cодержит содержимое из www.simple-devices.ru, являющийся распространителем вредоносного ПО. Ваш компьютер может быть заражен вирусом если вы решите посетить этот сайт.
Google обнаружил, что на ваш компьютер могут быть установлены вредоносные программы, если вы продолжите просмотр этого сайта. Если вы посещали его в прошлом или доверяете ему, вполне возможно, что он недавно был взломан хакерами. Рекомендуется прекратить просмотр и посетить сайт завтра либо перейти на другой сайт.
Мы уже сообщили владельцу сайта www.simple-devices.ru о том, что на его сайте найдено вредоносное ПО. Подробнее о проблемах, обнаруженных на www.simple-devices.ru, можно узнать на странице Google Страница диагностики безопасного просмотра.
Если вы понимаете, что этот сайт может причинить вред вашему компьютеру, все равно продолжать.
у меня софт не выругался, значит моей машине с той страницы ничего пакостного не грозит.
самое опасное для моей машины эт флеш, ява + менее пакостно новые дрова от амд и торрент (запретил ему всякие рекламные гадости с офсайта качать и бсод больше не наблюдается)./*****************************************************
This program was produced by the
CodeWizardAVR V1.24.8d Professional
Automatic Program Generator
© Copyright 1998-2006 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
Project :
Version :
Date : 08.11.2012
Author : F4CG
Company : F4CG
Comments:
Chip type : ATmega16
Program type : Application
Clock frequency : 8,000000 MHz
Memory model : Small
External SRAM size : 0
Data Stack size : 256
*****************************************************/
#include <mega16.h>
#include <delay.h>
#define digit_display_time 1
unsigned char milliseconds, seconds, ten_seconds, minutes, ten_minutes, hours, ten_hours;
bit button_pressed1, button_pressed2;
// Timer 1 output compare A interrupt service routine
interrupt [TIM1_COMPA] void timer1_compa_isr(void)
{ milliseconds++;
TCNT1H=0x00;
TCNT1L=0x00;
if (milliseconds >= 100 )
{
milliseconds = 0;
seconds++;
};
if (seconds >= 10)
{
seconds = 0;
ten_seconds++;
};
if (ten_seconds >= 6)
{
ten_seconds = 0;
minutes++;
};
if (minutes >= 10)
{
minutes = 0;
ten_minutes++;
};
if (ten_minutes >= 6)
{
ten_minutes = 0;
hours++;
};
if (hours >= 10)
{
hours = 0;
ten_hours++;
};
if (ten_hours >= 2 && hours == 4)
{
ten_hours = 0;
hours=0;
};
}
void main(void)
{
unsigned char digits[10] = {18, 159, 56, 28, 149, 84, 80, 31, 16, 20};
{
// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0xFF;
DDRB=0xFF;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x03;
DDRD=0x7C;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 125.000 kHz
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: On
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x03;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=125;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x10;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
}
#asm("sei")
while (1)
{
PORTD |=1<<5;
PORTB = digits[ten_minutes];
delay_ms(digit_display_time);
PORTD &=~(1<<5);
PORTD |=1<<4;
PORTB = digits[minutes];
if (milliseconds >= 50) PORTB &=~(1<<4); else PORTB|=1<<4;
delay_ms(digit_display_time);
PORTD &=~(1<<4);
PORTD |=1<<3;
//PORTB = digits[ten_minutes];
PORTB = digits[ten_seconds];
delay_ms(digit_display_time);
PORTD &=~(1<<3);
PORTD |=1<<6;
//PORTB = digits[minutes];
PORTB = digits[seconds];
delay_ms(digit_display_time);
PORTD &=~(1<<6);
// seconds = 0;
// ten_seconds++;
if ((PIND & 1<<0) == 0 && button_pressed1 == 0)
{
delay_ms(1);
hours++;
button_pressed1 = 1;
};
if ((PIND & 1<<0) == 1) button_pressed1=0;
if ((PIND & 1<<1) == 0 && button_pressed2 == 0)
{
delay_ms(1);
minutes++;
button_pressed2 = 1;
};
if (PIND & 1<<1) button_pressed2=0;
};
}
Изучаю не для учебы и не для работы, просто для себя.
Равен произведению прескалера и периода таймера. С этой частотой будет вызываться обработчик прерывания таймера, в котором ты будешь увеличивать на 1 счетчик секунд (для варианта с 1 Гц) или счетчик своих внутренних тиков для варианта с 1024 Гц, тогда там же переключать активное знакоместо на индикаторе и выводить туда цифру.

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0