roboforum.ru

Технический форум по робототехнике.
Текущее время: 21 май 2025, 08:05

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 27 окт 2011, 18:45 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2011, 13:05
Сообщения: 75
Откуда: Белгород
Skype: dan9m@ya.ru
прог. языки: php JS C++ ну и русский конешн
Помогите написать программу для atmega16 которая когда на 7 ножке порта D единица, записывала бы 1 в первую ножку порта B.
Написал на CVavr
Код:
#define F_CPU 16000000UL  // 16 MHz
   #include <io.h>
   #include <delay.h>
   
   int main(void)             
   { 
  DDRD = 0x00; 

          PORTD = 0x00; 

          DDRB = 0xFF; 

          PORTB = 0x00;
while (1) {           
                    PORTB.0=0;
                    if (PIND.7==1) {PORTB.0=1;} else{PORTB.0=0;};
            }
}
Но сведодиод после 1 нажатия всё время мигает.
P.S. На самом деле я хочу что бы свеодиод мигал в так out'у TSOP'а.


_________________
Самоделки Сделай сам
__________________________________________________________


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 27 окт 2011, 19:00 
Не в сети
Аватара пользователя

Зарегистрирован: 15 ноя 2010, 13:56
Сообщения: 996
Откуда: Нижний Новгород
прог. языки: С, С++, РНР
А вы извращенец :)
Зачем усложнять программу?
Код:
#define F_CPU 16000000UL  // 16 MHz
#include <io.h>

int main(void)             

    DDRD = 0x00; PORTD = 0x00; 
    DDRB = 0xFF; PORTB = 0x00;

    while (1) PORTB.0=PIND.7;
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 10:07 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2011, 13:05
Сообщения: 75
Откуда: Белгород
Skype: dan9m@ya.ru
прог. языки: php JS C++ ну и русский конешн
пока ждал ответа сам уже додумался.Но проблема осталась. К portd.7 у меня подключен out tsopa, а к B.0 лампочка. В итоге когда после прошивки, лампочка постоянно горит а когда пульт направляю на tsop то едва заметно начинает "дребезжать" мигать очень часто.
!
1) чем отличаются функции PORT и PIN
2)Как сделать что бы лампочка горела только при нажатии кнопки на пульте.
3) Пример функции на СИ Которая просто распознавала кнопку с пульта. (Без всяких записей в uart usart)
Спасибо.
P.S. Вообще я хочу роботом управлять с пульта.

_________________
Самоделки Сделай сам
__________________________________________________________


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 10:21 
Не в сети
Аватара пользователя

Зарегистрирован: 15 ноя 2010, 13:56
Сообщения: 996
Откуда: Нижний Новгород
прог. языки: С, С++, РНР
Пока ждали ответа? :) 15 минут нынче много? :)

1) PORT - это выход порта, PIN это вход
2) Сделать можно программно. Ловить с д.7 импульсы и зажигать лампочку если они есть и тушить, если их нет.
3) Ну подумайте немного сами-то. Задача несложная.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 10:39 
Не в сети
Аватара пользователя

Зарегистрирован: 05 фев 2008, 15:33
Сообщения: 2687
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович
У TSOP инверсный выход. Когда на входе пусто то лог еденица, когда сигнал то ноль.
Второе в марке последние 2 цыфры это частота, для твоего это 36 кГц.
Третье пульты бывают разных систем например RC5, так вот в RC5 передача нажатия кнопки идет последовательностью 12 бит.

Рекомендую - узнать какой у тебя пульт и найти библиотеку декодирования.

_________________
Никто кроме нас!!!
4Robots.ru - Все для роботов!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 13:23 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
Daniil94 писал(а):
лампочка постоянно горит а когда пульт направляю на tsop то едва заметно начинает "дребезжать" мигать очень часто.

поздравляю, программа работает правильно :)

_________________
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 15:08 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2011, 13:05
Сообщения: 75
Откуда: Белгород
Skype: dan9m@ya.ru
прог. языки: php JS C++ ну и русский конешн
SkyStorm - спасибо, теперь я понял. У TSOP инверсный выход. (fuse тоже инверсный...скоро все будут инверсными)
HarryStar - ну за 15 мин я сам додумался. Задача конечно несложная, а вот посложнее пример подпрограммы которая распознала бы что нажата кнопка 2, если её "код" известен.
Код:
PORTB.0=~PIND.7;
- :Yahoo!:

_________________
Самоделки Сделай сам
__________________________________________________________


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 15:31 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
HarryStar
вот так программы и воруют, а потом выдают за свои :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 15:56 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2011, 13:05
Сообщения: 75
Откуда: Белгород
Skype: dan9m@ya.ru
прог. языки: php JS C++ ну и русский конешн
подскажите как каждые 1,778 мс проверять состояние PIND.7
и если 1,778X2 мс PIND.7=1 то записать в errom оставшиеся изменения за 1,778Х12

_________________
Самоделки Сделай сам
__________________________________________________________


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 16:24 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Значит смотри :)
На форуме 6314 пользователей
1 вопрос: минус 1 пользователь, HarryStar отстрелялся.
Осталось 6313 пользователей ответов, минус ты сам, т.е. 6312 ответов
Правда не все тут программисты :shock:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 16:37 
Не в сети
Аватара пользователя

Зарегистрирован: 05 фев 2008, 15:33
Сообщения: 2687
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович
Daniil94 писал(а):
подскажите как каждые 1,778 мс проверять состояние PIND.7
и если 1,778X2 мс PIND.7=1 то записать в errom оставшиеся изменения за 1,778Х12

А зачем такое извращение? повесь прерывание и обработай приход данных в нем.

_________________
Никто кроме нас!!!
4Robots.ru - Все для роботов!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 17:39 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2011, 13:05
Сообщения: 75
Откуда: Белгород
Skype: dan9m@ya.ru
прог. языки: php JS C++ ну и русский конешн
SkyStorm писал(а):
Daniil94 писал(а):
подскажите как каждые 1,778 мс проверять состояние PIND.7
и если 1,778X2 мс PIND.7=1 то записать в errom оставшиеся изменения за 1,778Х12

А зачем такое извращение? повесь прерывание и обработай приход данных в нем.

Можешь привести пример декодирования rc5 на си. Искал в интернете, но не чего не понятно и не на cvavr.
Просто хочется роботом с пульта от телика упралять

_________________
Самоделки Сделай сам
__________________________________________________________


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 17:43 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
let me google that for you: cvavr rc5 infrared
http://www.avrfreaks.net/index.php?name ... 09&start=0

Добавлено спустя 1 минуту 44 секунды:
О, классный комент на АВРФрикс:
I guess I shouldn't be, but I'm LOL

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 18:17 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2011, 13:05
Сообщения: 75
Откуда: Белгород
Skype: dan9m@ya.ru
прог. языки: php JS C++ ну и русский конешн
я не чего не понял.

_________________
Самоделки Сделай сам
__________________________________________________________


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написать программу мигания светодиода. Помогите чайнику
СообщениеДобавлено: 28 окт 2011, 18:34 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Мож вот так понятнее:


Вложения:
stabilizator_na_mototsikl.gif
stabilizator_na_mototsikl.gif [ 6.56 КиБ | Просмотров: 6139 ]

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO