05
Янв
2017

Программирование attiny2313 на C

Написал код на C++ для мк attiny2313 хотел бы узнать как этот код должен выглядеть на самом деле, потому что этот я полагаю костыль тот еще

Суть кода: при нажатии на кнопку присоедененную к порту А 0b00000001 подается логическая 1 последовательно на порты В 0b00000001 - 0b00000100 когда счетчик достигает лимита, в данном случает 3, то все обнуляется и начинается заново.

#include <avr/io.h>


int main(void)
{
    DDRB = 0xff;
    int count = 0;

    while (1) 
    {
        if (PINA == 0b001)
        {
            while(1)
            {
                if (PINA == 0b000)
                {
                    break;
                }
            }
            if (count <= 0)
            {
                count++;
                PORTB |= 1<<1;
            }
            else
            {
                count = 0;
                PORTB = 0b00000000;
            }
        }
    }
}

Источник: https://ru.stackoverflow.com/questions/611322/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-attiny2313-%D0%BD%D0%B0-c

Share

Тебе может это понравится...