Роман, откуда Вы только время берете писать такие длинные ответы. Ваши последователи должны Вам памятник при жизни поставить за подробную и оперативную тех-поддержку. Не сердитесь, но я продолжаю улыбаться (именно улыбаться, как Вы отметили):
roman.com писал(а):
.... про это в даташите тоже написано .... Только я не всему доверяю что написано ....
Правильно, Атмелу нельзя верить не в чем. А серьезно, я во многом согласен с botchin-ом. В частности, во фрагменте
Код:
if (d>v) { //вероятность 50% m[x]=1; }; if (d<v) { //вероятность 50% m[x]=0; };
если d=v, то значение m[x] для данного х будет взято с предыдущей проверки. Это ничего? Кстати, почему вместо
Код:
if (PINB.0==1) { d++; };
на написать просто
Код:
d += PINB.0; //(или что-то типа d += PINB & 1, не помню какой тип у PINB.0 в AVR)
Также я разделяю его опасения по поводу нагрева модели на солнце и ухода частоты генератора. Степень прогрева трудно контролировать, т.к. она зависит от конструктивного исполнения модели и даже окраски корпуса (светлые места прогреваются меньше, чем тёмные) и географической широты места. В условиях солнечной Болгарии botchin знает о чём пишет. Нужен тест или какие-то аргументы с цифрами. Может Вы их проводили ранее, я не помню.
Понимаю, что сейчас уже некоторые повторили Ваши разработки, но на будущее - выбор типа МК не оптимальный. Именно, у Вас он постоянно занят ожиданием синхроимпульса или приёмом битов в логике 127/255. В "нормальных" МК это можно целиком переложить на аппаратные блоки. В частности, АЦП у MSP430 может сам произвести усреднение по, например, 256 выборкам без участия процессора, я уже не говорю про МК с DMA. На таких процессорах Вы легко добавите и другой функционал пока аппаратные модули будут заняты собиранием битов. Надеюсь, в скором будующем Вы пересмотрите свою позицию делать устройства из подручного хлама и начнете использовать специализированные микросхемы приёмо-передатчиков, драйверов моторов, и пр., где Ваши алгоритмы обработки данных реализованы аппаратно.
Почему я должен сердиться? )) Добрый человек.. сидит и улыбается.. поднимая всем настроение )) На прогмаммиста я не учился... Поэтому мне не стыдно если я чего-то не знаю... я только начал изучать МК...
1) Согласен. Выбор типа МК не оптимальный. Я звял самый простой... который не так жалко если сгорит... в ходе разных экспериментов... кораблики.. машинки.. это всё эксперименты - устройства из подручного хлама)) Если бы я на этом заработывал деньги... то тогда другое дело - я бы использовал специализированные микросхемы... А пока что просто учимся.
2) Почему вместо if (PINB.0==1) { d++; }; ..... не написать просто d += PINB.0; ? Я код программы пишу для себя. Просто мне так удобней читать. if (PINB.0==1) { // если... d++; // то... }; программа в тестовом режиме... постоянно что-то меняем...
На Си можно писать и так - if(!(PINC & (1 << n))) ... и по всякому... и как угодно))) И вообще все "в одну строчку" ))) А потом сидеть и вспоминать... что бы это значило? Что я этим хотел сказать... когда это писал)))
Ser60 писал(а):
если d=v, то значение m[x] для данного х будет взято с предыдущей проверки. Это ничего?...
if (d>v) { //вероятность 50% m[x]=1; }; if (d<v) { //вероятность 50% m[x]=0; }; Это нормально. У нас вероятность определения имульсов 50%... Т.е. 50/50. Если при подсчёте количество выборок, + и - у нас оказывается равным... то МК не может определить что это "1" или "0" ... В этом случае нам без разницы что записывать в массив "1" или "0"... Потому что, чтобы мы не записали в массив... мы в любом случае получаем 50/50 от того что передаёт передатчик... Поэтому мы просто оставляем предыдущее значение... Предыдущее значение у нас может быть "1" или "0" ... тоже с вероятностью 50/50... Поэтому ничего страшного не дубет )))
неопределенность + неопределенность = неопределенность Вот такая высшая математика ...
Вот если бы мы определяли импульсы например с вероятностью 40/60 или любой дугой, отличной от 50/50 (или как в UART 2 из 3), то тогда мы могли бы о чёмто говорить... т.е. тогда надо писать: if (d>v) { //вероятность "1" 60% m[x]=1; }; else { //вероятность "1" 60% m[x]=0; };
Почему выбрано именно 50/50 ? Потому что так мы получаем максимальную дальность связи... Вообщем примерно так.
Ser60 писал(а):
по поводу нагрева модели на солнце и ухода частоты генератора... Нужен тест или какие-то аргументы с цифрами...
Пойду посмотрю... если МК уже готов, то достану его из микроволновки )))
Да, насчет 50/50 все логично. А насчет температурного теста, может Вы имели в виду духовку? Как бы МК не начал в микроволновке ласты заворачивать. В некоторых радиомодулях предусмотрена программная подстройка нагрузочных конденсаторов у кварцевого кристалла для компенсации температурного ухода его частоты. Может и Вашу схему стоит дополнить датчиком температуры (?)
Если етому фрагменту программъ дадим идеалнъй меандр с Кзап = 0,5 и старт с 0 (0в) то на въходе получим 48 0 (сорок восемь нулей) m[0..47] = {0..0} Если етому фрагменту программъ дадим идеалнъй меандр с Кзап = 0,5 и старт с 1 (5в) то на въходе получим 48 0 (сорок восемь нулей) m[0..47] = {0..0}
оба варианта с одинаковъми начальнъми условиями m[0..47] = {0..0}. Если m[0..47] = {1...1} то и в обеих случаях резултат будет тот же.
if (d>v) { //вероятность 49.801% m[x]=1; }; if (d<v) { //вероятность 49.801% m[x]=0; };
Не должен бъть вариант в котором МК не смог бъ взять решение. Я так думаю. Вам виднее.
PS. Еще надо спомнить, что по определению у кода манчестера (стандартного) Кзап = 0,5. Т.е. у нас (в идеале) всегда будеть тот случай - половина въборки равна 1, вторая половина 0. А код-то работает. А декодер не работает. Тогда что будем делать?
_________________ Лом - ето город в Болгарии, а не инструмент юстировки електроники.
Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.
Добрый день или вечер. И снова кораблик. Не куда я не пропал, занимался тех. творчеством сверлил и точил. Проект «кораблик» продолжается. Продвинулся пока не сильно. Пульт управления почти готов осталось настроить антенну и все. Выходной транзистор поставил КТ904 и разогнал до 300 милиА на нагрузке 50 оМ. Светодиоды переключения режимов в монтировал в кнопки их переключения, сами кнопки с селектора каналов телевизоров. Добавил переключатель выбора аккумуляторов 1 – 2, в коробку в лазит два комплекта. Передатчик конечно получился мощный, но у нас есть два варианта 1)- небольшой мощности передатчик и чувствительный приемник, 2)- мощный передатчик и тупой приемник. Второй вариант выйдет наверное скорее, но будем еще работать над приемниками. Вопросов пока нет, все понятно, а в манчестерных кодах я и с пол литрой не разберусь потому и не лезу. Вопросы будут задам обязательно. Пару фоток что на ваял за это время. Правда все получилось не очень красиво как задумывалось, но для сельской местности пойдет.
насчет температурного теста, может Вы имели в виду духовку...
Вам нужно срочно работать над развитием чувства юмора Шучу ))
Нет... я имел ввиду холодильник)) Тест на низкие температуры...
В микроволновку мы будет засовывать наш кораблик... когда будем делать кораблик радиоэлектронной разведки... с постановщиком активных помех...))) Мы будем проводить тест на выносливость МК... будем считать плотности потока СВЧ энергии... Вт/м2 ))) А если наш кораблик будет плавать рядом с АЭС... то проведём ещё и тест на радиацию...
Но это будет потом... А пока ограничимся простыми тестами. ))
Ser60 писал(а):
Может и Вашу схему стоит дополнить датчиком температуры (?)
Я не успеваю делать столько тестов)) Это мне надо работать в лаборатории НИИ... сутками)))
Об этом уже подумал... всмысле пока ещё думаю)). Есть много разных вариантов... Если поставить кварц, то компенсировать не обязательно. Делать температурную компенсацию нужно если у нас RC-генератор.
Это всё потому что вы не читаете мои сообщения до конца...
botchin писал(а):
Не должен бъть вариант в котором МК не смог бъ взять решение. Я так думаю. Вам виднее.
Ну это по желанию...
Вы не задумались почему в программе я не задал постоянное значение выборки, а взял две переменные с и v, где с- выборка, v-вероятность. А потому что у нас праграмма работает с различной скорость приёма пакетов и переменной вероятностью определения кода... во загнул ... ))
с-принимает различные значения... в зависимости от скорости приёма пакетов...
for (a=0;a<c;a++) { if (PINB.0==1) { // ФНЧ d=d+1; }; }; if (d>v) { //вероятность 50% m[x]=1; }; if (d<v) { //вероятность 50% m[x]=0; }; ..................
А если вместо с=252; v=126; у нас будет с=253; v=126; ... что тогда будем делать? )) 253/2=126,5 ... Это "1" или "0" ? )))
botchin писал(а):
Еще надо спомнить, что по определению у кода манчестера (стандартного) Кзап = 0,5. Т.е. у нас (в идеале) всегда будеть тот случай - половина въборки равна 1, вторая половина 0. А код-то работает. А декодер не работает. Тогда что будем делать?
Давайте вспомним. В идаеле у манчестера Кзап = 0,5. Поэтому если мы будем делать выборку на всю длительность импульса манчестера... то всегда будеть тот случай - половина въборки равна 1, вторая половина 0.
Но к счастью у нас программа работает совершенно иначе. Мы "разбиваем" мпульс манчестера на два равных импульса... и проверяем каждый импульс отдельно... а потом эти два импульса "склеиваем" )))
импульс манчестера - это 1и0 или 0и1 ... Поэтому мы сначала проверяем первую половину импульса манчестера 1- или 0- А затем проверяем вторую половину импульса манчестера -1 или -0... Затем эти импульсы "склеиваем" и получаем на выходе полный импульс манчестера1и0 или 0и1 ...
Об этом я писал на второй странице этого форума... Но вы мои сообщения не читаете... )))
я не задал постоянное значение выборки, а взял две переменные с и v
То что въ не задали константу не означает что компилятор поступил так же. Въ нигде в программе не меняете величину с. Скорее всего компилятор принял ето как регистровую величину (участвует в циклах) и толко потому (регистровую) оптимизатор не задал ей определение const char c; и везде поставил на ее место 252. Так, что у вас с в одной программе всегда одной стойности
roman.com писал(а):
Мы "разбиваем" мпульс манчестера на два равных импульса... и проверяем каждый импульс отдельно
Где точнее? Укажите в горном фрагменте! Въ просто пока на пине 1 увеличиваете d (ето для вас первъй импулс),второй я не вижу где обрабатъваете. Но вот- вопрос. Что будет если при а>126 появится 1 на PINB.0 (помеха)?
Про филтрах и спектральном анализа уже писал.
roman.com писал(а):
В идаеле у манчестера Кзап = 0,5
Опять повторю: Если в первой половине у вас 126 въборок, у второй 126 въборок, но с первой въ берете толко 125 то у вас получается потеря информации. И ето будет работать (терять информацию) в идеалном случае при Кзап=0,5. Ви идеалнъй согнал просто въбросите. У вас вероятност не 50%, а другая. Я писал.
И последнее компютр, МК и вся ета стая делает не то что хотите, а то что въ ей сказали.
Устал уже!!!!!!
_________________ Лом - ето город в Болгарии, а не инструмент юстировки електроники.
Сейчас переменная с задаётся при настройке схемы... В самой программе мы переменную с не меняем! Это пока не меняем! Но мы можем её менять как захотим! Например припаяли резистор на АЦП... и меняем значение переменной с.
botchin писал(а):
Если в первой половине у вас 126 въборок, у второй 126 въборок, но с первой въ берете толко 125 то у вас получается потеря информации. И ето будет работать (терять информацию) в идеалном случае при Кзап=0,5. Ви идеалнъй согнал просто въбросите. У вас вероятност не 50%, а другая...
Вот с этого момента прочитайте пожалуйста внимательно... иначе вы так и не поймёте как работает моя схема:
Я с вами согласен! Если первая половина 126 выборок, и вторая половина 126 выборок... то получается потеря информации. Поэтому я делаю по другому! m[0]={}; и m[1]={}; - это один бит!
botchin писал(а):
Въ просто пока на пине 1 увеличиваете d (ето для вас первъй импулс),второй я не вижу где обрабатъваете. Но вот- вопрос.
Уважаемый roman.com, спасибо вам за ваши труды, но я не могу на схеме разгледеть номиналы деталей. Вы бы не могли выложить схему большего разрешения, и если можно то укажить какие используются транзисторы. Зарание спасибо
Ну хоть ктото сказал спасибо... а то одна критика Вам бы скачать любую программу sPlan. Там можно смотреть подробно... а главное самому менять схему. Какая именно схема вас интересует? У нас их уже целая пачка ))) Транзисторы мы берём из старого хлама. Какие есть, такие и ставьте. Можно подобрать их тех что есть.
MASIK писал(а):
Выходной транзистор поставил КТ904 и разогнал до 300 милиА на нагрузке 50 оМ.
12 х 0,3 / 50 % = ~ 1,5 ватт в антенне 27 мгц... На расстояние 200 метров ??? Да тут вообще приёмник не нужен Любой сверхрегенератор пойдёт... даже самый тупой.)) Только у нас ЧМ а сверхрегенератор больше любит АМ. Вообще не советую свякие свехрегенераторы... лучше даже простенький но супергетеродин с ЧМ.
MASIK писал(а):
Вопросов пока нет...
А зря! ))) Тут народ волнуется.. будет ли наш кораблик плавать при разных температурах... Поэтому я провёл пару тестов... С нашими самодельными радиомодулями проблем нет. Я свою рацию тестировал по всякому)) Со стабильностью всё нормально. А вот МК надо протестить. Для нормальной работы "кораблика", нужно чтобы МК-прёмник работал синхронно с МК-передатчиком. МК-приёмник включает запись по принятому старт биту и заканчивает запись по стоп биту... Выбег частоты не должен превышать пол импульса кода... Код - 50 импульсов. Время записи кода 90 мс. Смотрим выбег частоты тактового генератора МК ATmega8 по последнему импульсу кода: У нас ATmega8 в стандартном корпусе PDIP. Cогласно даташиту: Рабочие напряжения 4,5 - 5,5 В (ATmega8). На практике МК нормально работает 4,0 - 6,0 В (выше не проверял, МК жалко ). При напряжении 5 V выбег практически отсутствует (менее 0,1 mc): При уменьшении напряжения питания, частота встроенного RC-тактового генератора уменьшается... МК-приёмник работает с меньшей скоростью записи... не успевая записывать за передатчиком. При напряжении 4,5 V выбег составил 0,9 мс - т.е. пол импульса. (импульс 1,8 mc). Это нижний предел: При увеличении напряжения питания, частота встроенного RC-тактового генератора увеличивается... МК-приёмник работает с большей скоростью записи... опережая передатчик. При напряжении 5,8 V выбег составил 0,9 мс - т.е. пол импульса. (импульс 1,8 mc). Это верхний предел: При напряжении 4,9...5,1 V выбег не превышает 0,1 mc. Вывод: питание МК должно быть 5 V +/- 0,1 V. Тогда всё нормально. У нас в схеме стоит стабилизатор L7805C... он даёт такую стабильность. Значит всё нормально.
Температура. Температура указана примерно... на высокую точность не претендую... +/- погрешность градусника))) Но в целом получается такая картина: При +20 С выбег практически отсутствует: При понижении температуры частота тактового генератора увеличивается... МК-приёмник работает с большей скоростью записи... опережая передатчик. При -15 С выбег примерно минус 0,3 мс:
Отрицательные температуры МК переносит лучше)) Логично.)) Все полупроводниковые приборы больше боятся высоких температур.
При повышении температуры частота тактового генератора МК уменьшается... МК-приёмник работает с меньшей скоростью записи... При +40 С выбег примерно 0,5 мс: При +50 С выбег примерно 0,8 мс... подходим к максимальну... : При +60 С выбег примерно 1,1 мс... выбег превысил максимальный... видно что код не принят: При +70 С выбег примерно 1,4 мс... выбег превысил максимальный... видно что код не принят:
Вывод: МК-приёмник уверенно работает до максимум примерно 50 С...60 С. Значит сейчас кораблик может плавать и зимой и летом... -15 С ... + 50 С (примерно). Если летом оставить кораблик жариться на солнце... )) то кораблик перестанет слушаться команд. Примерно так.
botchin писал(а):
И еще: Но ето проверте!!!! Расчитал сколко инструкции (машиннъх тактах) будет разница при изменение температуру МК на 20град. Получилось свъше 300. Т.е. ваш код должен допускат изменение на целъх 1,2мС (милиСекунд).
Вы ошиблись в расчётах... более чем в два раза! Изменение на целъх 1,2мС - это более 40 С... Вот и верь после этого всяким даташитам)))
И ещё. Выбег частоты возможен только если температура МК-приёмника и МК-передатчика отличаются. Поэтому проведём ещё один тест. Ставим рядом Мк-приёмник и МК-передатчик и начинаем их нагревать одновременно: При +20 С и +20 С выбег практически отсутствует (не превышает 0,1 mc): +30 С и +30 С +50 С и +50 С +60 С и +60 С
Во всём диапазоне температур - 15... +60 выбег практически отсутствует (не превышает 0,1 mc). Т.е. уход частоты тактовых генераторов двух МК... компенсируют друг друга. Вывод: Если температура МК-передатчика и МК-приёмника равны... то никаких проблем с радиоуправлением нет. Не забывайте, то если мы плаваем летом, то кроме кораблика нагревается ещё и пульт.
Но вообще конечно это слабый аргумент))) Поэтому надо подумать над термостабилизацией схемы.
Пускай народ не волнуется плавать он не будет, он будет ходить по глади озер и ставков. Корпус нагреваться до +60 думаю не будет. 300 милиА это максимально, но это не означает что мы будем использовать столько. В расчетах входных контуров приемника кажется ошибка у меня. Надо будет сесть как то пересчитать. С этим справлюсь. Программу можно крутить как угодно главное ноги мк не менять, а то придется все переделывать, как ни как уже все в железе. Проверку на совпадение буду делать как и прошлый раз мк с мк соеденю и посмотрим совпадает или нет, ради эксперимента можем паяльничком контролеры погреть, и посмотреть. Работа пока стала праздник надвигается, после праздника продолжим.
Проек "кораблик" ещё не закончен... Будем решать проблемы по мере поступления)) Теперь мы знаем как работают наши МК... и где у нас слабое место в схеме...
MASIK писал(а):
300 милиА это максимально, но это не означает что мы будем использовать столько...
1) Я смотрю вы указали на пульте переключатель мощности передатчика 75% и 100% ... это неправильно. Т.к. при изменении мощности на 25% дальность меняется мало... Правильно делать как в профессиональных радиостанциях: Т.е. дальность пропорционально квадрату мощности... Это в теори... На самом деле ещё больше...
MASIK писал(а):
В расчетах входных контуров приемника кажется ошибка у меня...
2) Показывайте на схеме. У меня в схеме обычные контура. Там ничего считать не надо... Там всё просто - намотали, подкрутили в резонанс)) Вот и вся настройка.
MASIK писал(а):
Программу можно крутить как угодно главное ноги мк не менять, а то придется все переделывать...
3) А вот тут кажись маленькая проблемка... вы бы показали фотку своих плат. Там надо пару выводов на кнопки поменять ...
MASIK писал(а):
Проверку на совпадение буду делать как и прошлый раз мк с мк соеденю и посмотрим совпадает или нет...
4) Я думаю мы не будем пологатся на случай... щас подумаем.
А вот паяльничком контроллеры греть не надо... они этого не любят Лучше посветить на них настольной лампой... только не сильно)))
На пульте у меня нет ни одной надписи, с моим каллиграфическим почерком даже печатная машинка криво печатает да еще с орфографическими ошибками. Надписи на фото это чтоб было наглядно, а сам и так знаю. Прошлый раз проверял прошивки соединяв мк проводами через резистор все включалось, пока не доигрался. Прошивки были с фиксированными кнопками и все работало. Микро контролеры привезли но пока не прошивал. Закончу с настройкой прошью прошивками где кнопки без фиксации. Входные контура намотаны на каркасах с СМРК ф5,5 по 10витков проводом 0,56мм, при настройке сердечники выкрученные полностью и более менее выраженного резонанса нет. Это не великая проблема, настрою как положено в резонанс. Перенос кнопок на другие ноги мк не желательно, все уже запаяно и кнопки тоже впаяны в плату. Выкладываю схему по которой делал и печатку.
Входные контура намотаны на каркасах с СМРК ф5,5 по 10витков проводом 0,56мм, при настройке сердечники выкрученные полностью и более менее выраженного резонанса нет.
У них нет более менее выраженного резонанса... это два широкополосных контура. Один параллельный, второй последовательный... Я хотел перекинуть пару кнопок... мы заняли выводы АЦП, а двы других вывода болтаются без дела... На PC1 и PC0 ... можно что-нить подключить... всякие датчики... и т.д. Чёто я сразу не подумал...
это два широкополосных контура. Один параллельный, второй последовательный...
Нет там никаких последовательный контуров. Все контура там параллельные. Вот второй контур обычный параллельный. Катушка L11 и параллельно её три последовательно соединенных конденсатора.
))) Зачем вы нам нарисовали контур ПЧ - 455 кГц ??? Мы говорим о входных контурах на 27 МГц. Там два контура: параллельный и последовательный. Это у меня антенный коммутатор.
В режиме передачи открываются диоды VD3, VD4 ... получаем обычный П-контур: C17, C18, C19, C20, L5, L6. В режиме приёма диоды VD3, VD4 закрыты. Получаем П-контур: C18, C19, C20, L5, L6.... Далее идёт последовательный контур: C17, L7. Затем идёт параллельный контур: C21, L8.
Вот так вот хитро работает антенный коммутатор в моей рации.
Оба контура (последовательный контур C17, L7 и параллельный контур C21, L8) имеют полное включение. Поэтому у них маленькая добротность (Q~10 - "на глаз"). Поэтому у них нет выраженого резонанса. Настраиваются они очень просто: по максимальному показанию S-метра (индикатор уровня сигнала).
Полное включение даёт максимальную чувствительность приёмника. Избирательность у нас стоит на втором месте.
В режиме приёма П-контур оказывается немного расстоен из-за отсутствия C17. Сигнал с антенны на вход приёмника проходит с небольшим ослаблением... Но за счёт широкополосности П-контура это практически незаметно.
Такс... И снова кораблик! Я так чувствую мы уже всех тут достали со своим корабликом... скоро нас отсюда выгонят
MASIK писал(а):
Прошлый раз проверял прошивки соединяв мк проводами через резистор все включалось... все работало...
Ага... значит повезло. )) Тактовые частоты вдух МК совпали. Но такое бывает далеко не всегда...
MASIK писал(а):
а в манчестерных кодах я и с пол литрой не разберусь потому и не лезу...
Вот. А наша схема настраивается с помощью программы-исходника... Как же вы её буду настраивать...
Тогда я тут придумал такой вариант... Чтобы облегчить настройку я добавил в схему парочку подстроечных резисторов... В пульт: и кораблик:
Теперь настройка простая. Программу менять не надо. Вот какраз для такого случая у нас есть две переменные с и v. Подстроечным резистором меняем значение переменных с и v... Т.е. меняем количество выборок, а значит и время записи нашего МК-приёмника... Короче подгоняем скорость записи МК-приёмника под скорость передачи МК-передатчика... Получилась подстройка с точностью до +/- 0,2 мс.
Короче, подключаем осциллограф сначала к кораблику и подстраиваем кораблик... затем подключаем осциллограф к пульту и настраиваем пульт... крутим подстроечные резисторы, пока импульсы не совпадут... с точностью до +/- 0,2 мс. Вот и вся настройка.
MASIK писал(а):
Правда все получилось не очень красиво как задумывалось, но для сельской местности пойдет...
Для сельской местности может и пойдет... но вопрос стабильности мы так и не решили... Да и настройка мне такая тоже не нравится. Поэтому надо подумать. Есть много вариантов...
1) - ставим в схему кварц и вопрос стабильности решён)) Но это слишком просто и потому не интересно 2) - пишем сложный алгоритм выделения синхро импульсов... 3) - делаем программную АПЧ... UART с АПЧ ... такого я ещё не видел... 4) - ставим термодатчики (например терморезисторы или транзисторы... и т.д.)... они будут менять скорость записи МК и компенсировать уход частоты от температуры... Но тогда придётся тсавить такие же датчики и в передатчик... Сделать можно, но настройка будет вообще ужасная... запаришься настраивать всю эту схему...
Есть ещё целая куча разных вариантов... Но все они ещё сложнее в настройке...
5) - меняем формат пакетов. А вот тут уже интересно... В этом случае ничего в схеме не переделываем. Оставляем всё как есть. Просто подкручиваем программу... Смысл в том что выбег пропорционален длине пакета. Если передавать короткие пакеты, то выбег частоты не превысит допустимый... при любой температуре... Немного увеличится время передачи и всё.
Т.е. берём наш пакет: и делим его... например на три равных части: при этом выбег по частоте уменьшится тоже в три раза... А значит наш кораблик сможет плвать при температуре....
Если верить даташиту ATmega8: Предельно-допустимые параметры* Рабочая температура -55°C…+125°C
1) Разбил пакет на три равных части: Увеличилось время передачи... но впринципе и так пойдёт. У на скораблик для рыбалки... он плаваем медленно... Хотя если надо, то разгоним побыстрей.)))
Выбег частоты уменьшился в три раза. Теперь для настройки схемы не нужен осциллограф и подстроечные резисторы... Осциллографом можно ткнуть чтобы убедиться что всё нормально работает.
Т.к. выбег частоты тактового генератора МК уменьшился в три раза... то теперь наш кораблик плавает при любой температуре. Проверяем... + 20 С... выбег практически отсутствует (менее 0,1 mc): А теперь нагреваем наш МК-приёмник... до примерно + 80 С... выбег составил около 0,6 mc (максимально допустимый 0,9 mc): МК-приёмник нагрелся... что в руку уже не всзять))) Дальше греть не стал... провода начали вонять ... Но если продолжить график температуры... по получим максимально допустимый выбег при температуре около + 110 С...+120 С... )))
Вывод: теперь наш кораблик может плвать и зимой и летом... и даже если в озерер закипит вода + 100 C ... то наш кораблик будет себе спокойно плавать и дальше )))
2) индикатор уровня чето мне не нравится... короче нужно придумать другой алгоритм выделения шума... А пока что я просто подключил его к выводу S-метр на микросхеме К174ХА6... короче просто припаять один проводок с К174ХА6 на МК-приёмник. Потом если что... подумаем как сделать лучше.
С Вят Днем КО ВСЕМ, С Наилучшими пожеланиями. Схема собрана и с паяна извените вариации могут буть только в провишке без изменения ног (портов). Травить плату и собирать схему, НЕТ НЕ СОБИРАЮСЬ. Вариант который есть вполне Устраивает. СПАСИБО ВАМ. Просто потому что все это время. Проэкт по мере изготовления буду вылаживать до самого кораблика после покраски и отладки. Буду,,,,,, дай бог начинать еще проект кораблика можно будет заложить еще чего не будь но в данный момент мне нужно реализовать начатый.
С Вят Днем КО ВСЕМ, С Наилучшими пожеланиями. Схема собрана и с паяна извените вариации могут буть только в провишке без изменения ног (портов). Травить плату и собирать схему, НЕТ НЕ СОБИРАЮСЬ. Вариант который есть вполне Устраивает. СПАСИБО ВАМ. Просто потому что все это время. Проэкт по мере изготовления буду вылаживать до самого кораблика после покраски и отладки. Буду,,,,,, дай бог начинать еще проект кораблика можно будет заложить еще чего не будь но в данный момент мне нужно реализовать начатый.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения