Подсчет времени на ATtiny13A в AVR Studio 4

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Подсчет времени на ATtiny13A в AVR Studio 4

Сообщение frwind » 10 сен 2013, 07:50

Перевожу программку с Arduino на С++ в AVR Studio 4, на влазит по объему, Attiny13A, возникло несколько вопросов.
В С++ знаний особо нету.

1) Как считать время от начала работы программы, на Ардуино было:
Код: Выделить всё
t=micros();

По поиску понял что с таймерами надо, но вот что то дальше этого пока не ушол.
Если можно исходник с пояснениями.

2) С портами, вроде как понятно, но не совсем, вывод PORTB (Выводим в порт B), но в весь, а надо к примеру в B0 выводить, а с B1, считывать.
В начале назначаю B0 на выход,
Код: Выделить всё
DDRB = 0b00000001;

Нашол вот это, работает, но не совсем доходит как, входы.
Код: Выделить всё
if (PINB & _BV(PB1)) x=1;


как работает _BV(PB1) ?

C выходами тоже малость понял но не совсем.
Код: Выделить всё
PORTB |= _BV(PB0); // зажигаем
PORTB &= ~_BV(PB0);// тушим


Есть ли аналоги digitalWrite(0,1), хотя это они грубо говоря и есть.

PS: Вроде как понимаю, а понять не могу, подскажите на пальцах пожалуйста.
frwind
 
Сообщения: 27
Зарегистрирован: 03 янв 2011, 20:51

Вернуться в Микроконтроллеры

Кто сейчас на конференции

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

cron