BASCOM AVR в вопросах и ответах
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Да давали. Но проблема в том что второй порт куда отсылается старший байт (8бит) мне нужен не полностью. А только 2 пина чтоб считать до 1024. Остальные 6 пинов необходимы для других целей. Но они уже не переключаются и я не понимаю почему. Видимо то что записано в порт , ждет комманды на + или - и по этому не может быть изменено. Но это так, предположения не более. Вот пока не могу понять как заставить работать отдельно порты эти...
- Секретный кот
- Поставщик валерьянки для Кота
- Сообщения: 2106
- Зарегистрирован: Ср сен 17, 2008 14:32:15
- Откуда: Старые Васюки
- Контактная информация:
Re: BASCOM AVR в вопросах и ответах
А вы меняйте не весь порт, а только нужные разряды (по маске).
Даже остановленные часы два раза в сутки показывают правильное время.
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Спасибо за совет. Попробую поискать информацию по этой "маске". Теория нынче у меня каждый день.
- Секретный кот
- Поставщик валерьянки для Кота
- Сообщения: 2106
- Зарегистрирован: Ср сен 17, 2008 14:32:15
- Откуда: Старые Васюки
- Контактная информация:
Re: BASCOM AVR в вопросах и ответах
Ну например так (для вывода только 2 младших бит в порт B):
Код: Выделить всё
x=&b00000010 'Переменная, которую надо вывести
portb = portb AND &b11111100 'Очистка двух младших бит порта B
portb = portb OR x 'Вывод в порт B
Даже остановленные часы два раза в сутки показывают правильное время.
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Спасибо Секретный кот! Буду разбираться! Где бы найти хорошую книгу по баском авр? Вчера читал до поздна переведенный на русский язык хелп для баском авр, отрубился где то в конце... 

-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Сделал проще))))) Назначил в порту последние 6 пинов входами и перенёс туда кнопки
Стало в разы удобнее и всё прекрасно работает + никаких лишних строчек в коде 

-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Еще глупый вопрос. Как зациклить подпрограмму , до тех пор пока не произойдет внешнее условие? Например появится набор логических уровней на ходах.
- Секретный кот
- Поставщик валерьянки для Кота
- Сообщения: 2106
- Зарегистрирован: Ср сен 17, 2008 14:32:15
- Откуда: Старые Васюки
- Контактная информация:
Re: BASCOM AVR в вопросах и ответах
Даже остановленные часы два раза в сутки показывают правильное время.
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
- edm2007
- Поставщик валерьянки для Кота
- Сообщения: 2255
- Зарегистрирован: Вт апр 21, 2009 22:24:10
- Откуда: Иркутск
- Контактная информация:
Re: BASCOM AVR в вопросах и ответах
А чем стандартные Do ... Loop Until или While ... Wend не устраивают?
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Ну почему же не устраивают? Применяю. Но пока не очень понятно как применять Do в подпрограмме. Пробую, учусь, экспериментирую.
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
И снова ведь разобрался! блин меня модераторы за флуд на год забанят
Все просто
Return - Нужно ставить если вверху в коде подпрограмма. Пока не поставил у меня творилось что попало!
Vol:
Do
If какое либо там условие
If Stp = 1 проверяем порт
If Stp = 1 Then Waitms 100 задержка которую потом надо будет придумать как регулировать
If Stp = 0 Then Return если на порт пришел 0 которого ждали то возвращаемся в основную программу
Loop
Теперь надо придумать как регулировать задержку.
можно ли назначить Waitms например так --
X = 50
Waitms = X ???
Все просто
Return - Нужно ставить если вверху в коде подпрограмма. Пока не поставил у меня творилось что попало!
Vol:
Do
If какое либо там условие
If Stp = 1 проверяем порт
If Stp = 1 Then Waitms 100 задержка которую потом надо будет придумать как регулировать
If Stp = 0 Then Return если на порт пришел 0 которого ждали то возвращаемся в основную программу
Loop
Теперь надо придумать как регулировать задержку.
можно ли назначить Waitms например так --
X = 50
Waitms = X ???

