BASCOM AVR в вопросах и ответах
Re: BASCOM AVR в вопросах и ответах
Уважаемые гуру языка BASCOM AVR, мне очень нужно собрать фотореле с таймером на 5 часов, т.е после срабатывания реле свет должен гореть 5 часов а после отключиться и реле снова должно перейти в первоначальное состояние
Нашёл только программку на фотореле помогите пожайлуста добавить в неё таймер, я в программированиии полный 0 , могу только паять
Нашёл только программку на фотореле помогите пожайлуста добавить в неё таймер, я в программированиии полный 0 , могу только паять
- Вложения
-
- схема реле.gif
- (23.19 КБ) 501 скачивание
-
- Program.txt
- (12.52 КБ) 365 скачиваний
-
aleksandr-zh
- Сверлит текстолит когтями
- Сообщения: 1278
- Зарегистрирован: Пн июн 18, 2007 21:51:20
Re: BASCOM AVR в вопросах и ответах
уважаемый, судя по схеме Вы не верно ставите нам задачу 
если просто : пропал свет - включи на 5 часов реле, то это просто. и Мега для этого - слишком жирный МК, любой Tiny хватит с избытком!
а если по указанной схеме, то программа не самая простая будет! - тут и динамическая индикация, и компаратор\ацп...
это на халяву слишком круто... день надо только ПО отлаживать
если просто : пропал свет - включи на 5 часов реле, то это просто. и Мега для этого - слишком жирный МК, любой Tiny хватит с избытком!
а если по указанной схеме, то программа не самая простая будет! - тут и динамическая индикация, и компаратор\ацп...
это на халяву слишком круто... день надо только ПО отлаживать
-
vladik-bob
- Родился
- Сообщения: 4
- Зарегистрирован: Сб ноя 06, 2010 14:59:22
- Откуда: Владивосток
Re: BASCOM AVR в вопросах и ответах
Здравствуйте форумчане, помогите начинающему я пока что еще в школе учусь, поэтому может вопрос глупым покажется. Ни как не могу сообразить, как ШИМ работает. Хочу заставить тини2313 и одну кнопку регулировать яркость светодиода. Помогите разжевать, как это в васком выразить? 

