Бегущий огонек на С

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Вымогатель припоя
Аватара пользователя
Сообщения: 611
Зарегистрирован: Вс июн 08, 2008 14:26:20
Откуда: г. Астрахань

Сообщение Frensis »

Люди!!! Я токо изучаю язык С. Дайте мне, пожалуйста, программку на языке С для бегущего огонька, аналогичный тому, который приводится в обучалке(вариант, когда сдвиг осуществляется по прерыванию от счетчика), чтобы на ее основе я смог разобраться с работой устройства. Т.к. в обучалке все на асме.
Контактная информация:
Реклама
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Frensis писал(а):Люди!!! Я токо изучаю язык С. Дайте мне, пожалуйста, программку на языке С для бегущего огонька,

в обучалке все на асме.
на Си с прерыванием от таймера есть в Микроконтроллеры AVR и PIC начинающим - теория, примеры, программы.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 396
Зарегистрирован: Ср май 28, 2008 19:30:31
Откуда: Донецк

Сообщение Pippeytz »

Вот, может вас ето больше заинтересует? Довольно простая схема, истодники и прошивка там же
http://cxem.net/mc/mc25.php
Полный пипеутз.
Контактная информация:
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Pippeytz писал(а):схема, истодники и прошивка там же
http://cxem.net/mc/mc25.php
ATtiny2313 теперь и в PROTEUS 7.3 поддерживается. Чтоб проверить прошивку достаточно поместить на схему МК? подключить RESET к +5 и указать фал прошивки - и работа ее будет видна.

Я ПОЗЫРИЛ ! РАБОТАЕТ схемка.
Pippeytz писал(а):Вот, может вас ето больше заинтересует ?
человек про Си спрашивал !
Последний раз редактировалось tych Сб авг 23, 2008 11:33:17, всего редактировалось 2 раза.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Вымогатель припоя
Аватара пользователя
Сообщения: 611
Зарегистрирован: Вс июн 08, 2008 14:26:20
Откуда: г. Астрахань

Сообщение Frensis »

Контактная информация:
Реклама
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Frensis писал(а):
tych писал(а):на Си с прерыванием от таймера есть в Микроконтроллеры AVR и PIC начинающим - теория, примеры, программы.
тут что ли ?
Нет ! по ссылке смотри "13 примеров - задачи-упражнения для освоения программирования AVR."
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 611
Зарегистрирован: Вс июн 08, 2008 14:26:20
Откуда: г. Астрахань

Сообщение Frensis »

tych писал(а): Нет ! по ссылке смотри "13 примеров - задачи-упражнения для освоения программирования AVR."
2-ая или 6-ая задача?
Контактная информация:
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Frensis писал(а):2-ая или 6-ая задача?
Пожалуй 1,2,3 и 6 и стр. 3 о прерываниях вообще.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 413
Зарегистрирован: Пт мар 10, 2006 12:23:05
Откуда: Moscow

Сообщение Mozart »

такие вещи надо самому писать
код во вложении.... думаю разберётесь...
Вложения
blink.c
(308 байт) 590 скачиваний
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
Контактная информация:
Вымогатель припоя
Аватара пользователя
Сообщения: 611
Зарегистрирован: Вс июн 08, 2008 14:26:20
Откуда: г. Астрахань

Сообщение Frensis »

Mozart писал(а):такие вещи надо самому писать
код во вложении.... думаю разберётесь...
Спасибо, Mozart! Но, как я понял, мигание там осуществляется через задержку, а мне надо через прерывание от таймера-счётчика, как в обучалке...
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 413
Зарегистрирован: Пт мар 10, 2006 12:23:05
Откуда: Moscow

Сообщение Mozart »

ещё проще.... чуть позже что-нить накрапаю... ну суть в следующем что настраиваешь таймер пишешь функция которая обрабатывает таймер а там пишешь эту херь...
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 413
Зарегистрирован: Пт мар 10, 2006 12:23:05
Откуда: Moscow

Сообщение Mozart »

вот в общем... под WinAVR...
Вложения
blink1.c
(653 байт) 599 скачиваний
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
Контактная информация:
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Mozart писал(а):суть в следующем что настраиваешь таймер пишешь функция которая обрабатывает таймер а там пишешь эту херь...
Вот все разъяснил.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Вымогатель припоя
Аватара пользователя
Сообщения: 611
Зарегистрирован: Вс июн 08, 2008 14:26:20
Откуда: г. Астрахань

Сообщение Frensis »

Mozart писал(а):вот в общем... под WinAVR...
Большое тебе кошачье пасиб :) . Буду разбираться...
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 413
Зарегистрирован: Пт мар 10, 2006 12:23:05
Откуда: Moscow

Сообщение Mozart »

сори.... я там напортачил...

Код: Выделить всё

#include	<avr>
#include	<avr>
#include	<avr>

SIGNAL (SIG_OVERFLOW0)
{
	static unsigned char count = 0;
	static unsigned char flag = 1;
	
	if (flag)
	{
		if (count == 7)
		{
			flag = 0;
		}
		else
		{
			PORTB = 1 << count;
			++count;
		}
	}
	
	if (!flag)
	{
		if (count == 0)
		{
			flag = 1;
		}
		else
		{
			PORTB = 1 << count;
			--count;
		}
	}
}

void InitTimer0(void) 
{	
	TCCR0 |= (5 << CS00) /*e.g. */;	\
	TIMSK |= (1 << TOIE0);	/*interrupt overflow*/	\
}

void InitPorts(void)
{
	DDRB = 0xFF;
}
int main()
{
	InitTimer0();
	InitPorts();
	
	while(1);
	
	return 0;
}
должно быть так...
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
Контактная информация:
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

ИМХО лучше в обработчике прерываний брать числа из таблицы световых эффектов и выводит их в порт к которому светодиоды подключены.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 413
Зарегистрирован: Пт мар 10, 2006 12:23:05
Откуда: Moscow

Сообщение Mozart »

ИМХО лучше в обработчике прерываний брать числа из таблицы световых эффектов и выводит их в порт к которому светодиоды подключены.
это ваше ИМХО на чём основано?...
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
Контактная информация:
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Mozart писал(а):ваше ИМХО на чём основано ? ...
Ну на чем основывается ИМХО исходя из его расшифровки ?
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Вымогатель припоя
Аватара пользователя
Сообщения: 611
Зарегистрирован: Вс июн 08, 2008 14:26:20
Откуда: г. Астрахань

Сообщение Frensis »

tych писал(а):ИМХО лучше в обработчике прерываний брать числа из таблицы световых эффектов и выводит их в порт к которому светодиоды подключены.
Вы имеете ввиду, использовать массив данных?
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 413
Зарегистрирован: Пт мар 10, 2006 12:23:05
Откуда: Moscow

Сообщение Mozart »

это не ответ... почему вы считаете что лучше брать числа из таблицы?
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
Контактная информация:
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»