Эмулирование Futaba 20x2 VFD M202SD01HA Lexicon PCM 80 81 90 91

синти
Пн 11 июля 2016 г., 8:02 вечера
Привет, друзья, мне нужно подражать дисплею Futaba, и мне нужно 10 цифровых линий при входе. Это параллельные данные, и мне нужно 8 данных DataLines, 1 записи и 1 сигнал заняты (сигналы поступают от старого устройства)

Я хочу использовать STM32F103C8T6 + I2C OLED 1,3 дисплей 128x64 (SSD1306 или SH1106, это безразлично)

Дисплей устарел с 90 -х годов Futaba VFD 20x2 M202SD01HA и не совместим с HD44780 протокол
и от реверберации Lexicon PCM80 (или PCM81)


Здесь документация о времени и передаче данных

Передача данных происходит с использованием параллельной передачи данных

Так что мне нужно немного предложение о библиотеки, которые я могу адаптироваться, чтобы сделать Параллельная передача данных.

Данные, поступающие из PCM80, должны быть интерпретированы и переданы в OLED

Я измерил, и пространство правильное!

Спасибо!
синти

Это текущий дисплей
Как этот Изображение

Mrburnette
Пн 11 июля 2016 г., 21:11
Привет, @synthi и добро пожаловать.

Я был бы дико удивлен, если таковой "Библиотека отображения Arduino, отображаемой в командах VFD." При этом я работал с OLED-дисплеями, и их библиотеки-прямые.

Предполагая, что Arduino является правильной платформой (я думаю, что есть лучшие решения, более позднее), тогда есть два очевидных способа отмены этого перевода: (очень упрощенная Vuew, не полностью запеченная)
- Принесите параллельный поток, декодируйте инструкции и данные....
Если данные, буферизируйте символ данных в SRAM, установите флаг, верните управление на машину состояния, который вызовет библиотеку OLED для обновления OLED -дисплея.
Если инструкция, декодируя и переведет на 1 из более из более высоких вызовов библиотеки OLED, установите флаг, верните управление на статусную машину, которая вызовет библиотеку OLED, чтобы привлечь внимание к инструкциям (и).

- Принести параллельный поток, декодировать.
Если персонаж отправит в библиотеку OLED, Loop.
Если инструкция, отправьте в OLED Library, Loop.

Оба подхода имеют силу и слабости.

ИМО, Ардуино не мой первый выбор. Я думаю, что FPGA является наиболее желательным, если в вашем дизайне есть громкость. Если ваш дизайн всего 1-офф для вашего личного использования, то, возможно, Arduino... Но тебе ждет дикая езда, ИМО.

Футаба Продает ЖК -эмулятор.

Ru левый мозг или правый мозг ... то есть вы готовы к вызову? ИМО, не начинающий проект или даже промежуточный проект.

Итак, дистилляция, если все, STM32Duino & OLED вполне может соответствовать вашей потребности. Вам нужно будет создать весь интерфейс параллельной логики как HSRDWare, так и программное обеспечение. OLED -материал довольно хорошо консервирован, но я понятия не имею, оптимизирована ли библиотека OLED, чтобы можно было использовать использование.

Если вы хотите увидеть OLED + STM32DUINO, у меня есть несколько примеров здесь: https: // www.хакерс.IO/Rayburne/Projects

Луча

синти
Вт 12 июля 2016 г. 6:34
Привет, Рэй


Спасибо за ваши предложения и эксперименты с OLED
Будет один выстрел... и да, я готов к вызову
И я перешел с Ардуино на STM только из -за недостающих портов на платформе Arduino

Пространство тоже важно: у меня есть только 99 мм х 34 мм для замены
(Protoboard + STM32F103 + OLED + кабель)

Просто идея
Dispd0 для Dispd7 должен быть подключен к PA0 к PA7
Dispbsy до PB6
Расходность в PB7
Disprxd к Gnd

Мне нужен пример от людей, которые провели параллельный опрос

Спасибо
Антонио

Ахулл
Вт 12 июля 2016 г., 7:10 утра
Синти написал:...
Мне нужен пример от людей, которые провели параллельный опрос

Спасибо
Антонио

Sheepdoll
Вторник 12 июля 2016 г., 7:38 утра
В моем GitHub проект
<https: // github.com/sheepdoll/avrvfdclock.git>

Это эмулирует стандартный 14 -контактный ЖК -дисплей на 14 -сегментный альфа -числовой VFD. Я использовал популярный протокол H44780, так что он зашел для любого ЖК -дисплея. Протокол - это в основном реестр смены.

Многие из Futaba VFD использовали этот протокол. Другие были в основном стеклянным телешипом, на котором использовались коды ASCII и последовательности выхода для размещения курсора. Я предпочитаю 14 -пин -версию.

Если я когда -нибудь обнаружил, что неуловимая вещь, называемая непрерывным временем, я работал над соединением с этим с одним из моих STM32.

Deathterrapin
Вторник 12 июля 2016 г. 16:23
Я сделал то же самое в прошлом году, чтобы починить старую коробку с эффектами гитары с этим точным дисплеем. Я прикрепил свой код. Я использовал Arduino Nano и LCD -дисплей ST7735, поэтому этот код, вероятно, не будет работать для вас, но, надеюсь, он должен указать вам в правильном направлении.

синти
Ср. 13 июля 2016 г., 21:13
Спасибо всем

Я получаю некоторый результат
Я приложил прерывание к порту PB5 при подъеме (написать HI)

прерывание есть
Если выбор низкий
Установка занята высокой
Чтение от PA0 до PA7
установить занятую низкую

Но я получаю очень странные чары от чтения данных (Invsticating)
//loop: wait for serial data, and interpret the message void loop () { if (Serial.available() > 0) { // read the incoming byte: incomingByte = Serial.read(); // wait for as status-byte, channel 1, note on or off if (incomingByte== 144){ // note on message starting starting action=1; }else if (incomingByte== 128){ // note off message starting action=0;

синти
Пт 15 июля 2016 г. 8:24 утра
Исправил некоторое время,
Теперь петля чтения это
#include #define SPEAKER_PIN PA0 class myMidi : public USBMIDI { virtual void handleNoteOff(unsigned int channel, unsigned int note, unsigned int velocity) { noTone(SPEAKER_PIN); } virtual void handleNoteOn(unsigned int channel, unsigned int note, unsigned int velocity) { tone(SPEAKER_PIN, (midiNoteFrequency_10ths[note]+5)/10); } }; myMidi midi; USBCompositeSerial CompositeSerial; void setup() { USBComposite.setProductId(0x0030); pinMode(SPEAKER_PIN, OUTPUT); midi.registerComponent(); CompositeSerial.registerComponent(); USBComposite.begin(); } void loop() { midi.poll(); }

Мадиас
Солнце 17 июля 2016 г., 21:01
Хорошо, для этого почти 500USD -устройства (текущая рыночная цена) рекомендуется исследовать немного дальше:
Некоторые парни с той же проблемой снова воплотили в жизнь лексику:
https: // www.GearSlutz.com/poard/geekslu ... обязательство.HTML

синти
Пн 18 июля 2016 г., 9:35 утра
Я снял все ICS
Ошибка дает m e4
то есть "Отображение ошибки"
В некотором смысле, устройство знает, что я не использую оригинальную футабу

Если я переопределяю блок, нажимаю и темп, реверберация начинается и работает правильно

Я получаю какой -то ложный персонаж в параллельном порту

Например, я получаю 0x30, когда ожидаю 0x20
Но на другом экране я получаю правильно 0x20 и 0x30 !

Другое:
одна из команд для футабы "Дп" (Положение Показать)
После DP всегда есть байт между 0x00 и 0x27 (40 позиций в футабе)
Но иногда я получаю неправильные позиции, как "252" или "168"
и всегда происходит на одних и тех же экранах: я подозреваю, что есть некоторые проблемы с времени
Или порт данных неправильно очищается после чтения

Спасибо
Мадиас написал:Хорошо, для этого почти 500USD -устройства (текущая рыночная цена) рекомендуется исследовать немного дальше:
Некоторые парни с той же проблемой снова воплотили в жизнь лексику:
https: // www.GearSlutz.com/poard/geekslu ... обязательство.HTML

Мадиас
Пн 18 июля 2016 г., 13:21
Хорошо, устройство живое, остальные - дополнительные функции :)
В целом это звучит как работа для:
http: // www.aliexpress.com/item/1set-new ... 33314.HTML
Помимо анализа вещей, вы можете измерить реальное время с ним, может быть, вы действительно немного отключены (но странно, что это происходит на конкретных экранах.)
Ошибка отображения: я бы сохранил как "Функция Childlock".
Если бы большинство оставшихся ошибок воспроизводится, я бы построил как можно больше исключений в коде, потому что этот код предназначен только для этого единственного устройства, а не для массовых производства.

синти
Вт 19 июля 2016 г., 9:24 утра
СДЕЛАННЫЙ!!!!!
решил проблему популярных чарсов
Я чистил порт для каждого чтения
Теперь полный обратный вызов для чтения
#include #define SPEAKER_PIN PA0 class myMidi : public USBMIDI { virtual void handleNoteOff(unsigned int channel, unsigned int note, unsigned int velocity) { noTone(SPEAKER_PIN); } virtual void handleNoteOn(unsigned int channel, unsigned int note, unsigned int velocity) { tone(SPEAKER_PIN, (midiNoteFrequency_10ths[note]+5)/10); } }; myMidi midi; USBCompositeSerial CompositeSerial; void setup() { USBComposite.setProductId(0x0030); pinMode(SPEAKER_PIN, OUTPUT); midi.registerComponent(); CompositeSerial.registerComponent(); USBComposite.begin(); } void loop() { midi.poll(); }

