Без описания |
Поиск в теме | Версия для печати |
ОЛЕГ |
Отправлено: 18 Февраля, 2009 - 01:10:03
|
Супермодератор
Сообщений всего: 1732
Дата рег-ции: Нояб. 2008
|
Значится так.
Собрал я на проводочках схему из статьи ПРОСТОЙ РОБОТ НА МИКРОКОНТРОЛЛЕРЕ (Часть 1) (чтоб не лазать: http://myrobot.ru/stepbystep/r_firstbot1.php), только вместо моторов светики разноцветные (красный типа вперед, желтый назад) привесил в целях экономии шума. Питание от КРЕНа с кондером, 5В.
Пользуюсь АВР Студио и программатором АВР910. Все нормально делается, компилится, прошивается (спасибо ), НО:
после записи программы вращения моторами туда-сюда из вышеуказанной статьи, светики один раз перемигивают, а потом продолжают гореть все четыре в пол-накала.
Как попробовать устранить? Там программа точно рабочая? Или я балбес?
Кстати, когда мы записываем программу- старая стирается? И еще я ГЕКС файл нечаянно первый раз не в Флэш, а в Еепром память записал- это не страшно? Как ее стереть? Впрочем, там он тоже не работал.
Эээ.. попробовал записать программу поворота на необходимый угол- постоянно горят только красные светики, желтые погасли.
Спасибо. |
|
|
ОЛЕГ |
Отправлено: 19 Февраля, 2009 - 19:43:06
|
Супермодератор
Сообщений всего: 1732
Дата рег-ции: Нояб. 2008
|
Белый Волк, спасибо. Галочка там не стоит. Значит, все в порядке.
бот_м_16, спокойно, без истерик.
Я все сделал как в статье для того, чтобы не объяснять как там и чего у меня подключено. Устройство служит чисто образовательным целям, а на оплату света у меня скидка 50%.
Программа вот эта. Вот как тут, так в блокнот и вставляю:
/*******************************************************
ПРИМЕР 1 :: ВРАЩЕНИЕ МОТОРАМИ ВПЕРЕД-НАЗАД :: MYROBOT.RU
********************************************************/
#include <avr/io.h>
/***************** Функция задержки ****************/
void delay(unsigned short ms) // Минимальная задержка с кварцем 8 МГц - 1 мс
{
unsigned short i, j, k; // объявляем переменные
for (i=0; i<ms; i++) // главный цикл формирования задержки
for (j=0; j<185; j++) // вложенный цикл формирования задержки
k++; // произвольное действие
}
/****************************************************/
int main(void) // начало основной программы
{
DDRC = 0xff; // все выводы порта C сконфигурировать как выходы
while (1) { // Бесконечный цикл
// ---------- вращаем моторы вперед 1 сек ----------
PORTC |= _BV(PC1); // установить "1" на линии 1 порта C
PORTC &= ~_BV(PC2); // установить "0" на линии 2 порта C
PORTC |= _BV(PC3); // установить "1" на линии 3 порта C
PORTC &= ~_BV(PC4); // установить "0" на линии 4 порта C
delay(1000); // ждем 1 сек.
// -------------------------------- ------------------
// ---------- вращаем моторы назад 1 сек ----------
PORTC &= ~_BV(PC1); // установить "0" на линии 1 порта C
PORTC |= _BV(PC2); // установить "1" на линии 2 порта C
PORTC &= ~_BV(PC3); // установить "0" на линии 3 порта C
PORTC |= _BV(PC4); // установить "1" на линии 4 порта C
delay(1000); // ждем 1 сек.
// -------------------------------- ------------------
} // закрывающая скобка бесконечного цикла
} // закрывающая скобка основной программы |
|
|
|
Поиск в теме | Версия для печати |
Страниц (2): [1] 2 » |
« Программирование микроконтроллеров » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
|
|
|
|