Jump to content

    
Sign in to follow this  
Loma

Помогите с микроконтроллерами

Recommended Posts

Здравствуйте!

Нужна помощь в программировании микроконтроллеров для хобби-проекта.

 

Оплата почасовая, 300 рублей в час. Нагрузка примерно пару часов в неделю.

 

Примерные вопросы: настроить АЦП/ЦАП, включить GPIO, наладить связь по USB, как сделать так чтобы отпустило пожалуйста просыпаться от прерывания, как уметь в многопоточность?.. То есть не рассказать мне как это сделать, а прям вот ррраз и готовый кусок кода что бы например АЦП 100Kb/s прямо в память писало. Оплата на сберкарточку.

 

Спасибо,

2uklxlpln2mi@mail.ru

Share this post


Link to post
Share on other sites
наладить связь по USB

С USB не выйдет так просто, ИМХО, это очень сложная штука. Я в свое время запускал USB на самых разных МК. Пришлось детально изучить документацию на сами МК, проштудировать спецификацию USB и книжку Гука, и только потом я начал что-то и как-то понимать и делать самостоятельно. И то постоянно приходилось держать под рукой аппаратный сниффер, с его помощью снимать обмен по шине и потом анализировать полученные осциллограммы. Да, никаких библиотек и проч. не использовал, все писал сам. Сроки ? У меня "от нуля" до момента создания первого USB HID device прошло месяца два, если не три ...

 

P.S. Многопоточность, USB ... Может, вам будет лучше сразу взять готовую плату с ARM, работающим под Linux ?

Share this post


Link to post
Share on other sites

Какой МК желаете освоить?

Если PIC18, PIC32 - то смогу помочь.

ТСР, ВЕБ на контроллере поднять, ШИМ , ИК управление - хорошо знаю.

Но за USB не ручаюсь.

Share this post


Link to post
Share on other sites
Раз и готового кода в интернете полно

Да во только он не помогает большинству

 

Но вы еще за это согласны платить?

 

есть же видосы на Ютабчике, посмотрел и ты кул прогер

 

Вот всё совершенно верно подмечено. Я так и думала: видосики, форумчики, там же два байта всего, а 512Kb хватит на всех.....

Ну явно же проще чем компьютерное зрение и всё такое прочее.....

Теперь согласна платить)))))))

Share this post


Link to post
Share on other sites

Из-ваших слов сказал бы что вам нужен репетитор, а не готовый код.

К тому же если взять STM32, для него есть "замечательная утилита" которая конфигурирует железо и создает проект

Дальше уже чисто программирование, а также опыт использования и применения, который за пару часов не передашь

Как писали выше его нужно заработать на собственных шишках

К тому же есть среда ардуино, в которой с железом вообще не нужно заморачиваться, только шлепайте свои хотелки и Hello Word-ы

 

Если вам нужен репетитор

и согласны от 500рэ, пишите в личку

 

Иначе ищите студента с последнего курса, который вам "преподаст" материал

Edited by hasl

Share this post


Link to post
Share on other sites
Иначе ищите студента с последнего курса, который вам "преподаст" материал

Только будьте готовы к тому, что искать придется долго. Очень долго. Да если и есть такие студенты, то они уже 1000 раз трудоустроены и такими вещами подрабатывать не будут ...

 

Share this post


Link to post
Share on other sites
Спасибо,

Надо сразу определиться с каким семейством микроконтроллеров хотите работать.

Потому что у всех работа с АЦП/ЦАП, GPIO, USB и многим другим отличаются так сильно, что переучиваться на другое семейство придется многие месяцы даже для опытных разработчиков.

Рекомендую сразу выбирать наиболее перспективное, документированное и с максимальной номенклатурой.

Это скорее всего будет семейство Kinetis от NXP.

Там же есть большое количество примеров хобби проектов:

Hexiwear projects - https://www.hexiwear.com/shop/

Quadcopter Drone Reference

3-phase PMSM Vector Control Reference

Вот большой список

Ну еще в mbed самые интересные проекты сделаны на Kinetis

 

Кстати утилита конфигурирования у Kinetis лучше чем у STM32.

 

Если нужен продвинутый уровень, то есть открытый рефересный проект под Mbed с демонстрацией портирования и использования RTOS

Share this post


Link to post
Share on other sites
Из-ваших слов сказал бы что вам нужен репетитор, а не готовый код.

 

Хочется именно готовый код. "Вызови эту функцию и ЦАП каждую секунду будет генерировать следующее значение из массива, который функция принимает на вход".

 

Это неосуществимая хотелка???

Share this post


Link to post
Share on other sites

осуществимая

только вам легче станет если:

в коде у вас будет только Callback который будет вызывается по завершении преобразования АЦП

 

какой смысл в таких уроках, лучше потратье свое время и бесплатно изучите ардуино - эффект тот же самый

 

Вы даже не знаете какие МК использовать, коих великое множество и все сразу никто и никогда не изучает.

 

Разговор как с ребенком который начал ходить в садик и который просто орет - "ХОЧУ"

 

Определитесь с целями и задачами

 

Если есть цель сделать свою моргалку

 

так и скажите хочу моргать с такой то частотой, напишите мне код и разъясните

Share this post


Link to post
Share on other sites
Надо сразу определиться с каким семейством микроконтроллеров хотите работать.

Потому что у всех работа с АЦП/ЦАП, GPIO, USB и многим другим отличаются так сильно, что переучиваться на другое семейство придется многие месяцы даже для опытных разработчиков.

Это скорее всего будет семейство Kinetis от NXP.

 

Спасибо!!! О таких даже не слышала! Выглядят подходяще..... Они действительно так популярны???

 

По поводу семейства и специальности специалиста.... Семейство это грубо говоря ARM или хотя бы Cortex или прямо таки Kinetis???

Share this post


Link to post
Share on other sites
Спасибо!!! О таких даже не слышала! Выглядят подходяще..... Они действительно так популярны???

 

По поводу семейства и специальности специалиста.... Семейство это грубо говоря ARM или хотя бы Cortex или прямо таки Kinetis???

Все к сожалению сложнее.

Если в arduino на ATMega вы имеете и ядро и периферию одного производителя и можете абсолютно все что надо узнать из одного мануала, то с ARM-ами все хуже.

Там есть фирма ARM выпускающая ядра ARM Cortex-M3, M4, M7 ..., Cortex-A5, A7, A9 ...

А есть производители SoC-ов c ядром ARM. Эти производители (ST, NXP, TI, Infineon, Microchip ...) вставляют в чипы свою периферию.

Поэтому нет единого мануала в котором описано все.

Надо читать талмуды от ARM, например: ARM®v7-M Architecture Reference Manual, ARM® Cortex®-M4 Processor Technical Reference Manual, Cortex™-M4 Devices Generic User Guide.

И надо читать талмуды от производителя, например Kinetis K66 Sub-Family Reference Manual.

Все собрание сочинений весит не меньше 3 тыс. страниц!

И оно постоянно у меня не десктопе.

Эт такой роман, который читать можно вечно.

Поэтому и говорю, лучше определится на берегу чтобы избежать жуткой фрустрации в дальнейшем.

Share this post


Link to post
Share on other sites
в коде у вас будет только Callback который будет вызывается по завершении преобразования АЦП

Вот именно!!! Вы это знаете, а я не знаю. Я сама джва года эту игру буду ждать два года это всё постигать буду.

потратье свое время и бесплатно изучите ардуино - эффект тот же самый

Не вполне. Меня как выяснилось не очень привлекает low level. Мне хочется заботиться о логике принятия решений и звать функции "сколько сейчас градусов ниже ноля", "крути моторчик назад медленно".

Разговор как с ребенком который начал ходить в садик

Вы же разрешите мне расценивать это как комплимент моему юнному возрасту, да? )))))))

Определитесь с целями и задачами

Если есть цель сделать свою моргалку

так и скажите хочу моргать с такой то частотой, напишите мне код и разъясните

Вы прям мои мысли читаете!!! Цели и задачи: делать разные моргалки за 300 рублей в час.

Примеры есть в первом сообщении. Ещё как пример, функция которая делает ШИМ, на вход принимает количество импульсов, частоту и скважность. Или может это лучше сделать другим способом, я не знаю, мне интерфейс важнее чем реализация в большинстве случаев.

 

Можно рассматривать это как написание библиотеки для микроконтроллера с человеческим лицом. Хотите выкладывайте код на github.com мне не жалко.

Share this post


Link to post
Share on other sites
Мне хочется заботиться о логике принятия решений и звать функции "сколько сейчас градусов ниже ноля", "крути моторчик назад медленно".

Готовая плата + Linux. Однозначно. ИМХО ...

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.

Sign in to follow this