Re: BASCOM AVR в вопросах и ответах
myx писал(а):Igor_67 писал(а):To myx: То что вы написали - это не код, а какой-то огрызок. Где задание переменных? И где вы тут увидели сохранение в EEPROM??? Выкладывайте полный код, тогда и поглядим. Я таких терморегуляторов кучу уже наделал, так что, чем смогу - помогу.
Полный проект с исходником в архиве. Заранее спасибо.
С таким датчиком не работал, но сходу сразу видно, что переменная Х1 задана типа байт, она же и отображается на LCD. Можно задать данную переменную типа Integer, а потом разбить на целые и дробные части. А можно взять все переменные типа Single, тогда все гораздо проще посчитается. А сохранение в EEPROM осуществлять частями, предварительно разбив переменную типа Single на целую (Int) и дробную (Frac) части.
Только учтите, что переменные типа Single сильно жрут оперативку и стек МК.
Цапу крутить надо!!! Ку или не ку?
Re: BASCOM AVR в вопросах и ответах
Igor_67 писал(а):С таким датчиком не работал, но сходу сразу видно, что переменная Х1 задана типа байт, она же и отображается на LCD. Можно задать данную переменную типа Integer, а потом разбить на целые и дробные части. А можно взять все переменные типа Single, тогда все гораздо проще посчитается. А сохранение в EEPROM осуществлять частями, предварительно разбив переменную типа Single на целую (Int) и дробную (Frac) части.
Только учтите, что переменные типа Single сильно жрут оперативку и стек МК.
В теории понял, а вот как на практике написать не знаю. Ради добавления возможности регулировать температуру с десятыми долями не хочется бэйсик изучать. Может накидаете кусок программы с изменениями?
Re: BASCOM AVR в вопросах и ответах
Ув. Коты-баскомовцы, тут назрел вопрос по поводу дисплея LS020. Для него есть библиотека LCD-SIEMENS_S65_LS020_256_W1.LBX
Но вот проблема шрифты 8х8 отображает нормально, а 16х16 срезает верхний ряд символа и переносит в низ.
Никто случайно не сталкивался с таким приколом?
Но вот проблема шрифты 8х8 отображает нормально, а 16х16 срезает верхний ряд символа и переносит в низ.
Никто случайно не сталкивался с таким приколом?
Re: BASCOM AVR в вопросах и ответах
Хочу выразить искреннюю благодарность участнику форума под ником mr4ester!
Человек с открытой душой помог мне малость разобраться в написании программ.
Пару примеров, не очень сложная программа и дело пошло.
До сложных программ еще далеко, но мне для работы пока достаточно.
Мужики, чертовски здорово, когда сам пишешь прогу и главное понимаешь что пишешь.
mr4ester , огромное спасибо за помощь!
Человек с открытой душой помог мне малость разобраться в написании программ.
Пару примеров, не очень сложная программа и дело пошло.
До сложных программ еще далеко, но мне для работы пока достаточно.
Мужики, чертовски здорово, когда сам пишешь прогу и главное понимаешь что пишешь.
mr4ester , огромное спасибо за помощь!
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
TIP писал(а):Хочу выразить искреннюю благодарность участнику форума , огромное спасибо за помощь!
Так же могу отблагодарить edm2007. Он тоже отличный программист. Я вот не смотря на то что недавно начал программировать , уже делаю сложный проект и знаете получается! Даже не смотря на то что вопросы остаются. Сейчас вот пытаюсь меню сделать, сделать то сделал и работает всё но как в нём константы отображать и менять - пока так и не допёр
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Vet-RX писал(а): шрифты 8х8 отображает нормально, а 16х16 срезает верхний ряд символа и переносит в низ.
Никто случайно не сталкивался с таким приколом?
А как же функция Locate ? Там ведь можно выставить местоположение текста на дисплее.
А возможно в библиотеке просто место ограничено под символы на дисплее, это хуже...
Re: BASCOM AVR в вопросах и ответах
там в таком виде: Lcdat 67 , 25 , переменная для вывода , цвет шрифта , цвет фона
67 и 25 координаты начала отображения, пробовал менять, серавно искаженный
67 и 25 координаты начала отображения, пробовал менять, серавно искаженный
-
осторожно! леоныч!!!
- Сверлит текстолит когтями
- Сообщения: 1156
- Зарегистрирован: Вт дек 09, 2008 20:31:56
Re: BASCOM AVR в вопросах и ответах
Значит возможно надо править библиотеку...