Jump to content
KorNik

Помогите реализовать небольшой проект

Recommended Posts

Posted (edited)

Приветствую! Если вы читаете это сообщение, значит шанс есть )

Суть такова требуется сделать плату по управлению экшн-камерой по проводам. Спаять смогу, а также могу запрограммировать контроллер , работал только с PIC16F628. Языками не владею, написать прошивку сам , к сожалению не могу.

Задача такова: на входе 2 кнопки. Одна  инициирует в двоичном коде (UART) число 777, вторая 456. На выходе в исходном состоянии логическая 1 ( 3,3V )

При передаче команды 777  первым идет 0 (стартовый бит)-1001000011(сам код, начиная с младшего бита)-0(бит на четность)-1 (и далее постоянный уровень-стоповый бит).

Аналогично для 456; 00001001110101

Ширина каждого импульса 0,0833 мс (1200 baud) Предпочтительное напряжение питания 3,3 V/

Буду благодарен за схему и прошивку. 

Edited by KorNik

Share this post


Link to post
Share on other sites
Только что, KorNik сказал:

Буду благодарен за схему и прошивку.

Температуру надо измерить ....Причем до десятых  долей ...Вызывайте  дохтора  :)

Share this post


Link to post
Share on other sites
3 минуты назад, Витала сказал:

Температуру надо измерить ....Причем до десятых  долей ...Вызывайте  дохтора  :)

Витала, люди разные бывают, лет 5 назад мне помоги и схемой и прошивкой. Я надеюсь)

Share this post


Link to post
Share on other sites

Вебинар "Разбор новых уникальных модулей FMAC и CORDIC в микроконтроллерах общего назначения STM32G4" (15.07.2020)

Компания КОМПЭЛ приглашает вас принять участие в вебинаре 15.07.2020, посвященном новому семейству микроконтроллеров общего назначения – STM32G4. Вебинар рассчитан на технических специалистов и тех, кто знаком с основами цифровой обработки сигналов. Мы разберем алгоритм работы CORDIC, а также рассмотрим пример создания цифрового фильтра на базе FMAC.

Зарегистрироваться на вебинар

Ну за сотку зелёных может Вам и помогут . И то , так , чисто для спортивного интереса !

Если интересно - пишите , помогу Вам.


Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Share this post


Link to post
Share on other sites
                     

Новые контроллеры VIPerPLUS для ИП – видео и материалы вебинара STMicroelectronics

Видеозапись и материалы вебинара ST о семействе AC/DC регуляторов VIPerPLUS производства компании STMicroelectronics. Инженерами ST было детально рассмотрено новое семейство микросхем VIPerPLUS со встроенным транзистором, их возможности и топологии применения. Продемонстрировано испытание из лаборатории ST в Праге и моделирование в среде E-DesignSuite.

Подробнее

15.04.2020 в 18:05, KorNik сказал:

на входе 2 кнопки

15.04.2020 в 18:05, KorNik сказал:

Ширина каждого импульса 0,0833 мс

Это Вы кнопкой собрались тыкать с такой скоростью ? :blink::crazy:

PS: Про температуру точно подмечено ! :vava:

 

Share this post


Link to post
Share on other sites
                     

Конденсаторы ECWFG от Panasonic: теперь и для высоковольтных применений

Компания Panasonic анонсировала существенное расширение серии пленочных конденсаторов ECWFG: на сегодняшний день диапазон рабочих напряжений серии составляет 630…1100 В (DC). Серия ECWFG поддерживает уникальную функцию микропредохранителей.

Подробнее

15.04.2020 в 18:05, KorNik сказал:

777  первым идет 0 (стартовый бит)-1001000011(сам код, начиная с младшего бита)-0(бит на четность)-1 (и далее постоянный уровень-стоповый бит).

Аналогично для 456; 00001001110101

Для начала с кодами хотя бы разберитесь.

Сколько бит числа передаётся? Десять, тринадцать, произвольное количество?...

Что за хрень прицеплена в конце передачи числа 456? (ещё 3 бита после старшего, выделено жирным): 0001001110101

 

Накидать такую программку - фигня вопрос, но исходные данные должны быть исчерпывающе точны. :)

 

С контроллером определились, потому что у вас есть запас PIC16F628?

Share this post


Link to post
Share on other sites
15.04.2020 в 18:05, KorNik сказал:

Ширина каждого импульса 0,0833 мс (1200 baud)

и с этим стоило бы разобраться.... 83,(3)мкс это 12000 бод

Share this post


Link to post
Share on other sites
Posted (edited)

Приветствую!

Почитал немого, в правильном ли я двигаюсь направлении?

Числа 777=1100001001
             456= 111001000
