Jump to content

    

Fedor

Участник
  • Content Count

    72
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Fedor

  • Rank
    Участник
  • Birthday 08/02/1975
  1. Есть линукс для stm32 смотрите в сторону uclinux, и при чем здесь MPU возможно вы перепутали с MMU? Вам правильно ответили, смортите в сторону yocto это сейчас мейнстрим. Суть процесса разработки под АРМ , качаем и правим u-boot далее разбираемся с ядром линукс , а это сборка + devicetree пад вашу платформу. Для начала лучше действительно разобраться с действующей платформой типа "малинки",.. вобщем мой совет сначала разобраться во всем в "разобранном" виде. Это в смысле собрать свой u-boot и ядро, а потом освоить как формируются рецепты и как добавить свои программы в rootfs вашей сборки. Обычно для каждой плаформы имеется guide как собрать правильный образ в yocto.. лучше просмотреть несколько, для разных типов платформ, тогда будет более понятно что такое слой (layer) и что такое yocto вообще. И как только команды devtool и bitbake будут для вас "родными" вы сможете разобраться как устроить отладку и деплой вашего приложения.
  2. Возьмите ядро посвежее? Как пример.. из dts/imx6qdl-tx6.dtsi смотрел в 4.8 gpio-keys { compatible = "gpio-keys"; power { label = "Power Button"; gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>; linux,code = <KEY_POWER>; wakeup-source; }; }; leds { compatible = "gpio-leds"; user_led: user { label = "Heartbeat"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_user_led>; gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; }; }; Далее ищем в файле ссылки GPIO5, GPIO2.. pinctrl_user_led: user-ledgrp { fsl,pins = < MX6QDL_PAD_EIM_A18__GPIO2_IO20 0x1b0b1 /* LED */ >; }; ... pinctrl_hog: hoggrp { fsl,pins = < MX6QDL_PAD_SD3_DAT2__GPIO7_IO06 0x1b0b1 /* ETN PHY RESET */ MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x1b0b1 /* ETN PHY INT */ MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x1b0b1 /* PWR BTN */ >; }; и далее шерстим ./Documentation/devicetree/bindings Все логично. Ссылки compatible автоматом приходят в /sys/class/gpio /sys/class/leds.
  3. Возможно в обработке строк дело. Попробуйте насильно выставить английскую локаль и юникод нужной версии.
  4. Можно поднять ip туннель через slip : http://stackoverflow.com/questions/5890505...-ip-through-tty на строне виндовс не подскажу как сделать. Или через pppd : http://howto.gumph.org/content/xp-direct-cable-to-linux/ Естесственно подержка slip или pppd должна быть собрана на Вашей embedded плате. И уже поверх всего этого используйте Putty или WinSCP.
  5. usb stm32f401

    Как работает usb можно почитать на usb.org как вариант, вывод отладочной информации в уарт в процессе инициализации usb мешает работе usb?
  6. Во всем диапазоне скоростей, регулятором с постоянными коэффициентами не получается регулировать. Тут нужен адаптивный регулятор. Например: Выберите для максимальной скорости коэффициенты и для минимальной и далее пересчитывайте пропорционально заданной скорости. Для более сложного объекта с нелинейными параметрами придется потрудиться... Добавлю http://www.adaplab.ru/papers/alex/UKI12.pdf см. прямые адаптивные системы.
  7. Если структуру struct s; объявить глобальной или static отваливается?
  8. Больше похоже на то что в камень заливается не то что собралось. Попробуйте делать полный ребилд проекта после смены уровня оптимизации. Иназвание переменной struct это реальное название или для примера?
  9. Micropython

    Как собирать под Windows7: Кросс-компилятор https://launchpad.net/gcc-arm-embedded/+download Понадобится MinGw32 и метапакет MSYS из него же инсталер http://sourceforge.net/projects/mingw/file...up.exe/download в инсталере выбираем mingw-developer-toolkit, mingw32-base, mingw-gcc-g++, msys-base Также понадобится python я поставил Pytho27 по ссылке https://www.python.org/download/releases/2.7.2/ Как настраивать взято отсюда http://www.secker.nl/2012/03/08/setup-pyth...-on-windows-xp/ Незабываем настраивать переменную PATH Далее заходим C:\MinGW\msys\1.0 и запускаем msys.bat появится окошко командной строки msys там проверяем все ли мы правильно прописали #echo $PATH мой вывод например .:/usr/local/bin:/mingw/bin:/bin:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/c/Program Files/Microsoft SQL Server/110/Tools/Binn/:/c/Program Files/Microsoft SQL Server/100/Tools/Binn/:/c/Program Files/Microsoft SQL Server/100/DTS/Binn/:/c/GNU_Tools_ARM_Embedded/4.9_2015q2/bin:/c/Python27:/c/Python27/Scripts Далее идем в нашу папку с исходниками micropython #cd /c #cd micropython-master/stemhal #make BOARD=STM32F4DISK V=1 Далее, если все собралось нормально, в папке ./build-STM32F4DISK наблюдаем файл firmware.hex
  10. Для svn можно сделать: http://stackoverflow.com/questions/16248/g...umber-into-code а вот, например, гит не дает номер ревизии, но можно попробывать через метки (tags).
  11. Micropython

    под убунтой просто собирается и README.md также говорит буду на виндовс машине, попробую собрать и скажу точно ... LINK build-PYBV10/firmware.elf text data bss dec hex filename 287860 96 28364 316320 4d3a0 build-PYBV10/firmware.elf Create build-PYBV10/firmware.dfu Create build-PYBV10/firmware.hex
  12. gcc struct version_s{ uint16_t major; uint16_t minor; char *bdate; }; const version_t version __section(._version) = { .major = V_MAJOR, .minor = V_MINOR, .bdate = __DATE__ " " __TIME__ , }; Секцию прописать в скрипте загрузчика в нужном месте.
  13. Micropython

    Сначала скачать вашу версию компилятора https://launchpad.net/gcc-arm-embedded/+download установить, затем в каталоге stmhal в командной строке запустить команду make BOARD=XXXX ( XXX- название платы из каталога stmhal/boards )
  14. STM32Fxxxx

    Как вариант на том же STM сделать свой программатор и шить по SWD В программатор поставить BGA корпус, SWD проложить на внутреннем слое Прошивку расшифровывать залоченным ключем в этом программаторе. Т.е. приложили в посадочное место камень прошились, потом припаяли. Или если нет опасений что просканят SWD шить уже припаянным, или если могут просканить шить бутлодер и зашифрованную часть, ключ передавать в мусорной куче байтов чтобы не нашли сканером.
  15. STM32Fxxxx

    И дать ему у валидный uid присланный от заказчика к ТС, который + ключ чтобы все заработало.. Посмотрите на STemWin например, она валидует мк и пока CRCмодуль не запустишь она не заработает..