Re: BASCOM AVR в вопросах и ответах
aleksandr-zh писал(а):уважаемый, судя по схеме Вы не верно ставите нам задачу
если просто : пропал свет - включи на 5 часов реле, то это просто. и Мега для этого - слишком жирный МК, любой Tiny хватит с избытком!
а если по указанной схеме, то программа не самая простая будет! - тут и динамическая индикация, и компаратор\ацп...
это на халяву слишком круто... день надо только ПО отлаживать
Мне без разницы на чём собирать, может быть у вас есть подобная программка на Tiny ?
Re: BASCOM AVR в вопросах и ответах
Народ а Bascom AVR под Windows7 64 с STK200&300 работает или нет.
Только абсолютная пустота бездны принесёт мне покой.
-
aleksandr-zh
- Сверлит текстолит когтями
- Сообщения: 1278
- Зарегистрирован: Пн июн 18, 2007 21:51:20
Re: BASCOM AVR в вопросах и ответах
Advent писал(а):aleksandr-zh писал(а):уважаемый, судя по схеме Вы не верно ставите нам задачу
если просто : пропал свет - включи на 5 часов реле, то это просто. и Мега для этого - слишком жирный МК, любой Tiny хватит с избытком!
а если по указанной схеме, то программа не самая простая будет! - тут и динамическая индикация, и компаратор\ацп...
это на халяву слишком круто... день надо только ПО отлаживать
Мне без разницы на чём собирать, может быть у вас есть подобная программка на Tiny ?
а где задача? напишите
просто то, что вы написали ну ни как не вяжется с той сложной схемой, что на рисунке показано...
Re: BASCOM AVR в вопросах и ответах
Алгоритм таков
Наступила ночь - лампочка загорелась и горит в течении 5 часов и отключается - устройство снова сработает когда пройдёт этот остаток ночи, наступит день и в ночь снова сработает на пять часов и т.д.
Наступила ночь - лампочка загорелась и горит в течении 5 часов и отключается - устройство снова сработает когда пройдёт этот остаток ночи, наступит день и в ночь снова сработает на пять часов и т.д.
-
aleksandr-zh
- Сверлит текстолит когтями
- Сообщения: 1278
- Зарегистрирован: Пн июн 18, 2007 21:51:20
Re: BASCOM AVR в вопросах и ответах
хорошо, на неделе постараюсь заняться...
пока не могу понять, как работать с фото-резистором
укажите его сопротивление без освещения, при тусклом освещении и при естественном дневном освещении
пока не могу понять, как работать с фото-резистором
укажите его сопротивление без освещения, при тусклом освещении и при естественном дневном освещении
Re: BASCOM AVR в вопросах и ответах
aleksandr-zh без освещения - 15 МОм
при тусклом - 12 МОм
при дневном свете - 6 МОм
Если можно то напишите программу для Attiny13 они самые дешёвые ножек думаю хватит, можно без индикаторов, без регулировки времени, в программе зафиксировать 5 часов и всё
Огромно СПАСИБО буду ждать программку
при тусклом - 12 МОм
при дневном свете - 6 МОм
Если можно то напишите программу для Attiny13 они самые дешёвые ножек думаю хватит, можно без индикаторов, без регулировки времени, в программе зафиксировать 5 часов и всё
Огромно СПАСИБО буду ждать программку
-
aleksandr-zh
- Сверлит текстолит когтями
- Сообщения: 1278
- Зарегистрирован: Пн июн 18, 2007 21:51:20
Re: BASCOM AVR в вопросах и ответах
мда, надо будет мудрить с резисторами...
напомните мне о вашем задании во вторник на мой email
он указан на сайте, сайт - в подписи (см выше)
напомните мне о вашем задании во вторник на мой email
он указан на сайте, сайт - в подписи (см выше)
- kip96
- Держит паяльник хвостом
- Сообщения: 965
- Зарегистрирован: Ср авг 26, 2009 08:24:50
- Откуда: 1300км от Пупа
Re: BASCOM AVR в вопросах и ответах
У меня подобная задача стояла, когда нужно было летний душ заправлять утром. Но резистор был от фотоаппарата, и разброс был 10Ком-100Ом(примерно). сначала думал через компаратор тиньки, а оказалось достаточно на Int0 делитель из резистора 1Ком и фоторезистора.
А с таким разбросом в МОм, без внешнего компаратора или хотя-бы эмит. повторителя- не обойтись, ибо от помех трудно будет уберечся.
Проще резистор куить:

А с таким разбросом в МОм, без внешнего компаратора или хотя-бы эмит. повторителя- не обойтись, ибо от помех трудно будет уберечся.
Проще резистор куить:
- Вложения
-
- fr48_1m_t.jpg
- (908 байт) 1665 скачиваний
Все делают ошибки, только мудрецы - новые, а дураки - старые.
Re: BASCOM AVR в вопросах и ответах
Опять вопросы
Теперь правда не по баскому а по самой 74HC595.
Вот снял скан с рабочего устройства:
Не знаю на каком языке там написано и вообще как реализовано, не важно. Теперь делаю то же самое на баскоме с помощью Shiftout:
Правильно я понимаю что на выходе 74hc595 я буду иметь то же самое что и в оригинальном устройстве?
Вот снял скан с рабочего устройства:
Не знаю на каком языке там написано и вообще как реализовано, не важно. Теперь делаю то же самое на баскоме с помощью Shiftout:
Правильно я понимаю что на выходе 74hc595 я буду иметь то же самое что и в оригинальном устройстве?
- ВНН
- Потрогал лапой паяльник
- Сообщения: 347
- Зарегистрирован: Сб дек 13, 2008 09:03:43
- Откуда: г.Советская Гавань
Re: BASCOM AVR в вопросах и ответах
В архиве 4и исходника для 74hc595
Удачи
Удачи
- Вложения
-
- 74hc595.rar
- Исходники для 74hc595
- (3.75 КБ) 350 скачиваний
Я тоже белый и пушистый и также как и Вы ловлю мышей.
С уважением ВНН.
С уважением ВНН.
Re: BASCOM AVR в вопросах и ответах
Спасибо, это тоже пригодится 
А по своему вопросу разобрался, конечно что в первом случае, что во втором результат одинаков.
А по своему вопросу разобрался, конечно что в первом случае, что во втором результат одинаков.
Re: BASCOM AVR в вопросах и ответах
vladik-bob писал(а):Здравствуйте форумчане, помогите начинающему я пока что еще в школе учусь, поэтому может вопрос глупым покажется. Ни как не могу сообразить, как ШИМ работает. Хочу заставить тини2313 и одну кнопку регулировать яркость светодиода. Помогите разжевать, как это в васком выразить?
ШИМ работает так: при непрерывной подаче напряжения на светодиод на нем выделяется самая большая мощность и диод светится наиболее ярко; для ШИМ делается прерывание энергии с частотой не менее 50 Гц(чтобы глаз не замечал моргания светодиода).То есть на светодиод подаются импульсы прямоугольного напряжения с частотой не менее 50 Гц (периодом 20 миллисекунд).В течение этого времени напряжение на светодиод подается, например, в течение 5 миллисекунд, а в остальное время его нет.Через 20 миллисекунд процесс возобновляется ит.д.Регулируя время подачи энергии от 0 до 20 миллисекунд,мы регулируем кажущееся свечение от 0 до максимума, так как зрение усредняет световую энергию во времени.
Это и должна делать программа на BASCOM автоматически.Естественно, для этого нужно ее составить и записать в память МК.
Таким образом, нужно:
1)обозначить какой-либо вывод как ВЫХОД - к нему будет подключен светодиод;
2)обозначить какой-либо вход как ВХОД "Увеличить" - к нему будет подключена кнопка "УВ"для увеличения длительности импульса подачи энергии;
3)обозначить какой-либо вход как ВХОД "Уменьшить" - к нему будет подключена кнопка "УМ"для уменьшения длительности импульса подачи энергии.
Если кнопки не трогать, диод должен "гореть" с одной и той же яркостью.В принципе, можно записать во FLASH-памяти "величину яркости".
Последний раз редактировалось user2007 Пт дек 24, 2010 13:21:01, всего редактировалось 2 раза.
-
vladik-bob
- Родился
- Сообщения: 4
- Зарегистрирован: Сб ноя 06, 2010 14:59:22
- Откуда: Владивосток
Re: BASCOM AVR в вопросах и ответах
Спасибо огромное, а можно исходничек какой-нибудь набросать так, поковырять да поразмыслить. 
Re: BASCOM AVR в вопросах и ответах
vladik-bob писал(а):Спасибо огромное, а можно исходничек какой-нибудь набросать так, поковырять да поразмыслить.
Пожалуйста.Надеюсь, Вам это поможет.Для схемы: 1)посадить входы D.0 и D.1 через резисторы
10 КОм на -5В(землю),2)2 кнопки соединить с +5В и этими входами, чтобы при нажатии кнопки
на вход подавалось +5В - лог.единица,3)к выходу В.0 подключить резистор 510 Ом,к нему
светодиод на землю -5В.Данную программу можно "прогнать" на симуляторе BASCOM-AVR.
$crystal = 8000000 'используем внутренний генератор на 8 МГц.
Const N = 40 ' 40 микросекунд
Dim A As Byte ' переменные - см.ниже, для чего
Dim A1 As Word
Dim N1 As Word
Config Pinb.0 = Output 'порт В.0 задаем как ВЫХОД
Config Portd = Input 'порт D задаем как ВХОД
A1 = 250 'при включении питания - среднее свечение:50% времени горит, 50%
'времени не горит
Inputcircle: 'вход в основной программный цикл
A = Pind 'считываем двоичный код на входах порта D,записываем в
переменную А
If A = 1 Then 'если нажата кнопка, подающая +5В на вход D.0, код равен 1, А=1
Incr A1 'увеличиваем переменную А1 на 1 каждые 20 мс , яркость растет(УВ)
If A1 => 500 Then 'ограничиваем величину А1 цифрой 500
A1 = 500 'общее число циклов - 500 по 40 микросекунд = 20 миллисекунд
End If
End If
If A1 => 1 Then 'если А1 больше или равно единице, то, если нажата кнопка, подающая +5В
' на вход D.1(УМ), яркость падает ,ограничим минимум величиной А=0
If A = 2 Then
Decr A1 'в этом случае A1 уменьшается на единицу каждые 20 мс,яркость падает
End If
End If
Set Portb.0 'порт В.0 устанавливаем в 1 - на светодиод подается напряжение, он горит
N1 = A1 'входим в подпрограмму цикла, N1 - (см.стр.48 данного форума, там я
Gosub Circle1 'расписал работу подпрограммы)время горения= 40хN1 микросекунд
Reset Portb.0 'порт В.0 устанавливаем в 0 - светодиод гаснет
N1 = 500 - A1 'входим в подпрограмму цикла, (см.стр.48 данного форума, там я
Gosub Circle1 'расписал работу подпрограммы), N1 задает количество циклов до 20
'миллисекунд - мы оговорили частоту импульсов 50 Гц, время 1 импульса
'20 мс,время гашения =40х(500-А1) микросекунд
Goto Inputcircle 'возврат в исходную точку и бесконечное повторение
Circle1: 'подпрограмма временной регулируемой задержки, см.стр.48 данного форума
While N1 > 0 'пока N1 больше нуля,вход в цикл
Waitus N 'задержка 40 микросекунд
Decr N1 'уменьшение N1 на единицу, общее время задержки - 40хN1 микросекунд
Wend
Return 'возврат в программу
Время основного цикла неизменно - 20 мс.
Последний раз редактировалось user2007 Пт дек 24, 2010 13:23:46, всего редактировалось 5 раз.
Re: BASCOM AVR в вопросах и ответах
Доброе время суток.
Подскажите в bascome есть функция для инвертирования битов.
Подскажите в bascome есть функция для инвертирования битов.
Только абсолютная пустота бездны принесёт мне покой.
Re: BASCOM AVR в вопросах и ответах
Вот, из справочника М.Л. Кулиша.
И поищи еще в справке по слову toggle, вот оттуда:
И поищи еще в справке по слову toggle, вот оттуда:
TOGGLE can also be used on numeric variables. It will invert all bits in the variable. It has the same effect as NOT.
Re: BASCOM AVR в вопросах и ответах
Подскажите что нетак.
вобщем только начал изучать мк.
Сделал пробную мегалку на светодиодах с регистрами 74HC595.
При нажатии на кнопку должна менятся прграмма мигания в определёной последовательности, но выбор идёт случайно. Где ошибка.
вобщем только начал изучать мк.
Сделал пробную мегалку на светодиодах с регистрами 74HC595.
При нажатии на кнопку должна менятся прграмма мигания в определёной последовательности, но выбор идёт случайно. Где ошибка.
Код: Выделить всё
$regfile = "m8def.dat "
$crystal = 1000000
Ddrb = &B000111
Config Portd.3 = Input
Config Int0 = Low Level
Ds Alias Portb.0
Sh_cd Alias Portb.1
St_cp Alias Portb.2
Buton Alias Pind.3
On Int0 Butonp
Enable Interrupts
Enable Int0
Declare Sub 74hc595(byval Pin As Integer)
Dim Led As Integer
Dim Ifect As Byte
Led = Rnd(32767)
Ifect = 0
Do
Call 74hc595(led)
Rotate Led , Right , 1
Waitms 80
Loop
End
Sub 74hc595(byval Pin As Integer) 'Процедура загрузки даных врегистр
Shiftout Ds , Sh_cd , Pin , 3 , 16
Set St_cp
Waitms 1
Reset St_cp
End Sub
Butonp: 'Обработка нажатия кнопки
Waitms 20
While Buton = 1 'Ожидание отпускания кнопки
Wend
Ifect = Ifect + 1 'Выбр эфекта
If Ifect = 4 Then Ifect = 0
Select Case Ifect
Case 0
Led = &B0111111111111111
Case 1
Led = &B1000000000000000
Case 2
Led = &B1010101010101010
Case 3
Led = &B0011001100110011
End Select
Gifr = 64
Waitms 1
ReturnТолько абсолютная пустота бездны принесёт мне покой.