Самодельный передатчик (часть 2)
Если можно, пожалуйста, выложите прошивку v.1.8 под дисплей NOKIA3410. Заранее благодарен.
Вот для 3410 😒
Прошу прощения, но это чото не то или я чего-то не понял
все правильно ето на 3410
прошивай должон работать
Так где HEX файл
вот😁
Коллеги, ткните носом, где можно посмотреть методику настройки ВЧ-модуля, который в этом топике выложен. А то при внедрении кодера внутрь своего Flash-4 случайно коротнул ламели батарейного отсека на ВЧ-часть платы. Вышедшие из строя транзисторы заменил, вроде работает, но сильно греется выходной транзистор ( у меня спиральная антенна, настраивал по Глайдеру).
Пока внутрь не лазил не знал, что транзистор греется - передатчик работал отлично. Может он и раньше грелся, а может после расстройства катушек начал.
Интересует настройка предвыходного каскада и П-фильтра выходного каскада.
Из инструментов есть тестер, осциллограф. Радиолюбительский опыт большой, только с ВЧ-техникой дел до сих пор не имел.
Буду рад любой помощи.
Спасибо!
Я сейчас пытаюсь пристроить к кодеру дисплей TIC154. За основу взял исходники от MSV.
Такое ощущение, что функция displ_head из модуля displ.c работает как-то криво. Вывод строки начинается слишком близко к середине - видимо, некорректное значение возвращает функция LCD_get_char_len из модуля LCD_3320.c.
А знаний не хватает. Не понимаю, как определяется ширина символа через font_norm[ch-32][0].
Расскажите, плиз…
Я сейчас пытаюсь пристроить к кодеру дисплей TIC154. За основу взял исходники от MSV.
Такое ощущение, что функция displ_head из модуля displ.c работает как-то криво. Вывод строки начинается слишком близко к середине - видимо, некорректное значение возвращает функция LCD_get_char_len из модуля LCD_3320.c.
А знаний не хватает. Не понимаю, как определяется ширина символа через font_norm[ch-32][0].
Расскажите, плиз…
точно не помню, но в двух словах: тот шрифт что используется имеет разную ширину символов в точках. Ширина указана в 0 злементе массива шрифта. Для вычисления длинны слова в точках берем кол-во символов умноженное на соотв значение длинны каждой буквы шрифта.
Прошил проц прошивкой которая выше Coder3410(1.8).
Огромное спасибо – работает, но только все равно изображение не на весь экран.
Мелковато как-то.
Можно исправить этот недостаток???
Заранее благодарен.
Ширина указана в 0 злементе массива шрифта.
Понятно! Да, у шрифта font_norm описание символа = 9 байт, и в нем да, 0-й элемент сильно похож на ширину.
Но я включил у себя шрифт “font8x8”, а у него описание символа занимает почему-то всего 8 байт. И нулевой элемент на ширину совсем не похож.
И фиг с ним! Не больно-то оно и нужно, это центрирование…
где можно посмотреть методику настройки ВЧ-модуля
Уже отвечал, повторю свое ИМХО: слегка подстроить (выжать максимум) можно по индикатору поля или даже по макс. гулу в комп. колонках (мультипликативная помеха). Серьезно настроить/согласовать АФУ без КСВ-метра (а лучше + антеноскопа) невозможно никакими “народными” средствами. Тем более сильно укороченную антенну… Тем более с суррогатным противовесом…
2EagleB3 displ_head выводит заголовок по центру экрана. Левая координата считается как (width_screen/2)-(width_string/2). Меняйте width_screen и все должно быть ок. font8x8 -рудимент от первых версий. Для его использования необходимо менять функцию LCD_char.
2Серж ждите, может кто-нибудь поправит код для экрана с вашим разрешением. Для моей проги это непростая задачка… 😦 а для полноценного использования большего разрешения вообще полкода прийдется переписывать…
У VRV вроде бы как раз под 3410.
font8x8 -рудимент от первых версий
На большом дисплее выглядит очень приятно!
Для его использования необходимо менять функцию LCD_char
Я в ней (и вообще повсюду) поставил условную компиляцию на применяемый шрифт, а цикл не трогал. Все работает. Но я еще до меню не добрался. 😌
Уже отвечал, повторю свое ИМХО: слегка подстроить (выжать максимум) можно по индикатору поля или даже по макс. гулу в комп. колонках (мультипликативная помеха). Серьезно настроить/согласовать АФУ без КСВ-метра (а лучше + антеноскопа) невозможно никакими “народными” средствами.
Спасибо, я так и сделал. Пользовался индикатором тока антенны. Но не могу понять одну вещь - при вращении сердечников катушек можно найти такое их положение, что индикатор зашкаливает, а ток, потребляемый ВЧ-модулем достигает 2.5А. Т.е. чем больше сигнал в антенне, тем больше потребляемый ток.
Но ведь заводские модули потребляют 160-180 мА. О чем это говорит?
Когда индикатор зашкалил - значит, усилитель самовозбудился и гонит на выход одни помехи (т.е. не ту частоту).
О чем это говорит?
Возбуд тоже возможен. Но и без него индикатор тока (ненаправленный) показывает и прямую волну и отраженку, поэтому его показания не являются прямым свидетельством излучаемой мощности. Я настраивал Пи-контур на эквивалент антены (чисто активное сопротивление) по макс напряжению, а потом только удлинняющей катушкой и длиной антены добивался лучшего КСВ. Точнее компромиса, тк. КСВ очень сильно зависел и от того насколько плотно обхвачу руками и прижму к пузу пульт. Кстати еще показания в поле весьма отличаются от показаний на сухом полу, дома. Вам как мин. надо собрать простейший индикатор поля.
2 EagleB3 Тогда и в LCD_get_char_len можно условной компиляцией поставить return 8; Мда, у меня была проблема как впихнуть все необходимое в мелкий экран. А у Вас будет сложность как максимально эффективно использовать такое замечательное разрешение… 😃
Тогда и в LCD_get_char_len можно условной компиляцией поставить return 8;
То есть, шрифт 8x8 моноширинный? Не пропорциональный?
… Главное, чтобы в меню словам не тесно было.
Сейчас пытаюсь прикодить джойстик от SonyEricsson для навигации по меню.
Я настраивал Пи-контур на эквивалент антены (чисто активное сопротивление) по макс напряжению, а потом только удлинняющей катушкой и длиной антены добивался лучшего КСВ.
Подскажите пожалуйста номинал резистора в качестве эквивалента и где смотреть напряжение? Полагаю, что резистор 50 Ом, а напряжение смотреть на выходе П-фильтра?
Пробовал делать индикатора поля, но все равно никак не могу настроить.
Дело в том, что максимальные показания индикатора соответствуют почти 4А потребляемого тока! Хотя нагрев выходного транзистора на ощупь одинаков и при 150 мА и при 4А. Если П-контур влияет на согласование выходного каскада с антенной, то по каким критериям настраивать предвыходной каскад - по максимальному напряжению на коллекторе? Или вольтметр своей входной емкостью на позволить точно настроить каскад?
Спасибо!
Если данная ветка позволяет-было бы интересно ознакомится.
Значит выложим отдельной темой. Будет полезно всем. Картинок уже наделал, вечером попробую описать и выложить.
Ну пожалуй от мк и не стоит требовать возможностей АРМ и х86 архитектур- задачи у них разные. А по сему обектное програмирование реализуется в мк в урезанном виде.
Вообще-то МК и архитектура никак не связана. Есть МК с АРМ внутри. Если переформулировать более научно, то мне не нравится гарвардская архитектура применяемая в АВР, хочу архитектуру Фон Неймана.
Наверное повторюсь, но всеже- главной задачей данного проекта (иначе проще купить готовую апу) считаю возможность изменения функциональность (добавить/убрать функции) в зависимости от предпочтений пользователя.
Я тоже так считаю.
В таком случае лучше использовать АЦП в диф. режиме.
Про АЦП в диф режиме я уже писал - отстой. Подключается внутренний ОУ - а он шумит. Лучше Aref зарезать, чем использовать диф режим.
Кажется, нашел я причины фигни с ногой !PEN
И что вы нашли? Это же есть в даташите. Вот только вы понимаете смысл сказанного? Смысл следующий: если программатор не может гарантировать что SCK = 0 при подаче питания на МК, то он должен его сбросить - “отпустить” сброс на время не менее 2-х тактов - МК начнёт инициализироваться, а затем опять его ввести в состояние сброса. Так же можно вместо сброса использовать этот самый !PEN, но тогда SCK всегда должно быть равно 0 на момент подачи питания на МК.
Я бы сказал что у вас проблемы с выводом сброса - при программировании он должен быть на земле. Попробуйте перемычку на сброс вместо !PEN надеть и потом зашить.
Выложите свою версию с исходниками, и заинтересованных прибавится…
Не прибавится. Проверено - что Фокус выкладывал, что вы… Программистов тут мало. А ещё меньше тех, кому это надо. А теперь псмотрите в свой код, в код Фокуса, в код VRV - сможет в нём разобраться человек не знающий Си, но желающий его выучить, что-бы что-нибудь подправить? Сомневаюсь.
Посмотрите на мой код - что по меню, что для приёмника - форматирование везде одинаковое, откомментирована почти каждая сторока - думаете это мне надо? Я и сам могу разобраться в своём коде. Это нужно для новичков, которые ничего не умеют, но очень хотят. Иначе их желание очень быстро закончится…
Свое мнение о нецелесообразности коллективного развития столь несложножной поделки, уже неоднократно высказывал. Прийдется подстраиваться к чужим идеям, структурам, интерфейсам, стилю итп. А это требует серьезного менеджмента и займет больше времени, чем все еще раз под себя переписать.
А моё мнение как раз наоборот. Подстройка она уж не так сложна. Под интерфейсы не подстраиваться нужно - их нужно обсуждать, решать, а только потом реализовывать.
Менеджмент много бы не занял(особенно с системой контроля версий) - больше бы заняло обсуждение что и как сделать, а от этого качество только повысилось бы.
Вот когда перейдем на ARM, начнем писать операционку для него, ну и дальше интерпретатор жавы, мр3-кодер, блюпуп с тачхрином приворачивать, тогда да… в одиночку сложновато справится будет… 😃
Это ничего не изменит - если нет умения вести командно мелкий проект, то крупный не получится тем более.
у меня была проблема как впихнуть все необходимое в мелкий экран
А у меня была проблема с подсчётом длинны строки в пикселях, поэтому у меня все шрифты моноширинные. Собственно “проблема” это громко сказано, просто решил не грузить МК ещё подпрограммой вычисления длинны строки в пикселях. Хотя, возможно, как-нибудь и реализую…
Так же можно вместо сброса использовать этот самый !PEN
Это будет не совсем то же, насколько я понимаю. Если для входа в режим программирования использовать !PEN, тогда необходимо будет делать горячий перезапуск для выхода из режима программирования.
Проблема у меня была чисто железная (непропай на какой-то из ног XTAL1/XTAL2 или земли рядом с ними); с внешним кварцем камень запускался, но в каком-то чудовищно замедленном темпе - с запуском в тестовый цикл на моргание диодом то ли вообще без задержек, то ли с двумя задержками по 1uS.
😒 Сначала секунд за 35…45 происходила инициализация (обычная от CVAVR), а потом диод моргал с частотой хорошо заметной глазу - герца этак 2…4.
Понятно! Да, у шрифта font_norm описание символа = 9 байт, и в нем да, 0-й элемент сильно похож на ширину.
Но я включил у себя шрифт “font8x8”, а у него описание символа занимает почему-то всего 8 байт. И нулевой элемент на ширину совсем не похож.
И фиг с ним! Не больно-то оно и нужно, это центрирование…
k=strlenf(нечто из флеша)*8;
где к =ширина в точках
Не прибавится. Проверено - что Фокус выкладывал, что вы… Программистов тут мало. А ещё меньше тех, кому это надо. А теперь псмотрите в свой код, в код Фокуса, в код VRV - сможет в нём разобраться человек не знающий Си, но желающий его выучить, что-бы что-нибудь подправить? Сомневаюсь.
Посмотрите на мой код - что по меню, что для приёмника - форматирование везде одинаковое, откомментирована почти каждая сторока - думаете это мне надо? Я и сам могу разобраться в своём коде. Это нужно для новичков, которые ничего не умеют, но очень хотят. Иначе их желание очень быстро закончится…
Человеку, желающему выучит с не стоит пытатся это сделать на примере данного проекта- слишком много кода и особенностей(для этого есть сайт 123авр).
Скажу по себе- спустя месяц даже свой комментированный проект требует времени чтобы вспомнить что к чему.
Хотя коментарии- в определенной степени показатель культуры програмирования😁
Свой проект выкладывал для желающих и умеющих программировать, но не доконца разобравшихся в предидущих версиях:( ( особенности постами выше)
ЗЫ: а кто работал с AT90PWM3B, а еще лучше в связке с IRAMS??? есть такие?