Страница 114 из 304
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 01:59:39
Av4arik
Спойлер
вот теперь есть такой тег для того чтобы прятать код
. сейчас стандартно он открыт. но надеюсь это исправят.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 10:41:10
edm2007
О !!! Спойлер - это великолепно. Дождались.

Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 11:59:59
vanyap1
Короче, напаял конденсаторов у питания каждого элемента схемы по о,1 мф и емкости побольше на вводе питания схемы и в узлах развязки питания! Подтянул сигнальный вывод ИК приемника к питанию через резистор 10 кОм и к МК резистором 100 Ом. Проверил, сигнал доходит к МК. Подключен он у меня на порт внешнего прерывания INT1 на ногу 5.
На пульт реакции никакой. Иногда на некоторых пультах высветит несколько значений и снова умирает.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 12:21:14
edm2007
vanyap1 писал(а):и к МК резистором 100 Ом
Там не к МК а по питанию. Ну значит не RC5 протокол, что еще может быть. Я еле-еле сумел в хламе найти такой протокол, все пульты дома - NEC. Приемник на 36 kHz? Вот же все работает:
Протокол RC5. Модуль дистанционного управления.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 12:27:54
vanyap1
Мне почему то казалось что эти все китайские пульты тоненькие все RC-5! И потом, те которые управляют освещение то они точно работают с этим протоколом.
Ссылку видел вчера.
Приемник подтянут к питанию резистором 10 КОм и подключен к МК через 100 Ом.
Завтра соберу RC-5 передатчик по схеме из хелпа и проверю.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 12:42:33
mr4ester
как то можно у строковой переменной с занесенным в нее переменными, в итоге выглядит что то вроде +12.8 отсечь все после точки? пробовал Fix но она для переменной другого типа.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 14:26:42
amv2000
mr4ester писал(а):как то можно у строковой переменной с занесенным в нее переменными, в итоге выглядит что то вроде +12.8 отсечь все после точки? пробовал Fix но она для переменной другого типа.
Такой вариант не то?
Спойлер
Locate 1 , 1
Lcd "U " ; Fusing(u_real_lcd , "##") ; " V "
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 14:41:21
mr4ester
не получается почему то, сделал так
t_max задал переменную сингл на сколько я понял в нее будет преобразовываться строковая переменная, но компилятор почему то ругается на это "##"
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 15:13:33
mr4ester
при измерении температуры с ds18b20 всегда нужно при отрицательной температуре прибавлять 1 ?
ах да вопрос по поводу того что я писал выше еще открыт.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 16:45:34
max50
TO vanyap1. Что-то я не увидел в коде таких строк:
Код: Выделить всё
Getrc5(address , Command) 'принимаем адресс и команду с пульта
If Address >= 0 And Address < 32 Then 'работаем с любым пультом
Command = Command And &B01111111
Без них RC5 не работает. Все пиемники подключаю по такой схеме:

Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 17:26:35
vanyap1
Этот кусок кода для действия, а мне пока что ненадо ничего делать, просто вывести данные на ЖКИ, неважно что там принято.
Вот поставил этот кусок кода -
Код: Выделить всё
Do
Getrc5(address , Command)
Locate 1 , 1
Lcd Address ; " "
Locate 2 , 1
Lcd Command ; " "
If Address >= 0 And Address < 32 Then
Command = Command And &B01111111
Locate 2 , 8
Lcd "ok"
Else
Locate 2 , 8
Lcd "er"
End If
Waitms 250
....
ничего не изменилось, команда и адрес светит 255 и по условию выше пишет "er"
Короче, не принимает ничего.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 17:40:58
amv2000
mr4ester писал(а):не получается почему то, сделал так
t_max задал переменную сингл на сколько я понял в нее будет преобразовываться строковая переменная, но компилятор почему то ругается на это "##"
А если так Tmax1 =Format(t_max , "00")
или
Tmax1 = Val(t_max)
Пример:
Спойлер
Dim A As Byte , S As String * 10
S = "123"
A = Val(s) 'convert string
Print A ' 123
Спойлер
Dim S As String * 15 , Z As String * 15
S ="ABCDEFG"
Z = Left(s , 5)
Print Z 'ABCDE
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 18:28:09
dimon-790
vanyap1 , фузы правильно выставил? сам приёмник точно живой ?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 18:30:56
edm2007
Кстати, да, может действительно тактирование не то. Вот все тайминги и поплыли.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 19:23:12
vanyap1
Фузы правильно! Сначала работал от внутреннего генератора на 8 МГц, мне моказалось что частота плавает и потому не работает. Переконфигурировал фузы и поставил кварц на 12 МГц, изменил в прошивке частоту тактового генератора. Все то же.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 19:42:58
mr4ester
сапсибо amv2000 получилось с применением этого
Код: Выделить всё
Dim S As String * 15 , Z As String * 15
S ="ABCDEFG"
Z = Left(s , 5)
Print Z 'ABCDE
подскажите пожалуйста, с ds18b20 всегда нужно при отрицательной температуре прибавлять 1 ?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 21:14:51
vanyap1
Да. Если не прибавлять то получится два значения ноля - "-0" и "+0".
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 22:11:24
vanyap1
Извините что вынес вам тут всем моск! Оказывается мои пульты НЕ RC-5 а NEC судя по информации с єтого сайта -
http://www.juras-projects.org/forum/vie ... ?f=5&t=108.
Посмотрю что проще, сделать новую печатную плату для пульта или переписать код под новый протокол. Вот только итак не хватает мне таймеров и прерываний.
Но этот пуль то что надо -
и не работает тоже.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 22:14:27
mr4ester
vanyap1 писал(а):Да. Если не прибавлять то получится два значения ноля - "-0" и "+0".
а если у меня условие
Код: Выделить всё
If Znak = "+" And Hh = 0 Then ' убираем знак "+" с нулевой температуры
Znak = " "
выходит что не надо прибавлять? или все же надо? Hh 'это температура
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 29, 2012 22:19:19
vanyap1
Это все равно не для знака, это для того чтобы не было двух одинаковых значений: ноль должен быть одним значением а не двумя - "+0" и "-0".
Я понимаю это так - от -10 до +10 то это 20 значений, а если будут два нуля то это уже 21 значение и соответственно погрешность в одной части показаний!