реклама на сайте
подробности

 
 
4 страниц V  « < 2 3 4  
Reply to this topicStart new topic
> Ик барьер, помогите
ipf
сообщение Oct 31 2011, 10:41
Сообщение #46


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 23-09-11
Из: Вьетнам
Пользователь №: 67 350



Ну судя по графику я прав. Теперь дело за малым.)
Go to the top of the page
 
+Quote Post
XVR
сообщение Oct 31 2011, 10:46
Сообщение #47


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(ururur @ Oct 31 2011, 14:27) *
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
TCCR0=0x19;
delay_ms(20)
TCCR0=0x00;
delay_ms(20)
}
Уж сколько раз твердили миру - нельзя в прерываниях звать delay_ms (и прочие разные delay)!

Go to the top of the page
 
+Quote Post
ipf
сообщение Oct 31 2011, 10:48
Сообщение #48


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 23-09-11
Из: Вьетнам
Пользователь №: 67 350



Цитата(XVR @ Oct 31 2011, 17:46) *
Уж сколько раз твердили миру - нельзя в прерываниях звать delay_ms (и прочие разные delay)!


То есть вариант там где было Modulation более правильный?
Go to the top of the page
 
+Quote Post
Tanya
сообщение Oct 31 2011, 10:53
Сообщение #49


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(XVR @ Oct 31 2011, 14:46) *
Уж сколько раз твердили миру - нельзя в прерываниях звать delay_ms (и прочие разные delay)!

Совсем-совсем-никогда?
Go to the top of the page
 
+Quote Post
ipf
сообщение Oct 31 2011, 11:07
Сообщение #50


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 23-09-11
Из: Вьетнам
Пользователь №: 67 350



В принципе мой барьер сейчас ловит, если я прохожу, загорается светодиод. Конечно если быстро пронести что нибудь перекрыв луч то не среагирует то мне этого и не нужно. Остановился на коде который добавил во вложении в связи с отсутствием понимания графиков....) Если можно покритикуйте код. Спасибо
Прикрепленные файлы
Прикрепленный файл  code.txt ( 735 байт ) Кол-во скачиваний: 39
 
Go to the top of the page
 
+Quote Post
XVR
сообщение Oct 31 2011, 11:43
Сообщение #51


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(Tanya @ Oct 31 2011, 14:53) *
Совсем-совсем-никогда?

Иногда можно, но у того, кто понимает 'когда можно', таких вопросов не возникает sm.gif


Цитата(ururur @ Oct 31 2011, 15:07) *
Если можно покритикуйте код.
В коде отсутствует кусок main'а
if внутри while'а явно неправильный (компилятор должен был обругаться)
Уберите delay из прерывания. Например так:
Код
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
static char v=0x19;
TCCR0=v;
v^=0x19;
}

Go to the top of the page
 
+Quote Post
ipf
сообщение Oct 31 2011, 12:22
Сообщение #52


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 23-09-11
Из: Вьетнам
Пользователь №: 67 350



спасибо за модернизацию. , щас попробую на железе. А как в вашем варианте выставлять задержку , между посылками?
Go to the top of the page
 
+Quote Post
XVR
сообщение Oct 31 2011, 12:41
Сообщение #53


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(ururur @ Oct 31 2011, 16:22) *
А как в вашем варианте выставлять задержку , между посылками?

В моем варианте по каждому тику таймера 0 происходит включение (а по следующему - выключение) посылки
Если на выходе нужен не меандр (заполненный 36KHz), то нужен дополнительный счетчик (внутри прерывания)
Go to the top of the page
 
+Quote Post
ipf
сообщение Oct 31 2011, 13:07
Сообщение #54


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 23-09-11
Из: Вьетнам
Пользователь №: 67 350



Цитата(XVR @ Oct 31 2011, 19:41) *
В моем варианте по каждому тику таймера 0 происходит включение (а по следующему - выключение) посылки
Если на выходе нужен не меандр (заполненный 36KHz), то нужен дополнительный счетчик (внутри прерывания)



Мне как раз и нужен меандр 36 кгц. Спаибо


А сколько раз в секунду тикает таймер?

Сообщение отредактировал ururur - Oct 31 2011, 13:07
Go to the top of the page
 
+Quote Post
XVR
сообщение Oct 31 2011, 13:22
Сообщение #55


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(ururur @ Oct 31 2011, 17:07) *
А сколько раз в секунду тикает таймер?
Не знаю, сколько раз он у вас тикает. Это же ваша программа, вам должно быть виднее rolleyes.gif
Go to the top of the page
 
+Quote Post

4 страниц V  « < 2 3 4
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 17:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01476 секунд с 7
ELECTRONIX ©2004-2016