РРМ кодер, эконом вариант?
Всем привет!
Вот такая есть мысля, раз все кричат про кризис, а не сделать ли тогда кодер РРМ в минималином варианте но с максимальными при этом функциональными возможностями.
Ограничения такие:
1 исходник только на АССЕМБЛЕРЕ
2 пикушник например PIC16F876А или на край PIC16F877А, смд 8К памяти
3 дисплей от сот, скажем нокиа 3310
То-есть, интерестно, на сколько можно ужаться.
Конечно можно взять и чего пожирнее напр PIC18F4550 - 32К или вообще
PIC18F6722 - 128К, но это скучно, нет азарта.
для начала, хотябы вот
Идея хорошая, согласен. Тем более для любителей самому собирать.
Да и вообще, что бы мозги не засыхали.
Но я что то тут не вижу экономности. PIC16F876 стоит не намного дешевле ATMega128, помоему разница рублей в 100. Вот и вся экономия. В остальном все теже затраты: экран тот же, обвес тот же - кнопки, тумблера и т.д.
Тем более у PIC16F876 маловато портов. Много не навешать. Например цифровые тримера, дискретные каналы, кнопки навигации по меню, входы АЦП для джойстиков, экран, и того - не хватает портов.
А куда бюджетнее фокуса ?
если хочется мозги размять то конечно да
но в итоге выигрыш + - 100р. смысл?
Всем привет!
Есественно -> токо для гимнастики УМА! Его серенького!
Что-бы влезть в ограничение ресуры, то-ко 8 кило и усё!
А стольник это и считать не нужно, иногда вечерок, другой, потраченный за зря, в пересчёте на денежку, в такие убытки может встать, что - ОГО!!!
Поэтому разговор совсем не о деньгах.
Ладно, щас подрисую тут одно *сокровище* на PIC16F877А (чтоб ног хватило), и можно поуражняться, кому захочется, конечно.
Ну я надеюсь проект будет открытый?
Код в соседней ветке - 34К. Жутко не оптимален, можно ужать довольно прилично. Но для любого проекта имеет смысл (а значит и интерес) иметь сверхзадачу- например действительно макс. бюджетно, или макс. функционально, или мин трудозатрами. Правда иметь именно свою разработку - тоже вполне достойная задача.
Писать на асме только из “вредности”, неоправданный расход времени. Если бы я свой проект OSD-телеметрия/автопилот чисто на асме делал, времени бы ушло на прядок больше. А так, там асма только ~25%, по причинам действительно необходимой оптимизации,- уложился всего за ~месяц неспешной работой по вечерам…
Все имхо…
Всем привет!
Откываю всё что успеваю оформлять, про других незнаю, тут кто как.
Что-бы влезть в ограничение ресуры, то-ко 8 кило и усё!
Ладно, щас подрисую тут одно *сокровище* на PIC16F877А (чтоб ног хватило)
Тоже страдал такой “болезнью”.
Правда, не долго. Перешел на 4620 и теперь не парюсь с размером.
По ходу дела увидиш, что математика кодера займет от силы четверть обьема, а остальное уйдет под сервис и интерфейс с пользователем. Писать интерфейс на асме - без меня.
Всем привет!
Вот произвёл маленькое ПОДрисование. Основа не моя, инд прилепил тока.
Что то ты там наворотил… Зачем там везде стабилитроны 5V1, и какие то резисторы по 240 ом?
Там можно половина элементов убрать. Смотри схему от msv на Mega 128, схему можно сделать ту же, с небольшими изменениями, связанными с заменой проца на PIC.
Например можно убрать подтягивающие резисторы с порта В, т.к. можно включить внутренние подтяшивающие резисторы 20К на +5В, они на этом проце могут устанавливаться как раз только на порте В. См. регистор OPTION_REG,
И что такое UpowTX?
И нет смысла делать выход на сентизированный передатчик. Это уже всё, прошлый век, сейчас 2,4G рулит. Тем более цены на 2,4G передатчика и приёмники, падают с каждым днём, скоро будут стоить копейки, и не будет смысла городить самодельный передатчик на 40 мгц, тем более сентизаторый, и сидеть с его настройкой - месяц.
С подключением дисплея, согласен, но хотя на схеме msv от 5В, всё пашет.
Ну и предусмотреть выход для внутрисхемного программирования, не мешало бы.
Могу привести пример, как сделать удобно.
Всем привет!
Насчёт кондёров и резисторов, то я имею немалый практический опыт, кому не нравиться, может вообще ничего не ставить в обвязке, но с глюками пусть разбирается сам.
С программированием проблем СОВСЕМ нет! Самым традиционным способом, примочка от ПОНЬКИ и icprog, плюс переключ, кнопку нажал- влил- отжал. Когда нравиться результат, кнопку меняю на джампы.
2,4 Gолубозубые не трогают совсем, чесное слово НУ …СОВСЕМ !!!
За соучастие спасибо.
Всем привет!
Ежели сильно не карячиться над мультиками, то начну с такого варианта, а дальше но остаткам памяти посмотрим, какое *многомордие 😁(интерфейс)* выйдет.
Всем привет!
Интересно, это только мой инд от нокиа 3310 с такими заморочками или они все управляемые по шине SPI такие!
Объясняю, если загружаеш озу инд и в этот момент происходит прерывание, напримет от таймера, то происходит в дальнейшем сбой правильного отображения инфы на время до след обновления дисплея, с другими дисп, где шина данных параллельная такого никогда не происходит.
Спроси у Сергея msv, он может быть поможет.
Да если бы знал, помог… По идеи синхронный протокол с отдельной синхронизирующей шиной не критичен к времени передачи бита. Но кто его(контроллер индикатора) знает, в каких пределах это время допустимо…
Всем привет!
А , буду кусками код пихать в синхро паузе, не беда.
Вот ещё малость намолотил!
Вот ещё малость намолотил!
Бегло пробежался по коду.
Очень рекомендую Вам перейти на С. И используйте аппаратные возможности Пика - модуль ССР для формирования ППМа и модуль SSP для работы по SPI.
И продумайте сразу ядро вашей системы. Я когда писал свой кодер, несколько раз менял идеологию работы ядра. Даже ОС пытался использовать.
Удачи Вам и творческого вдохновения!
Всем привет!
Ну … ВОТ! Основные функции сделал, РРМ 8 каналов - молотит на всю, параметры читаю из памяти и сохраняю - по 8 моделям, клавиатура , инверсия каналов, … и ещё много чего, а памяти программ контроллера ушло около 1,8 Килобайт ??? (правда черновая прога, можно и поджать!)
Из доступных 8 кило ! А вот наверное *многомордие*, остальное и съест, хе-хе !
Не понимаю термин *многомордие*, наверное имеется в виду “междумордие”? 😃
Да, это значительно большая часть кода. Совет - не поленитесь, составте сразу диаграмму обработки сигналов, поможет в тч. для формирования структуры меню.
Всем привет!
Вот произвёл маленькое ПОДрисование. Основа не моя, инд прилепил тока.
почему то гифчик не открывается… говорит ошибка формата 😦(
можно во что нить другое пожать ?
А так? съедобно !😃
намного лучше!! но в области клавиатуры все равно мелко очень…
но все равно спасибо, очень интересно
Картинки лучше в архив, а то форум уменьшает.
Разрешите и мне немного по обсуждать данный проект. Прежде всего спасибо автору за предмет обсужения. Я тоже решил попробывать сделать свой кодер для передатчика на PICе. Правда я не ставил целью эконом вариант поэтому выбрал для старта PIC 18F14(13)K50 он имеет USB порт. А теперь несколько слов о проекте.
- PIC16F877 уже не рекомендуют вместо него предлагают PIC16F887 и он имеет 14 входов для АЦП. Это важно. Можно использовать одну из особенностей PIC овского АЦП, а именно Vref- и Vref+. Установить Vref- равным минимальному напряжению с потенциометра ручки, а Vref+ - максимальному. Тогда можно с хода ручки ±30 градусов снять 1024 бита (или около того).
- Использовать таймера для формирования всех временных параметров сигнала PPM c точностью до 1 микросекунды (правда надо подсчитать получиться ли это на 8 разрядных таймерах) Я попробывал реализовать эти предложения на том PICе что был у меня под рукой PIC18F458 с 16МГц кварцем. Код, правда он на C, прилагаю. Повторяю, это проверочный код, но сигнал PPM он генерит очень хороший.