Easyelectronics.ru • Просмотр темы - Непонятные моменты в работе китайского радиокомплекта

Easyelectronics.ru

Электроника для всех
Текущее время: 18 авг 2018, 07:44

Часовой пояс: UTC + 5 часов



    • JLCPCB - Прототипы 10 PCBs всего за 2$ (100*100mm, 2-layer)
    • Как мы делаем платы, смотрите на YouTube
    • Крупнейшая китайская фабрика прототипов. 300000+ заказчиков и 10000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин комплектующих.

Начать новую тему Ответить на тему  [ Сообщений: 22 ] 
Автор Сообщение
 Заголовок сообщения: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 27 май 2018, 23:05 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
Доброго времени суток. Имеется радиокомплект: радипередатчик FS1000A и радиоприемник XY-MK-5V. В сети вроде как есть под них примеры, но хочется разобратся и написать свое, чтобы лучше понять.
Начал с передачи мендра.
С ноги МК подаю меандр на ногу передатчика. С ноги приемника снимаю синал логическим анализатром.
Не понятно почему, но в принимаемом сигнале соотношение низкий/высокий лог. уровень всегда сдвинуто в пользу низкого уровня, хотя на ноге МК сотношение 50/50. Причем, если делать между импульсами паузу с высоким лог. уровнем, то это соотношение еще больше ухудшается в пользу низкого уровня. И самое интересное то, что в сумме длительность низкого + высокого лог. уровней остается правильная. То есть я делаю меандр 128/128 (всего 256 мкс), то получаю 95/160 мкс (выс/низк) - при низком лог. уровне между посылками, и 70/185 мкс (выс/низк) - при высоком лог. уровне между посылками. То есть в сумме всегда те же 256 мкс.
В найденых в интернетах примерах нигде не описана такая особенность поведения радиокомплекта, и ни в одоном примере кода я не нашел, чтобы она учитывалась. Что я делаю не так ?


