Страница 10 из 304

Добавлено: Вт янв 13, 2009 02:35:07
WOLF666
Секретный кот
датчик ds18b20.пока в протеусе пытаюсь заставить работать.в железе еще не пробовал

Добавлено: Вт янв 13, 2009 12:28:39
Igor_67
Доброго всем времени суток!
Есть небольшая заморока с директивой DEBOUNCE. Можно ли по этой директиве отсылать программу не по GOTO, а по адресу подпрограммы, т.е. GOSUB? нужно ли для этого прописать в начале DECLARE SUB? И ещё вопрос: можно ли DEBOUNCE вставлять в программу обработки прерывания, например, от таймера? Эффективен ли такой опрос кнопок?

Добавлено: Ср янв 14, 2009 09:40:40
Gryphon
Кто может мне сказать, как мне подключить и использовать PS/2 клавиатуру (как мне написать программу)

Добавлено: Сб янв 17, 2009 13:14:38
PB_EXPERT
Как можно отлечить демку от полной версии 1.11.9.0?
Где для этой версии можно найти русификатор?

Добавлено: Сб янв 17, 2009 15:36:18
PB_EXPERT
PB_EXPERT писал(а):Где для этой версии можно найти русификатор?
Это вопрос снимается, так как эта версия поддерживает русский язык. :shock:
Для русификации достаточно в меню Options выбрать пункт Environment и перйти на закладку IDE.
Язык выбираем в выпадающем списке Language

Добавлено: Сб янв 17, 2009 16:15:42
pavel123
Во блин, сколько пользуюсь, только сейчас узнал. Уже привык к латыни. :)
Спасибо. :))

Добавлено: Сб янв 17, 2009 17:57:52
PB_EXPERT
В примерах можно увидеть такие строки

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

$hwstack = 32 
$swstack = 10
$framesize = 40
что они значат?
Первые две это похоже что за стек отвечают, но ведь стек один, и зачем две строки?
Нижняя вообще непонятно для чего... :(
Из справки что-то не совсем понятно. Пишется за аппаратный и программный стек. Но насколько мне изветсно, стек один и находится в ОЗУ.
А за что отвечает $framesize вообще непонятно.

Добавлено: Пн янв 19, 2009 23:19:44
Деня
Igor_67
По поводу DEBOUNCE вопрос не понят, это время на дребезг контактов
например кнопки подключённой к пину ( не забудь поттяжку ).
GOSUB и GOTO операторы условного и безусловного перехода.
А DECLARE SUB декларирование функции к GOSUB и GOTO никаким боком не относятся.

PB_EXPERT
$hwstack = 32
$swstack = 10
$framesize = 40
Это действительно стеки и размер программы лично оно нужно только для лучшей работы Bascom"a
Я такие строки в программу не ввожу и проблем нет.

Добавлено: Вт янв 20, 2009 01:08:01
Shuriks
Я такие строки в программу не ввожу и проблем нет.
to Деня : Не скажи ... Эти строки описывают стек для работы как самой программы ($swstack) , так и стек для работы "железа" МК (UART и т.д. директива $hwstack) Один раз при работе с UART пришлось повозиться подбирая вручную эти значения, и только после этого он начал работать без глюков , замечу однако , что в программе было прерывание (постоянно) по таймеру .. И в тоже время данные передавались (и принимались) по UART. Вот для таких вещей собственно это и предназначенно :)
Кстати , в одном примере который идет в комплекте с программой примерно тоже самое и было написанно ... Поищу - выложу :)

Добавлено: Ср янв 21, 2009 08:14:48
Gryphon
Доброго времени, форумчане! Кто знает, как на тиньки2313 в BASCOM-AVR на один из выходов вывести частоту 1500000 Гц (мне нужно подтактировать YM2149F или AY-3-8910). А, ну раз разговор пошел, кто поможет YM2149F или AY-3-8910 подключить к меге8 на BASCOM-AVR (если надо, образец на CodeVisionAvr могу дать).

Добавлено: Ср янв 21, 2009 10:36:01
smac
Gryphon писал(а):Доброго времени, форумчане! Кто знает, как на тиньки2313 в BASCOM-AVR на один из выходов вывести частоту 1500000 Гц (мне нужно подтактировать YM2149F или AY-3-8910). А, ну раз разговор пошел, кто поможет YM2149F или AY-3-8910 подключить к меге8 на BASCOM-AVR (если надо, образец на CodeVisionAvr могу дать).
Нужно смотреть либо в сторону таймера настроенного в режим СТС, с выходом на ногоу контроллера (см. описание регистров нужного таймера в ДШ), и есть еще вариант - затактировать контроллер на частоте 1,5 МГц и выводить эту частоту наружу на вывод CKOUT - это делается с помощью фьюза CKOUT.

Добавлено: Ср янв 21, 2009 13:55:38
Gryphon
Нужно смотреть либо в сторону таймера настроенного в режим СТС, с выходом на ногоу контроллера (см. описание регистров нужного таймера в ДШ), и есть еще вариант - затактировать контроллер на частоте 1,5 МГц и выводить эту частоту наружу на вывод CKOUT - это делается с помощью фьюза CKOUT.
А если у меня тинька на 4МГц, то как организовать все это дело. Напишите пожалуйста саму программу, а то я не очень владею языком.

