Перейти к блогу GetChip.net - блог        JilTE[1] - в разработке     Модификации устройств - модификации

 
Текущее время: 14 дек 2024, 04:08

Часовой пояс: UTC + 3 часа [ Летнее время ]



Начать новую тему Ответить на тему  [ Сообщений: 220 ]  На страницу Пред.  1 ... 18, 19, 20, 21, 22
Автор Сообщение
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 18 июн 2018, 09:10 
И все же, в какой кодировке посылает символы на UART АБ?
Термопринтер, который я планирую установить в устройство, поддерживает десятка три таблиц, в т.ч. несколько с кириллицей. Какую из них выбрать для работы?


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 18 июн 2018, 12:37 
Не в сети
Аватара пользователя

Зарегистрирован: 29 май 2011, 17:59
Сообщения: 3769
Откуда: Россия


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 19 июн 2018, 11:34 
Не в сети

Зарегистрирован: 19 июн 2018, 11:22
Сообщения: 1
Откуда: Санкт-Петербург
И как сейчас идет работа?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 22 июн 2018, 09:36 


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 23 июн 2018, 00:24 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 15 май 2011, 23:00
Сообщения: 1904
1 используй Sheft+F3 - это актуальное представление данных в коде (другие варианты остались с ранних версий для совместимости)
2 заданные в макросе параметры можно использовать как угодно в теле макроса. при компиляции программы все параметры просто заменяются прописанными значениями
3 кусок кода можно вставить только скрином (ну или скинуть файл вкладки)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 07 сен 2018, 10:54 
Доброго времени.
Возникла пара вопросов не совсем по АБ, но все же:

Таймер1 АТМега*** может работать в режиме счета внешних событий. При этом внешний тактовый (счетный) сигнал должен подаваться на вход Т1 (у Меги328 это вроде пин PD5).
Можно ли управлять этим пином программно, допустим, по прерыванию другого таймера, не дергая PD5 "снаружи"?

Можно ли как-то принудительно обнулять регистр прескалера таймера (любого)? Регистр сравнения OCR** обнуляется, допустим, при совпадении, но при этом счетный регистр прескалера сохраняет накопленное значение, а это вносит довольно заметную ошибку при измерении коротких временнЫх интервалов.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 07 сен 2018, 14:23 


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 08 сен 2018, 11:45 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 15 май 2011, 23:00
Сообщения: 1904
Привет!
"но при этом счетный регистр прескалера сохраняет накопленное значение"
Понятие prescaler не с чем не путаете? Потому что prescaler - это значение (коэффициент) на которое делится частота генератора таймера. Соответственно там ничего не накапливается.
Или я чего то не так понял?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 08 сен 2018, 14:46 
Привет! Нет, не путаю. Прескалер - это не коэффициент деления, а счетчик с этим коэффициентом. Аппаратный счетчик, а не виртуальный.
И, как я понимаю, он "крутится" и считает независимо от того, включен в данный момент таймер, или нет.
Предположим, что Fкамня = 4000000 Гц, и Кпрескалера = 64. Это значит, что таймер будет "тикать" каждые 16 мкс, по переполнению прескалера. Если таймер активировать в тот момент, когда в крескалере УЖЕ будет b#00111111, то таймер начнет считать уже на следующий машинный такт (через 0,25 мск), а если таймер включить, когда в прескалере будет всего b#00000001, то первый "тик" таймера произойдет аж через 16 мкс! То есть, в зависимости от того, в какой момент будет активирован таймер, возникает не нормируемая задержка в пределах от 250 нс до 16 мкс.
Отсюда и возникает вопрос о том, как обнулять счетчик прескалера перед запуском таймера, чтобы исключить или минимизировать эту аппаратную, но не предсказуемую, ошибку при точном измерении отрезков времени.
Кажется, в старой книжке Евстифеева такой режим описан (когда-то читал, не могу сейчас найти), но на практике реализовать его тогда не удалось, а сейчас снова возникла эта проблема. Вот и поинтересовался у сообщества, мо-быть кто-то знает, как это делается.
Требуется считать время с точностью не хуже 1 мкс Мегой 328 с 16 МГц кварцем.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Начинающим программировать в АБ
СообщениеДобавлено: 08 сен 2018, 17:28 
Не в сети
Аватара пользователя

Зарегистрирован: 29 май 2011, 17:59
Сообщения: 3769
Откуда: Россия


1.png
1.png [ 66.59 КБ | Просмотров: 12121 ]


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 220 ]  На страницу Пред.  1 ... 18, 19, 20, 21, 22

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB