Вопросы и ответы

Все о микроконтроллерах: AVR, PIC, STM8, STM32, Arduino, Altera, Xilinx, все что угодно. Этот раздел для всего что клацает байтиками.
Post Reply
kvital
Posts: 20
Joined: 02 Feb 2015, 17:48

Вопросы и ответы

Post by kvital »

Привіт! Я пишу інтерфейс на Распберрі для керування аналізатором (8 підсилювачів з цифровим керуванням-> АЦП). Всі елементи прогрмного коду написані і відлагоджені (SPI, I2C, sockets). Хочу запитати вашої поради як можна організувати інтерфейс користувача. Я уявляю це так: користувач вводить в себе telnet IP port, а назад отримує дані з восьми каналів. Але як, наприклад, огранізувати керування? По тому ж телнету я можу надсилати дані з конфігурацією. Напрошується нескінченний цикл і постійне прослуховування порту. На мене це не дуже гарно. Плюс там ще є тригер, на який сигнал знімається з підсилювачів, тобто прослуховування від двох джерел. З перериваннями це просто організувати, але це фактично С++ і тут я не знаю, що вдіяти. Прошу підказати якусь програмну абстракцію/шаблон, як це можна реалізувати.
User avatar
BSVi
Адепт
Posts: 3577
Joined: 15 Mar 2011, 12:32
Location: Киев

Re: Вопросы и ответы

Post by BSVi »

Напрошується нескінченний цикл і постійне прослуховування порту.
Не нужно никакого цикла, можно просто использовать блокирующее обращение к порту. Пока не пришлел пакет запроса, процес будет ожидать.
тобто прослуховування від двох джерел
Тебе нужны два потока - один собирает данные с датчиков и кладет в буфер. Второй играет роль сервера и отдает данные пользователю.
SeregaFox
Posts: 22
Joined: 14 Mar 2016, 11:31

Re: Вопросы и ответы

Post by SeregaFox »

Доброго вечера! Решил я в ознакомительных и образовательных целях с ПЛИС сделать небольшой проектик. ПЛИС от Xilinx. Из статьи http://tqfp.org/fpga/shest-prostyh-asin ... ostey.html решил воспользоваться хитростью по подавлению дребезга контактов. Как я понимял OBUF и IBUF соединяются противоположными выводами и к местам соединений подцепляются вход и выход. Думал что проще некуда. Но жестко обломался. При синтезе выскакивает ошибка и весь процесс останавливается. При синтезе программа не даёт соединить входной пин с выходным. Подскажите может я что-то не так понял или делаю? Мож какие-то настройки нужно изменить в проге чтобы она позволила эту хитрость провернуть?
User avatar
iEugene0x7CA
Адепт
Posts: 1571
Joined: 20 May 2012, 02:38
Location: Киев

Re: Вопросы и ответы

Post by iEugene0x7CA »

SeregaFox wrote:Подскажите может я что-то не так понял или делаю? Мож какие-то настройки нужно изменить в проге чтобы она позволила эту хитрость провернуть?
Хм, я что-то так и не понял, как эта штука работает. Сам RC-цепочки юзаю — да, приходится резистор и кап снаружи вешать, но SMD компоненты ничего не занимают и нисколько не стоят, а кнопки в таком случае работают железно без дребезга. Если FPGA жирная — можно как на МК сделать, при нажатии активировать таймер и выжидать некоторое время, пока дребезг додребезжит. :geek:
Last edited by iEugene0x7CA on 27 Jan 2017, 17:58, edited 1 time in total.
Sanches
Posts: 4
Joined: 05 Jan 2017, 19:43

Re: Вопросы и ответы

Post by Sanches »

Привет всем. Вопрос по таймеру General-Purpose STM32F100 . На схеме таймера три входных ноги CH1-CH3 объединены через XOR и подключены через мультиплексор к первому каналу таймера. В каком режиме используется эта штука?
User avatar
BSVi
Адепт
Posts: 3577
Joined: 15 Mar 2011, 12:32
Location: Киев

Re: Вопросы и ответы

Post by BSVi »

Для считывания точной времянки датчиков холла BLDC моторов.
Sanches
Posts: 4
Joined: 05 Jan 2017, 19:43

Re: Вопросы и ответы

Post by Sanches »

Спасибо за ответ, теперь все стало предельно ясно :) И еще один маленький вопрос, если не сложно: никак не могу разобраться, как генерировать полифонический звук с помощью ШИМ. Какие источники можно почитать на эту тему (на русском или английском языке)?
User avatar
BSVi
Адепт
Posts: 3577
Joined: 15 Mar 2011, 12:32
Location: Киев

Re: Вопросы и ответы

Post by BSVi »

Гугл показывает множество ответов. К примеру.
Post Reply