BASCOM AVR в вопросах и ответах
Ну хотя бы ссылку на али на девайс. А то что по фотке гадать.
Все делают ошибки, только мудрецы - новые, а дураки - старые.
- Реклама
- Сообщения: 19
- Зарегистрирован: Ср ноя 28, 2018 13:27:24
- Сообщения: 19
- Зарегистрирован: Чт дек 13, 2018 13:32:29
[uquote="kip96",url="/forum/viewtopic.php?p=3572226#p3572226"]Ну хотя бы ссылку на али на девайс. А то что по фотке гадать.[/uquote]
По типу такого
US $0.57 | PL2303 USB к RS232 ttl модуль связи преобразователя
https://s.click.aliexpress.com/e/RcWxU5G
Их там на рубль пучок-все стандартные
Причем пробовал две разные терииналки-в баскоме и внешнюю.Результат одинаковый
По типу такого
US $0.57 | PL2303 USB к RS232 ttl модуль связи преобразователя
https://s.click.aliexpress.com/e/RcWxU5G
Их там на рубль пучок-все стандартные
Да.Mavlid писал(а):В терминале тоже 9600 стоит?
Причем пробовал две разные терииналки-в баскоме и внешнюю.Результат одинаковый
- Сообщения: 19
- Зарегистрирован: Ср ноя 28, 2018 13:27:24
Если частота мк в программе и установленные фьюзы правильные то надо искать проблему в переходнике,у меня такой,работает замечательно
- Сообщения: 19
- Зарегистрирован: Чт дек 13, 2018 13:32:29
[uquote="Mavlid",url="/forum/viewtopic.php?p=3572282#p3572282"]Если частота мк в программе и установленные фьюзы правильные то надо искать проблему в переходнике,у меня такой,работает замечательно[/uquote]
В,общем не в переходнике дело,а в настройке СОМ порта программно.
Если вписать в листинг вот такую строку
То все работает корректно,мусор не сыпется и терминал возвращает правильные буквы.В том числе и кириллицу
В,общем не в переходнике дело,а в настройке СОМ порта программно.
Если вписать в листинг вот такую строку
Код: Выделить всё
Config Com1 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
- Реклама
- Сообщения: 883
- Зарегистрирован: Вс мар 17, 2013 18:54:07
https://www.mcselec.com/index.php?optio ... &Itemid=65Патч BASCOM-AVR 2081 (Win10) Распечатать
Мы сделали патч для BASCOM-AVR версии 2081.
Этот патч на самом деле является обновленной версией среды IDE, которая решает проблему на WIN10, о которой сообщили некоторые клиенты.
Хотя вы можете нажать на эту ошибку, обновление IDE является лучшей альтернативой.
Поскольку тестирование обновления 2082 занимает больше времени, чем планировалось, мы выпускаем этот патч.
Удавалось кому поднять USB на Xmega?
Может кто знает библиотеки для работы с оным!
Может кто знает библиотеки для работы с оным!
- Сообщения: 10
- Зарегистрирован: Пт мар 25, 2011 17:46:25
Добрый вечер всем! Возникла необходимость связать макетную плату AVR-USB-162 (AT90USB162) с другим устройством по UART. Набрал код, зашил - не тут то было. Стал разбираться, искать причину. Сначала ткнул осциллом, Rx и Tx явно отличаются по длине. Набрал простой код из хелпа, который тупо шлет инфу на компорт. Получил кракозябры, как у товарища из этого поста. Стал подбирать скорость порта на компе, получилось, что при $baud = 9600 в прошивке и 1200 в компорту компа - сообщения стали приходить правильны. Т.Е. в восемь раз медленнее работает камень. Стал проверять дальше... Набрал код с прерыванием по Timer1 и отправкой по прерыванию сообщения на порт с инкрементом в единицу. Плюс мигающий светодиод, для наглядности. В общем путем расчетов и проверок получилось, что для периода в 1 секунду:
Config Timer1 = Timer , Prescale = 64
Const Timer1pre = 49914
65536-49914=15622, 15622*64=999808 грубо 1 МГц и это при $Crystal=8000000
и собственно кварц 8 МГц т.е. теже восемь раз. Не пойму почему лыжи не едут... Ошибка в компиляторе ?
Config Timer1 = Timer , Prescale = 64
Const Timer1pre = 49914
65536-49914=15622, 15622*64=999808 грубо 1 МГц и это при $Crystal=8000000
и собственно кварц 8 МГц т.е. теже восемь раз. Не пойму почему лыжи не едут... Ошибка в компиляторе ?
- Сообщения: 10
- Зарегистрирован: Пт мар 25, 2011 17:46:25
Так программит сам баском, там нету настроек таких.... По крайней мере не нашел я прямого доступа к фъюзам
- Сообщения: 10
- Зарегистрирован: Пт мар 25, 2011 17:46:25
Спасибо за пендель! Нашел в баскоме CONFIG CLOCKDIV. В некоторых чипах этот бит установлен по-умолчанию.
Он с завода установлен.
- Сообщения: 10
- Зарегистрирован: Пт мар 25, 2011 17:46:25
Ну да, в датафаке написано, потом уже нашел. За то хелп Баскома пишет The options to set the clock divisor is available in most new chips. Under normal conditions the clock divisor is one. Thus an oscillator value of 8 MHz will result in a system clock of 8 MHz. With a clock divisor of 8, you would get a system clock of 1 MHz. Странно, что не предусмотрена проверка подобных битов или хотя-бы предупреждение компилятора о необходимости проверки о_О
- Сообщения: 3385
- Зарегистрирован: Пн окт 11, 2010 19:00:08
Это программное управление делителем частоты. Напишите в начале кода.alexx60rus писал(а):Нашел в баскоме CONFIG CLOCKDIV.
Код: Выделить всё
CONFIG CLOCKDIV = 1- Сообщения: 10
- Зарегистрирован: Пт мар 25, 2011 17:46:25
Так я ж написал - нашел. Вопрос у меня возник, почему бит установлен, а в баскоме ни где не видно. Понятно , что надо читать датафак и всё такое, но как то странно, что критичные настройки и нет предупреждения при компиляции... Ну буду знать теперь )))
А что должно быть видно? Сообщение "Поверь биты конфигурации!"alexx60rus писал(а): почему бит установлен, а в баскоме ни где не видно.
Дело в том что код можно путём небольшой правки транслировать под любой ближайший чип в котором может и не быть делителя на 8!
- Сообщения: 10
- Зарегистрирован: Пт мар 25, 2011 17:46:25
Так в этом и проблема, что неизвестно состояние битов. Если б я шил программатором, то нет вопросов вообще. Там всё видно. А из баскома через флип- абсолютно негде посмотреть, что он там пихает, куда и в каком состоянии. Окошко с загрузкой проскакивает и понеслось выполнение программы.
Собственно есть еще вопрос - имеется железка, которая шлет на RS232 пакетами данные без перерыва. 10 пакетов по 11 байт. Каждый пакет вида: [0х55] [0х5(0-9)] [data] ...... [data] [CRC]. Я написал программу обработки входящих данных по прерыванию Urxc. Задача программы- ускорять или замедлять мигание светодиода. Через терминал руками ввожу - всё обрабатывается правильно, подключаю к девайсу, начинается белиберда. Мигать оно вообще перестает, такое ощущение, что зацикливается где то.
Собственно есть еще вопрос - имеется железка, которая шлет на RS232 пакетами данные без перерыва. 10 пакетов по 11 байт. Каждый пакет вида: [0х55] [0х5(0-9)] [data] ...... [data] [CRC]. Я написал программу обработки входящих данных по прерыванию Urxc. Задача программы- ускорять или замедлять мигание светодиода. Через терминал руками ввожу - всё обрабатывается правильно, подключаю к девайсу, начинается белиберда. Мигать оно вообще перестает, такое ощущение, что зацикливается где то.
- Сообщения: 3385
- Зарегистрирован: Пн окт 11, 2010 19:00:08
Компилятору они тоже неизвестны. Для этого нужно подключить МК и прочитать их. В разных МК они могут быть по разному заданы.alexx60rus писал(а):Так в этом и проблема, что неизвестно состояние битов.
Т. е. через USB загрузчик? Конфигурационные биты нужно изменять программатором. Загрузчику они недоступны. Это одно из ограничений AVR.alexx60rus писал(а):А из баскома через флип- абсолютно негде посмотреть, что он там пихает, куда и в каком состоянии.
- Сообщения: 10
- Зарегистрирован: Пт мар 25, 2011 17:46:25