Добавлено: Ср янв 21, 2009 15:22:39
smac
Gryphon писал(а): Напишите пожалуйста саму программу, а то я не очень владею языком.
Я пас. Во-первых у меня нет времени, во-вторых, я считаю что программировать на бесике контроллер (тем более тиньку2313) - то еще извращение.

Добавлено: Ср янв 21, 2009 19:06:02
pomidor
2Gryphon
в последнем посте Luciano

http://www.mcselec.com/index2.php?optio ... quare+wave

Добавлено: Вс янв 25, 2009 10:50:12
Тихан
Повторяю вопрос:
А возможно с помощью электретного микрфона , барсика, и AVR'а сделать звукопереключатель?
Скажем если есть сигнал то включить какойто выход.
Или както подругому?Мозет кто знает?

Добавлено: Вт янв 27, 2009 09:00:45
Igor_67
Тихан писал(а):Повторяю вопрос:
А возможно с помощью электретного микрфона , барсика, и AVR'а сделать звукопереключатель?
Скажем если есть сигнал то включить какойто выход.
Или както подругому?Мозет кто знает?
В принципе, возможно всё! Только надо сперва сформировать входной сигнал от электретного микрофона и задать какой-то порог срабатывания. Опять же сигнал надо усилить до нужного напряжения, чтобы AVR его увидел. То есть больше заморочек с аналоговой частью, чем с цифровой. А уж если аналоговая часть правильно заработает, тогда зачем вообще контроллер нужен? Просто подать сигнал на обыкновенный триггер и будет вам счастье! :))

Добавлено: Вт янв 27, 2009 09:30:36
Igor_67
Деня писал(а):Igor_67
По поводу DEBOUNCE вопрос не понят, это время на дребезг контактов
например кнопки подключённой к пину ( не забудь поттяжку ).
GOSUB и GOTO операторы условного и безусловного перехода.
А DECLARE SUB декларирование функции к GOSUB и GOTO никаким боком не относятся.

PB_EXPERT
$hwstack = 32
$swstack = 10
$framesize = 40
Это действительно стеки и размер программы лично оно нужно только для лучшей работы Bascom"a
Я такие строки в программу не ввожу и проблем нет.
Декларирование (объявление) функции - это ИМХО DECLARE FUNCTION, а вот DECLARE SUB - это объявление подпрограммы. Так вот, я и спрашивал, надо ли объявлять какую либо ПП заранее, если в директиве DEBOUNCE SUB имеется ссылка на эту ПП? И про использование директивы DEBOUNCE в прерывании так никто и не ответил. :( Вопрос остаётся в силе.

Добавлено: Вт янв 27, 2009 11:48:36
Тихан
Igor_67, Поддскажи с аналоговой частью! С цифровой думаю разберусь.
Как сформировать сигнал,
че за порог срабатывания,
и как усилять сигнал до нужного напряжения?Резистором уменьшают , а увеличавают?

Добавлено: Вт янв 27, 2009 16:37:34
Igor_67
Тихан писал(а):Igor_67, Поддскажи с аналоговой частью! С цифровой думаю разберусь.
Как сформировать сигнал,
че за порог срабатывания,
и как усилять сигнал до нужного напряжения?Резистором уменьшают , а увеличавают?
Вобче-то увеличивают сигнал УВЕЛИЧИТЕЛЕМ :))) :))) :))) , то бишь усилителем. Можно хоть на транзисторе, хоть на операционнике. Как больше нравится. На операционнике проще - там сразу и порог нужный задать можно. На сайте где-то есть про операционники статья. Почитай внимательно. Думаю найдёшь похожую схемку.
А вообще, такой вопрос лучше задать в разделе "ТЕОРИЯ". Наверняка подскажут умные люди , то есть коты, как правильно надо сделать... :)))

...сейчас вот специально посмотрел. Действительно в разделе "СТАТЬИ" есть "Применение операционных усилителей" в трёх частях. ИМХО, в твоём случае нужен неинвертирующий усилитель + компаратор (а ещё лучше триггер Шмитта). Неинвертирующий усилитель предпочтительней потому, что у микрофона довольно высокое выходное сопротивление (хотя, смотря какой микрофон), а компаратором задаётся нужный порог включения/выключения (за счёт изменения опорного напряжения на неинвертирующем входе ОУ) подбором резисторов делителя. Думаю, здесь можно применить один сдвоенный ОУ, например К157УД2 или К140УД20, а ещё лучше - импорт!

Добавлено: Вт янв 27, 2009 23:38:32
Деня
Igor_67
Извини сначала не туда.
Подпрограмму объявлять не нужно, ты указываеш на нее здесь-
Debounce Pind.0 , 0 , Pr , Sub
DEBOUNCE в прерывании работает, но в программе в момент наступления события, подтормаживает.
Это очень тяжело поймать.
Я чтоб не заморачиватся пользуюсь циклом
(FOR, NEXT), и прерывания проходят и дребезг контролирую.