roboforum.ru

Технический форум по робототехнике.

Python на STM32

ARM7, ARM9, ARM11 etc.

Python на STM32

Сообщение EdGull » 07 ноя 2011, 17:20

есть предположение что писать код на питоне будет простой и быстрый
давайте обсуждать
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Python на STM32

Сообщение svp » 07 ноя 2011, 17:32

Вот некий проект питоновского интерпретатора, для кучи микроконтроллеров, включая stm32
http://code.google.com/p/python-on-a-chip/

Особенность питона в том, что в него легко подключаются модули и библиотеки, написанные на чистом C. Таким образом, можно выносить какие-то реалтайм куски за пределы интерпретатора в нативный код под данный кристалл.
Аватара пользователя
svp
 
Сообщения: 42
Зарегистрирован: 13 дек 2005, 16:01
Откуда: Белгород
прог. языки: object pascal, c++, Lisp, Prolog

Re: Python на STM32

Сообщение Grem » 07 ноя 2011, 17:33

Предположение обсуждать?
А бенчмарки i/o, r/w, или хоть что-то есть?
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Re: Python на STM32

Сообщение dccharacter » 07 ноя 2011, 17:40

да имхо там не в языке дело. там в понимании, как это все работает. с библиотечными функциями и так пишется легко и просто на Си. Я вон в CooCox сел и за два дня кучу всего понаписал. Вот когда дальше шагнуть пытаешь, упираешься не в сложность языка, а в непонимание работы ядра, периферии и т.д. В ядре один модуль прерываний, в периферии другой, там пятое, тут десятое. Не понимаю, как какой-нить питон может упростить задачу.
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Python на STM32

Сообщение svp » 07 ноя 2011, 17:55

Grem писал(а):А бенчмарки i/o, r/w, или хоть что-то есть?

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

Вообще-то насчет реалтаймовой обработки датчиков питоновским кодом порядка тысяч раз в секунду я бы не особо обольщался. Но общая логика поведения робота на питоне выглядеть будет объектно, понятно и очень элегантно. "Я гарантирую это"=).
Плюс ко всему масса готового кода, например, шелл, веб-морда, куча протоколов...

В ядре один модуль прерываний, в периферии другой, там пятое, тут десятое. Не понимаю, как какой-нить питон может упростить задачу.

Ну на п итоне можно вынести все эти вещи на объектный уровень. Само собой от низкого уровня привязки датчиков и периферии никуда не деться, но зато скрипты верхнего уровня, после всех надлежащих обёрток, будут выглядеть конфетками.
Тут вопрос простоты вхождения в тему.
Если человек делает свой танк на атмеле и знает его вдоль и поперёк весь вместе со всей периферией, спаянной собственноручно любимым паяльником, то тут на сях надо кодить однозначно. А если надо, чтобы железкой увлеклось как можно больше народу, и чтобы железку мог программировать любой школьник, то питон тут -- самое оно.
Высокоуровневый язык не избавит от необходимости писать низкоуровневые библиотеки для связки всей периферии с абстрактным ядром, но зато потом это абстрактное ядро получится унифицированным и простым в обращении.

Добавлено спустя 4 минуты 28 секунд:
Народ, вы меня меньше слушайте=) Я тот ещё теоретик. Ни одного робота ещё не спаял. Видно возьмусь за паяльник уже на пенсии=). А если надо что-то абстрагировать и декомпозировать (не путать с компостированием), то я к вашим услугам.

Добавлено спустя 1 минуту 25 секунд:
А есть какой-нибудь внятный и простой эмулятор stm32?
Аватара пользователя
svp
 
Сообщения: 42
Зарегистрирован: 13 дек 2005, 16:01
Откуда: Белгород
прог. языки: object pascal, c++, Lisp, Prolog

Re: Python на STM32

Сообщение dccharacter » 07 ноя 2011, 17:58

А почему именно stm-32? Можно посмотреть на let me google that for you: cortex-m3 simulator
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Python на STM32

Сообщение EdGull » 07 ноя 2011, 17:59

зачем такие сложности??? пиши в личку почтовые реквизиты, я тебе STM32VLDISCOVERY подарю.

STM32VLDISCOVERY.pdf
(1.25 МиБ) Скачиваний: 0


Добавлено спустя 27 секунд:
dccharacter писал(а):А почему именно stm-32?

потому что цена!
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Python на STM32

Сообщение svp » 07 ноя 2011, 18:20

dccharacter писал(а):Можно посмотреть на let me google that for you: cortex-m3 simulator


Да гуглить я и сам умею. Тот риторический вопрос был расчитан на отклик людей, имевших собственный опыт работы и могущих сэкономить мне лишние шишки.

EdGull писал(а):потому что цена!

А я думал потому что 32. 32 -- это же так здорово. Считай нормальный комп в распоряжении. Опять же, чисто теоретически. Не кодил под контроллеры за исключением лабораторных по микроконтроллерам в институте, где надо было крутить моторчик в разные стороны на асме.

EdGull писал(а):пиши в личку

Это dccharacter адресовалось?
Аватара пользователя
svp
 
Сообщения: 42
Зарегистрирован: 13 дек 2005, 16:01
Откуда: Белгород
прог. языки: object pascal, c++, Lisp, Prolog

Re: Python на STM32

Сообщение EdGull » 07 ноя 2011, 18:21

нет, тебе.
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Python на STM32

Сообщение dccharacter » 07 ноя 2011, 18:30

svp писал(а):Это dccharacter адресовалось?

У меня есть уже дискавери :-))))

Добавлено спустя 2 минуты 12 секунд:
svp писал(а):А я думал потому что 32. 32 -- это же так здорово. Считай нормальный комп в распоряжении. Опять же, чисто теоретически. Не кодил под контроллеры за исключением лабораторных по микроконтроллерам в институте, где надо было крутить моторчик в разные стороны на асме.

Гыг. Сам так думал, даже спрашивал тут народ как андроид вкорячить на дискавери.

Фиг там. Комп - это Cortex-M7, Cortex-M9
А М3 - это микроконтроллер. И М0 - микроконтроллер. Хотя и крутой (после мид-ренжей микрочиповских. не знаю, может 32-битные ПИКи такие же крутые).

Добавлено спустя 1 минуту 20 секунд:
Во: http://www.arm.com/products/processors/index.php
Мы в зелененькой зоне. Компы - синенькие.

Добавлено спустя 2 минуты 59 секунд:
http://www.gaw.ru/html.cgi/txt/doc/micr ... /index.htm
Вот, очень рекомендую
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Python на STM32

Сообщение svp » 07 ноя 2011, 20:10

dccharacter писал(а):Во: http://www.arm.com/products/processors/index.php
Мы в зелененькой зоне. Компы - синенькие.

А в роутерах дешевых что-то из синенького крутится? Там вполне себе линукс. Дорого на таком кристалле собрать плату?
Понятно, что в гугл мне дорога, но вдруг кто-то уже исследовал вопрос.=)
Аватара пользователя
svp
 
Сообщения: 42
Зарегистрирован: 13 дек 2005, 16:01
Откуда: Белгород
прог. языки: object pascal, c++, Lisp, Prolog

Re: Python на STM32

Сообщение Michael_K » 07 ноя 2011, 20:26

svp писал(а):Дорого на таком кристалле собрать плату?

На коленке - дорого. Покупать.
Вернее на семерке-то еще нормально, но и линукс там... очень-очень условно :)
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Python на STM32

Сообщение svp » 07 ноя 2011, 21:01

Michael_K писал(а):Вернее на семерке-то еще нормально, но и линукс там... очень-очень условно :)

Да никто же про иксы и не говорит. SSH есть, IP-стек полноценный (если не ошибаюсь), usb-host (с поддержкой HID, storage, audio), даже торрент клиент (ту же трансмиссию) запустить можно.
А роботу, ИМХО, особо много и не надо:
- управление периферией (можно какой-нибудь дополнительный контроллер приделать);
- последовательная шина;
- TTY, чтобы командовать снаружи;
Если с IP-стеком заморочиться, то:
- Веб интерфейс на основе СGI,
- SSH/telnet
- usb-wifi dongle

Как-то на словах всё просто. На деле там масса подводных камней и вопросов.
Иногда даже кажется, что проще купить самый дешевый WIFI роутер, поставить на него кастомную прошивку DD-WRT, на свободный последовательный интерфейс (разведённый, но не задействованный на плате) повесить атмелку с драйверами для движков.
Вот а дальше уже коннектиться по ssh и рулить всем на уровне файловой системы и чтения/записи в конкретные последовательные порты.
Аватара пользователя
svp
 
Сообщения: 42
Зарегистрирован: 13 дек 2005, 16:01
Откуда: Белгород
прог. языки: object pascal, c++, Lisp, Prolog

Re: Python на STM32

Сообщение Grem » 07 ноя 2011, 21:14

Иногда даже кажется, что проще купить самый дешевый WIFI роутер, поставить на него кастомную прошивку DD-WRT, на свободный последовательный интерфейс (разведённый, но не задействованный на плате) повесить атмелку с драйверами для движков.

Так и делают те, кто так делает. По форуму ищите.
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Re: Python на STM32

Сообщение Angel71 » 07 ноя 2011, 22:19

дайте ссыль плиз на m7 и m9, а то то поисковики сегодня после множества неудачных запросов забанили. :oops: :cry: до бана успел только выяснить, что в cortex m серии точно есть m4, m3, m1 и m0
http://www.arm.com/products/processors/index.php
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

След.

Вернуться в ARM

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12