Rogerclark
Вт 19 июля 2016 г. 10:23 утра
Любой шанс вы можете опубликовать полный код на случай, если кому -то нужно исправить свой PCM80

синти
Вт 19 июля 2016 г., 11:38 утра
Rogerclark написал:Любой шанс вы можете опубликовать полный код на случай, если кому -то нужно исправить свой PCM80

Мадиас
Вт 19 июля 2016 г., 8:03 вечера
Поздравляем Синти!
Было бы позор, бросая такое специальное звучащее устройство из -за паршивого дисплея!
Я надеюсь, что мы никогда не увидим в будущем eBay "Продавцы" с "Lexicon PCM80/81 набор для обновления дисплея только для 250USD" Использование вашего кода (без кредитов).
Еще одно мышление: ли простой 2002LCD не вписывался бы лучше в Lex? --> http: // www.aliexpress.com/оптом?кот ... XT = LCD2002

Rogerclark
Вт 19 июля 2016 г., 21:23
Мадиас написал:Поздравляем Синти!
Было бы позор, бросая такое специальное звучащее устройство из -за паршивого дисплея!
Я надеюсь, что мы никогда не увидим в будущем eBay "Продавцы" с "Lexicon PCM80/81 набор для обновления дисплея только для 250USD" Использование вашего кода (без кредитов).
Еще одно мышление: ли простой 2002LCD не вписывался бы лучше в Lex? --> http: // www.aliexpress.com/оптом?кот ... XT = LCD2002

синти
Вт 19 июля 2016 г., 22:33
Я начал покупать STM32F103 (2 доллара США.50 !!!) потому что мне пришлось купить адаптированный дисплей для €180 + доставка

Итак, я решил, давайте чему -то узнаем... : D

прикрепил небольшое видео, где я использую i2c 0.96 Bicolor OLED (128 x 64) (4 доллара США.23 !!)
Я провел 2 различных эксперимента по размеру текста (но дисплей все еще слишком маленький! как четверть доллара)

Вы можете увидеть скорость изменений
Мадиас написал:Поздравляем Синти!
Было бы позор, бросая такое специальное звучащее устройство из -за паршивого дисплея!
Я надеюсь, что мы никогда не увидим в будущем eBay "Продавцы" с "Lexicon PCM80/81 набор для обновления дисплея только для 250USD" Использование вашего кода (без кредитов).
Еще одно мышление: ли простой 2002LCD не вписывался бы лучше в Lex? --> http: // www.aliexpress.com/оптом?кот ... XT = LCD2002

синти
Пн 25 июля 2016 г., 10:11
К вашему сведению

В выходные я сделал протобообразова... :(
Я забыл, что разъем выступал около 20 мм !

Мне нужен женский разъем с 90 градусом вращения (параллельно плате)

В настоящее время я использовал липучку для поддержания экрана на месте
И идея состоит в том, чтобы исправить (изолированную) протобообразу и липучкой, на верхнюю панель
IMG_5502.jpg
IMG_5502.JPG (36.34 киб) просмотрено 1044 раза

синти
Пн 25 июля 2016 г., 10:24
для любовников

Я прикрепляю псевдо -схемы и файл bin для и OLED 128x64 с контроллером I2C SH1106 (работает на SSD1306, но я протестировал больше на 1106)

2 переключателя в схеме позволяют играть с 4 различными конфигурациями шрифтов

Выключен 2 линии маленький << ----- лучший ;)
На 2 линии большие 1 маленький
Opt onn 1 маленький 2 больших
На 4 строках больших
Футабаемоляция.PDF
(60.68 киб) скачано 82 раза

Rogerclark
Пн 25 июля 2016 г., 21:52
В PDF, IC / разъем помечен U? Кажется, не связан ??

синти
Вт 26 июля 2016 г. 6:25 утра
Порт объекта с надписью PCM80_TO_FUTABA - это просто легенда для разъема 2x10 (который подключен к STM32)

Rogerclark
Вт 26 июля 2016 г., 6:29
ХОРОШО

Спасибо

Здравствуйте, мой дисплей PCM81 потерпел неудачу на прошлой неделе...И невозможно найти замену части... Этот проект - мечта, чтобы решить эту проблему дисплея. Возможно ли иметь доступ к коду, который я могу проверить с помощью PCM OLED 128×64 с контроллером I2C SH1106, пожалуйста? Спасибо помогите мне Pleeeaaaasse... ;-)


Привет, Отличный проект! мой дисплей PCM 81 потерпел неудачу на прошлой неделе... Могу ли мне помочь мне, пожалуйста? Это возможно, чтобы иметь исходный код для этого проекта, пожалуйста, у меня уже есть контрольник OLED и I2C SH1106. Спасибо за вашу помощь.


Привет, Возможно ли иметь файл корзины, пожалуйста? Дисплей моего PCM81 абсолютно черный с прошлой недели...Я хотел бы проверить ваше решение, чтобы исправить это .

Встроенная сборка

F4 DFU Bootloader