в двоичном формате имеют разную битность.
Мне думается, что нужно выбрать битность по большему числу и добавить 0 к коду 456
как то так
777=1100001001
456=0111001000
Поскольку я передаю код UART, используя только вывод Tx, предполагаю что проверка бита на четность не обязательна.
Формат кода получается такой 10-N-1 (10 бит данных без бита четности и один стоповый бит).
Т.е. Формат команды 0(Старт)1001000011-1(стоп) это для 777
Получается 10 битов данных и 2 бита старт, стоп.
Не понятно теперь мне нужен 10 или 12 битный процессор...
В принципе я не привязан к какому то PIC конкретно, программатор есть, думаю принцип прошивки одинаков.
Главные требования к нему минимальные габариты и напряжение питания 3,3V (есть дежурное на камере)

Что касается ширины импульса, действительно 1200 бод это 0,833 мс.

Edited by KorNik

Share this post


Link to post
Share on other sites

Для такой задачи без UART-а можно обойтись и взять самый мелкий PIC, например, PIC10F200


На форумах принято общаться на "ты", что не является оскорбительным и подразумевает равноправие

Share this post


Link to post
Share on other sites

Для такой задачи достаточно логики-рассыпухи.

3 часа назад, KorNik сказал:

0(Старт)1001000011-1(стоп)

Где здесь кроется каждая из семерок? Никак втолк не возьму.


Я не раздаю удочки. Я продаю рыбу.

Share this post


Link to post
Share on other sites
4 minutes ago, солар said:

Где

1001000011 -> 1100001001 = 777 :)

Share this post


Link to post
Share on other sites
2 часа назад, Vovka сказал:

Для такой задачи без UART-а можно обойтись и взять самый мелкий PIC, например, PIC10F200

С компа по адаптеру Uart отправлял, все работает. Конечно же на PIC, вот только не разберусь на 10 или 12 бит он должен быть 

Share this post


Link to post
Share on other sites
Posted (edited)

Как именно оправлял? Вопрос в том, как можно отправить 777 одной посылкой, если байт не может быть больше 255. Если три раза подряд передавали байт "7", то это три посылки, а не одна, и задача упрощается.

Да, и еще: передавали значение байта 7 или символ "7"?

Edited by КЭС

Share this post


Link to post
Share on other sites
Posted (edited)
30 минут назад, КЭС сказал:

Как именно оправлял? Вопрос в том, как можно отправить 777 одной посылкой, если байт не может быть больше 255. Если три раза подряд передавали байт "7", то это три посылки, а не одна, и задача упрощается.

Да, и еще: передавали значение байта 7 или символ "7"?

В программе Terminal  на компе набрал 777 и нажал Send те отправил через UART USBадаптер

Edited by KorNik

Share this post


Link to post
Share on other sites

Терминалы разные бывают. Повторяю вопрос: передавали значение байта 7 или символ "7"? Это разные вещи! У каждого символа есть свой код. Например, символ "7" - это значит передать байт значением 55 (десятичное). Т.е. вы передавали три байта значением 55, так?

Share this post


Link to post
Share on other sites
Posted (edited)

777.png

 

Не вижу меню скрытия под спойлер...

 

 

Edited by KorNik

Share this post


Link to post
Share on other sites

Какой контроллер есть в наличии?

Share this post


Link to post
Share on other sites
Posted (edited)
4 минуты назад, КЭС сказал:

Какой контроллер есть в наличии?

Куплю любой из доступных.PIC12F629 был, не знаю подходит ли он. Он проще , схему нашел, определиться со входами и выходом. На входы резистор на Uп подвешу, выход в статике 1ца болтается, думаю ее программа сможет формировать

Edited by KorNik

Share this post


Link to post
Share on other sites

Еще несколько вопросов.

1. Какой кварц есть в наличии.

2.Что использовалось в качестве СОМ порта: встроенный в компьютер или USB преобразователь? Если второе, то уточнить, это USB-COM или USB-UART ?

3. Покажите все настройки СОМ пота (на скриншоте обрезано справа). 

4. Прекратите цитировать предыдущее сообщение.

Share this post


Link to post
Share on other sites
Posted (edited)

COM port виртуальный, преобразователь втыкал в  USB?  Кварц есть 8.00 Мгц123.png.6dd7a9bc264e39d33f6a91f3474d278b.png

Есть еще кварц на 12.000 , но не знаю МГц ли это или КГц (на мышке стоял)

 

Edited by KorNik

Share this post


Link to post
Share on other sites

Меня интересует, преобразователь какой? Он может быть USB-COM, а может USB-UART. На выходе стандартный DB-9 или клеммник/штырьки?

Share this post


Link to post
Share on other sites
Posted (edited)

Использовал GND и Tx

4726_970.jpg.fadd5d404c2be128794489bf111a5eb6.jpg

Второй кварц выясняется на 12,000 Мгц

 

Edited by KorNik

Share this post


Link to post
Share on other sites
Posted (edited)

spacer.png20200417_140958.jpg.0d5fc9a06ddbf9814b4d19ab99dcad41.jpg

 

Разные файлы - разная полярность выхода. Проверяйте, одна должна подойти.

sender.hex

sender1.hex

Edited by КЭС

Share this post


Link to post
Share on other sites

!!!

Я правильно понимаю прям к камере можно выход подцеплять, без всяких переходников?

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...