Вложения:
High.jpg
High.jpg [ 13.37 Кб | Просмотров: 3190 ]
Low.jpg
Low.jpg [ 14.87 Кб | Просмотров: 3190 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 27 май 2018, 23:58 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 02 мар 2014, 18:01
Сообщения: 132
Приёмник детектирует сигнал начиная с определённого уровня, и отсекает часть сигнала ниже этого уровня. Это заваленные фронты, наверное, а на этих графиках всё красиво потому, что уже видим детектированный сигнал. Ну а частота не меняется, потому период остаётся правильным


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 00:08 
Заглядывает иногда

Зарегистрирован: 28 апр 2010, 00:17
Сообщения: 111
Откуда: picping.lg.ua
Да, так и будет. Радиоканал как правило не передает постоянную составляющую. Для таких вещей придумали кодировку Манчестер, в которой нет постоянной составляющей. И он мало чувствителен к таким искажениям сигнала. Всего то требуется добавить кодер / декодер программный или аппаратный.
Для пультов ДУ упростили и сделали широтно импульсную модуляцию , каждый бит кодируется импульсом и паузой. Для 1 / 0 ширина импульса соответственно 1/3 или 2/3 периода.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 00:34 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
Я собственно и планировал использовать манчестер. И для него мне надо уметь делать 2 одинаковых по длительности половины. И вот, я не могу сделать 2 ровных половины, "низ" всегда длиннее((


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 00:53 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Импульсы короче 200 мкс плохо проходят через тракт приемника. Для этого комплекта оптимальный тайминг 350-1000 мкс. Для импульсов 50-100 мкс приемники стоят на порядок дороже, и это, как правило, супергетеродины.

Насчет изменения длительностей импульсов после прохождения тракта - вопрос очень обширный и в двух словах не опишешь. Это связано с АЧХ аналогового тракта, имеющей завал на высоком краю диапазона. Есть простое эмпирическое правило: после прохождения тракта короткий импульс укорачивается, длинный - удлиняется. В старых дисководах применялось кодирование MFM, и в схеме всегда был корректор длины импульса в процессе записи, который немного удлинял короткие и укорачивал длинные. Можете попробовать применить это в своей системе, если вы перфекционист. Мне обычно этого не требовалось, т.к. декодер настроен на середину. Например, если используется тайминг 450/900, декодер настраивается примерно на 650.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 01:01 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
iev91 писал(а):
Импульсы короче 200 мкс плохо проходят через тракт приемника...

Спасибо за столь развернутый ответ.
Ориентировался на минимальную длинну импульсов по следующим ссылкам:
http://danyk.cz/avr_rdo_en.html
http://radiolaba.ru/microcotrollers/pod ... lleru.html


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 01:34 
Старожил

Зарегистрирован: 23 мар 2017, 14:45
Сообщения: 3323
iev91 писал(а):
В старых дисководах применялось кодирование MFM, и в схеме всегда был корректор длины импульса в процессе записи, который немного удлинял короткие и укорачивал длинные. Можете попробовать применить это в своей системе
Да, но тогда сначала надо убедиться, что эта коррекция не зависит от УРОВНЯ принимаемого сигнала, т.е. "близкий-далекий".

Вообще, не ясно еще, как влияет на всё это мощность сигнала в данном конкретном случае.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 01:47 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Перед байтом пилот передаете? Приемнику надо некоторое время для стабилизации аналоговых цепей.


Вложения:
Pilot.GIF
Pilot.GIF [ 5.36 Кб | Просмотров: 3046 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 03:17 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Вот я для вас снял осциллограммы с приемника. Красный луч - на входе компаратора, желтый - на выходе.

На первом снимке: после пакета импульсов на выходе возникает пауза, т.к. вход компаратора смещен. По мере перезаряда разделительного конденсатора сигнал приближается к уровню сравнения, и на цифровом выходе появляется шум эфира.
.
Вложение:
Fig1.GIF
Fig1.GIF [ 16.41 Кб | Просмотров: 2957 ]

Первые импульсы совсем не проходят на выход, потом постепенно появляются.
.
Вложение:
Fig2.GIF
Fig2.GIF [ 19.13 Кб | Просмотров: 2957 ]

В первые миллисекунды пакета длительности импульсов никуда не годятся.
.
Вложение:
Fig3.GIF
Fig3.GIF [ 13.29 Кб | Просмотров: 2957 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 03:19 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Прошло долгих 30 миллисекунд. Длительности неплохо подравнялись.
.
Вложение:
Fig4.GIF
Fig4.GIF [ 13.23 Кб | Просмотров: 2954 ]


Прошло 60 миллисекунд - целая вечность. Теперь можно сказать, что порог компаратора настроился на середину входного сигнала, и импульсы стали симметричными.
.
Вложение:
Fig5.GIF
Fig5.GIF [ 13.2 Кб | Просмотров: 2954 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 03:35 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Теперь о том, почему всё так плохо.

Проблема в том, что в эфире может быть сигнал или тишина. И если сигнал можно сделать любой мощности, то с тишиной сделать ничего нельзя. А уровень компаратора в приемнике желательно настроить на половину уровня сигнала, чтобы он мог четко различать сигнал и тишину. Но приемник не знает заранее уровень сигнала, который придет, - мы можем стоять с брелком рядом, а можем уйти на 50 метров, - поэтому он вынужден подстраивать этот уровень на ходу. Но с этим возникает интересный вопрос - а сколько времени есть у приемника на подстройку? Если он будет перестраиваться быстро, то может потерять сигнал большой длительности. Если медленно, то пройдет много времени на перестройку, и приемник будет тупить. Приходится выбирать компромисс. По графику на Фиг.1 видно, что постоянная времени составляет примерно 0.3с, что позволяет ему прийти в готовность через 40-50 мс после начала пакета, а длительность паузы между пакетами может быть 100мс. Ведь приемник еще должен знать, чья это пауза - от нашего Станиславского передатчика или сама по себе тишина в эфире :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 03:52 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
И еще можно применить один фокус, чтобы ускорить адаптацию приемника. В начале пакета передается длинный импульс несущей 3-4мс, затем передается пилот из 6-10 коротких импульсов, и дальше синхроимпульс и код. Каждая миллисекунда несущей эквивалентна по энергии двум миллисекундам кода, что дает возможность сократить вдвое время готовности.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 28 май 2018, 10:47 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
iev91 писал(а):

Спасибо за кучу информации, теперь осталось все это переварить.
"Пилот" (преамбулу) собраюсь передавать. Планировал сделать ее в виде меандра, но с периодом уровня чуть больше чем, может втретится в коде данных (например если манчестер у меня будет по 500 мкс на уровень/1мс на байт, то ее делать как меандр по 1,5 мс каждого уровня). Таким образом планировал реализовать синхронизацию по началу передачи - даже если приемник включится в середине передачи данных, он не найдет прембулу с сигналами нужной длинны и просто пропустит этот фрейм.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 03 июн 2018, 19:16 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
iev91 писал(а):

Спасибо, передача и прием байта осуществлены успешно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 03 июн 2018, 20:35 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Мои поздравления. Хотя вам не мешало бы вкратце рассказать, как реализовали, какой тайминг, длительность пилота, какая дальность достигнута.

Очередной совет. Если вы не привязаны к какому-либо готовому стандарту пакета, то лучше будет передавать контрольный байт, чтобы повысить достоверность передачи. В идеале 8-битный CRC, а можно просто сложить все байты, кроме последнего, по XOR, а на приемном конце тоже сложить все, должно получиться 0, но это не так надежно. Мой опыт показывает, что без контроля велика вероятность принять чужой пакет или даже шум эфира. Строгий контроль длительностей приводит к уменьшению дальнобойности, поэтому я применял не слишком строгий. Длительность импульса могла гулять где-то на 30-35% без потерь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 04 июн 2018, 00:31 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
iev91 писал(а):
Мои поздравления. Хотя вам не мешало бы вкратце рассказать, как реализовали, какой тайминг, длительность пилота, какая дальность достигнута.

Очередной совет. Если вы не привязаны к какому-либо готовому стандарту пакета, то лучше будет передавать контрольный байт, чтобы повысить достоверность передачи. В идеале 8-битный CRC, а можно просто сложить все байты, кроме последнего, по XOR, а на приемном конце тоже сложить все, должно получиться 0, но это не так надежно. Мой опыт показывает, что без контроля велика вероятность принять чужой пакет или даже шум эфира. Строгий контроль длительностей приводит к уменьшению дальнобойности, поэтому я применял не слишком строгий. Длительность импульса могла гулять где-то на 30-35% без потерь.


Вы своим советом про достоверность у меня вопрос прямо с языка сняли)) Думал уже задавать его в детских вопросах, потому что прямо к этому комплекту он не относится, и носит скорее концептуальный характер. Но раз уже затронули эту тему здесь, то и продолжать буду тоже здесь.

Итак. Посылку ПОКА организовал простую, однобайтную, без какого-либо контроля.
Сперва идет длинный импульс 3 мс, потом прембула - 8 коротких импульсов, все как вы посоветовали.
Потом я делаю паузу длительностью 1,4 мс, и импульс такой же длительности, затем идет мой байт данных. Потом идет пауза в 100мс и передача циклически повторяется. Это алгоритм передатчика.
Теперь приемник.
Я использую MCS-51, программирую на ассемблере. У MCS-51 есть прерывание только по спаду/низкому уровню, я ловлю им спад, и засекаю таймер (частота 12 МГц). Старший байт таймера должен насчитать ровно 05h. Это значит что пауза находиться в границах 1280-1535 мкс (1,4 мс как раз посредине этого диапазона). Затем я ловлю импульс с примерно такой же длительностью, и если он тоже вписался в эти границы, я считаю что начался прием байта и задаю задержку в четверть бита, и в прерывании таймера считываю первый байт, и потом все следующие, с периодом 1 бит (ровно 1 мс). То есть контроля длительности сигналов в процесе собственно приема байта я пока не делал (чуть позже обясню почему). По завершению передачи устанавливаю флаг, который анализирую в основном цикле, и вывожу принятый байт на линейку светодиодов.
Длительность спец-паузы и спец испульса в 1,4 мс позволяет четко синхронизираться (такая длинна больше нигде в посылке не встречается). Я решил синхронизироватся как можно ближе к самому приему байта, а не по начальному импульсу в 3 мс, чтобы меньше играла роль погрешность таймера (контролировать длинны всех импульсов преамулы я ленюсь, она ведь нужна для "разогрева" приемника, так что я решил все, что идет ДО паузы 1,4 мс никак не анализировать).
Пока передатчик включен, приемник стабильно правильно отображает принятый байт.
Но если выключить передатчик, то действительно, через некоторое время (от пары сек до пары минут) после успешного приема байта приемник принимает ложный сигнал и выводит его на светодиоды.
Я почитал по приведенных мной выше ссылках как люди борются с такими явлениями и выделил следующие:
1. Повторная передача того же байта (и прием соответсвенно, есть 2(3,4,5,Х) одинаковых байт подряд - посылка наша).
2. Бит четности.
3. Инверсная передача байта в том же пакете.
4. Контроль каждого принимаемого бита на соответсвие допустимой длинне ипульса (и на соответствие манчестеру вообще).
5. Озвученная вами CRC-8.

Пока я реализовал лишь самый просто вариант, просто считаю посилку верной, если текущий принятый байт такой же, как и предыдущий принятый. Это отсекло значительную часть ложных приемов, но остались ложные приемы посылок типа 0h и 0FFh (я надеюсь понятно почему).
Сейчас я раздумиях, как действовать далее. CRC-8 видится мне действительно самым мощным вариантом, потому что я не хочу анализировать длительность каждого импульса, я хочу лишь словить стартовую последовательность, и пойти считывать поток бит/байт по таймеру (надо будет только по идее добавить какой-то синхроимпульс спец. длинны между байтами, чтобы по нему синхронизироватся, а то за пару байт можно и убежать сильно).
Но если пакеты буду короткими, 2-3 байта (планирую и такое приминение этих модулей), то заморочка с CRC вроде как не имеет смысла, легче реализовать еще что-то из первых пунктов списка.
Короче кто что может еще сказать, буду рад выслушать. Может моя концепция принимать по прерываниям таймера говно-говном, не стесняйтесь, критикуйте, я хочу сделать лучше, дайте мне аргументы.

Вам, iev91, огромное спасибо за помощь.
Дальность пока особо не тестил, метров 10 через 1 стенку ловит так же как и рядом.


Вложения:
Новый точечный рисунок.jpg
Новый точечный рисунок.jpg [ 15.14 Кб | Просмотров: 1782 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 04 июн 2018, 06:08 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Понятно. Ничего, у меня тоже не все сразу получалось :)

Принимать только один фронт - не есть гуд. Сменится приемник - перестанет декодироваться, т.к. никто не обещал, что несущая будет давать высокий уровень, а пауза низкий, а не наоборот. Когда-то я тоже делал на 51 камне, но я тогда сразу добавил схему выделения фронта, чтобы ходить в прерывание по каждому фронту. Для AVR этого не требуется, там есть такой уже готовый режим прерывания.

Вообще, этот маленький кусочек кода, который обрабатывает прерывание приемника, получается самый ответственный и заморочный. У меня на него уходит половина времени написания программы. В принципе, в любой системе кодирования получаются импульсы длительностью Т и 2Т, и задача приемника - различить их. Сложности начинаются дальше, при сворачивании битов в байт, особенно с Манчестером. Декодирование частотной манипуляции получается проще в реализации. Это система кодирования при записи на магнитофон, которая применялась в "Спектруме". И в ней есть побитный контроль.

Есть еще китайская кодировка, которая широко применяется во всех брелках, которая сейчас есть на рынке. Построена на чипах типа PT2240, PT2260, EV1527. Так вот, этот сигнал на больших расстояниях у меня давал искажения битов, а проконтролировать это невозможно. Единственный критерий - короткий и длинный импульс должны оба присутствовать в бите, а сумма должна быть более-менее стабильной. Но если помеха вклинивается в середину бита, то короткий импульс удлиняется на длительность помехи, а длинный укорачивается на столько же, и бит остается похожий на правильный. Т.е., сама система не защищена от помех, и в ней принципиально отсутствуют средства контроля. Можно было бы забить на нее, но, к сожалению, она разошлась на рынке на 95% и приходится иногда писать под нее.

5 тиков таймера на 1200 мкс - это очень мало. Вы не сможете различить 200 и 300 мкс, а импульс после прохождения эфира может изменить длительность на 100 мкс, и его надо принять. Я обычно выбираю тайминг так, чтобы на самый длинный импульс приходилось примерно число 100-150 в однобайтном таймере. Получается полуторный запас сверху и достаточная детализация внизу. Дискриминатор длительностей работает с числами где-то от 10 до 60. Увеличивайте тактовую частоту. Или переходите на АВР :)

Ps. Сейчас перечитал еще раз ваше творчество. Проблема, что у меня в голове уже реализованные алгоритмы, и я сравниваю с ними, а у вас может быть свой подход, не хотелось бы давить дитя в зародыше :)

Цитата:
считывать поток бит/байт по таймеру (надо будет только по идее добавить какой-то синхроимпульс спец. длинны между байтами, чтобы по нему синхронизироватся, а то за пару байт можно и убежать сильно).

Об этом можно сразу забыть, если передатчик не кварцованный. Ни разу не видел кварцованных брелков. Наоборот, длительность импульсов может меняться от температуры-влажности и напряжения батарейки, и на это надо делать существенные запасы.
Реальность заставляет разбираться в каждом бите. Если протокол допускает моментальный контроль, то надо сразу его производить. Однажды я делал полу-частотный протокол по системе: 1 = один длинный импульс, 0 = два коротких импульса. Преимущества в стабильной скорости передачи, а недостаток - что можно проконтролировать только правильность 0, а 1 идет без контроля, и в принципе, от помехи может раздробиться на несколько коротких импульсов.


Последний раз редактировалось iev91 04 июн 2018, 11:09, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 04 июн 2018, 11:02 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
iev91 писал(а):
... сразу добавил схему выделения фронта, чтобы ходить в прерывание по каждому фронту...

То есть речь уже про схемотехнику. Ну в таком случае действительно, легче взять АВР с настраиваемым прерыванием по переднему/заднему фронту, или ПИК, с прерыванием по изминению уровня.

iev91 писал(а):
... 5 тиков таймера на 1200 мкс - это очень мало. Вы не сможете различить 200 и 300 мкс, а импульс после прохождения эфира может изменить длительность на 100 мкс, и его надо принять...

5 тиков СТАРШЕГО байта таймера, это диапазон от 1280 до 1535, то есть 1407 мкс +-127 в каждую сторону я приму как допустимый синхроимпуьс/синхропаузу. А 200 и 300 мкс я пока даже не пытаюсь различать.
Но в общем, по описанной с китайскими радиокомплектами ситуацией, я понял, что в идеале надо контроллировать КАЖДЫЙ БИТ, а потом еще делать СRC.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 04 июн 2018, 11:20 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Если таймер 16-битный, то можно откидывать 3-4 младших бита и использовать следующие 8 бит, тогда можно любую длительность загнать в один байт.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 04 июн 2018, 11:30 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
А как такое провернуть ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 04 июн 2018, 12:01 
Старожил
Аватара пользователя

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 2981
Откуда: Тольятти
Сдвигами, маскировкой и объединением. Я уже давно не писал под 51, позабыл команды.

Как-то так

MOV B, TL0
MOV A, TH0
MOV R2, #8
rep:
XCH A, B
RLC A
DJNZ R2, rep

B = результат


Вложения:
16bit_8bit.GIF
16bit_8bit.GIF [ 1.14 Кб | Просмотров: 1480 ]


Последний раз редактировалось iev91 04 июн 2018, 12:50, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятные моменты в работе китайского радиокомплекта
СообщениеДобавлено: 04 июн 2018, 12:39 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2014, 13:25
Сообщения: 297
Откуда: Earth
iev91 писал(а):
Сдвигами, маскировкой и объединением. Я уже давно не писал под 51, позабыл команды.
.

Спасибо, мне команды и не нужны, приведенной картинки вполне достаточно. Мне всегда главное принцып понять, с написанием понятного мне алгоритма я пока всегда справлялся))


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ] 

Часовой пояс: UTC + 5 часов


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

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


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB