В передатчике вкл контроль четности и в приемнике,на осциллографе при передаче виден 9 бит контроля четности,но приемник видит постоянно PE=0 вне зависимости от передачи чисел 0x31 или 0x30,что не так? байт передан,9 бит передан ,я так понял что приемник нужно настроить на 9 бит ?,как я это и сделал ,токо PE=0 всегда
Обьясните пожалуйста я к примеру установлю проверку на четность EVEN тоесть четное,тоесть к примеру если я буду передавать приемнику число 0b00000111 то флаг PE должен поставиться в 1 так как число не четное ,так ведь ?,почему этого не происходит((
Что мешает всё настроить одинаково? Скорость, битаж (8), стоп биты 1...2, остальное там чего... P. s. пропустил мимо глаз, что протеус - ну тогда ни чему не удивлюсь.
да пробовал одинаково,все равно PE=0,пытаюсь также флаг FE посмотреть когда срабатывает,тоже фигня какая то((,если долго тяну 0 стоп бит то все виснет,если не очень долго то все равно нету FE хоть убей,пробовал atmega16 все также,скачивал разные версии протеуса без разницы,ребят может кто поможет,работают ли эти флаги в протеусе?
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
СПС,я уже разобраля флаги FE,PE действительно не работают в протеусе,решил посмотреть в окно ошибок proteus,там ошибки есть,а флаги не выставляются. для atmega8 Есть две проверки на четность задаются регистрами UPM EVEN-проверяем на четность ODD-проверяем на нечетность
В передатчике как и в приемнике должно быть включено все одинаково,9 битную передачу отдельным регистром тут можно не включать,достаточно 8 битной ,я сначала в этом запутался. (можно конечно и отдельно без флагов проверять бит четности,для этого нужно включить 9 битную передачу в приемнике с помощью регистров, а в передатчике задействовать регистры UPM,в приемнике смотреть 9 бит RX8,а дальше арифметически проверять принятые байты считая для них четное или нечетное число и сравнивать с 9 битом,но проще я думаю с флагами ).
Флаг PE проверяется так:
Сравнивается 9 бит передатчика тоесть как раз бит четности или нечетности с принятым байтом передатчика - PE выставляет приемник ,который вычисляет бит четности или не четности этого байта. поэтому важно все настроить одинаково как у передатчика так и у приемника.
например выберем режим EVEN шлем число 0b00000011 соответственно бит четности равен 1, так как в числе две единицы, говорим да тоесть 1,если число 0b00000111 то бит четности равен 0,так как число нечетное то нет, это 0. аналогично все и для ODD токо эта уже проверка на нечетность.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Однако базовый алгоритм относительно АВРок (не имеющих команд сложения с непосредственными данными) при многобайтовом сложении с непосредственными данными (диапазон 1-127) потребует применения команд subi/sbci приемник, (-константа) Иногда достаточно
Это общая схема - без ограничения по разрядности и без использования парных регистров в примитивных целях. Их и так не очень много "в свободном виде" - только индекс-указатели Z,X и Y да еще R24:R25. Занимать их в программе просто под считалку тактов весьма нерационально.
Кстати... для потактового счета лучше свободный аппаратный счетчик настроить.
Когда речь идёт об одном регистре то без проблем, а когда надо больше 255 считать тут уже возникают проблемы... INC(DEC) не выставляет флаг переноса(заёма) при переполнении!!! Вот такой вот нежданчик...
Дословно да - не получится ибо на отработку приращения уйдет несколько МАШИННЫХ ТАКТОВ (а не один - на - приращение), а вот для подсчета каких - либо событий вполне сгодится.
Нужно в ассемблере на Attiny 2313 сделать 16-ти разрядный счётчик (+1 в каждом такте)
для +1 вполне подойдет команда adiw. но она тратит 2 цикла. и не правильно говорить про такт. это машинный ЦИКЛ. а уже цикл состоит из тактов. но в AVR мы тактов не видим, они от нас скрыты.
_________________ Мудрость приходит вместе с импотенцией... Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Всем огромное спасибо за участие. Пока читал - понял что немного не точно задал вопрос. (но ответ был все таки найден). Нужен счетчик событий в течении суток с диапазоном от 3сек до 2 минут, кол-во которых будет в любом случае более 256.
_________________ Если я чего-то не знаю, это не говорит о моем невежестве, а только о том, что раньше этот вопрос лежал вне сферы моих интересов.
Т.е. максимальная ёмкость счетчика будет 86400/3=28800, что вполне укладывается в два байта. Сгенерировать суточный интервал, внутри которого считать события. Ничего сложного. Другое дело когда нужно вести лог длительности каждого события! Было дело, решал подобную задачу. Пришлось ставить FRAM FM24V10.
Помогите профану. Нужно в ассемблере на Attiny 2313 сделать 16-ти разрядный счётчик (+1 в каждом такте), но не могу разобратся с командами ADD, ADC.
Книги: Вольфганг Трамперт. AVR-RISC микроконтроллеры фирмы ATMEL. Джон Мортон. Микроконтроллеры AVR. Вводный курс. 1 - В этих книгах описаны архитектура AVR, система команд. Примеры проектов для практики. 2 - Прочитав эти книги вы сэкономите свое время и время участников. Вы экономите свое тем, что из книг получите азы и в следующий раз не будете тратить свое время на форумах, ожидая ответов на элементарные вопросы. Также вы экономите чужое время.
Сейчас этот форум просматривают: metan, Varlakotam и гости: 11
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения