foxsto
New member
Вообщем вопрос прост как вот этот приведенный код запустить на 8266
мне нужно переписать таймер.
Код работает на меги 328
смысл в том что цикл ISR(TIMER1_COMPA_vect) имеет приоритет перед void loop() и паузит его чтобы совершить действие
в ISR(TIMER1_COMPA_vect) у меня несколько счетчиков будет и еще что то подобное ШИМ регулятора (ножки будут вкл и выкл с разной скважностью)
помогите поменять код под esp8266
мне нужно переписать таймер.
Код работает на меги 328
смысл в том что цикл ISR(TIMER1_COMPA_vect) имеет приоритет перед void loop() и паузит его чтобы совершить действие
в ISR(TIMER1_COMPA_vect) у меня несколько счетчиков будет и еще что то подобное ШИМ регулятора (ножки будут вкл и выкл с разной скважностью)
помогите поменять код под esp8266
Код:
enum Prescalers {
PRESCALER_1 = 1, PRESCALER_8 = 2, PRESCALER_64 = 3, PRESCALER_256 = 4, PRESCALER_1024 = 5
};
int var =0;
int var2 =0;
int vol = 0;
int vow = 0;
void setup(){
uint8_t prescaler = PRESCALER_64;
uint16_t topValue = 125;
pinMode(9, OUTPUT);
TCCR1A = 0x40; // Инвертирование пина 9 по сравнению
TCCR1B = 0x08 | prescaler; // Установить СТС режим и делитель частоты
OCR1A = topValue; // установить TOP равным topValue
TIMSK1=0b00000010; // разрешение прерываний по совпадению OCR1A
ISR(TIMER1_COMPA_vect)
{
if (var2 == 1985) {
vow++;
var2 = 0;
}
if (var == 500) {
vol++;
var = 0;
}
var++;
var2++;
}
void loop() {
//Тут у меня дисплей который все показывает
}