Перейти к содержанию
    

Fedor

Участник
  • Постов

    72
  • Зарегистрирован

  • Посещение

Весь контент Fedor


  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. Оптимизация в Keil

    Если структуру struct s; объявить глобальной или static отваливается?
  8. Оптимизация в Keil

    Больше похоже на то что в камень заливается не то что собралось. Попробуйте делать полный ребилд проекта после смены уровня оптимизации. Иназвание переменной 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модуль не запустишь она не заработает..
  16. STM32Fxxxx

    Топикстартер ограничен в обьеме загрузчика, я так понимаю, как вариант затираемой части бутлодера с ключами вполне вариант?
  17. STM32Fxxxx

    Уарт1 оставить для прошивки, pio для дебаггера "отпилить" ? По моему весь вопрос как спрятать -ключ-.. Если правильно додумал прошивка высылается заказчику девайса индивидуально, тогда схема... заказчик шлет уид процессора под него с ключем+уид генерится зашифрованная часть прошивки, уид не подошел - получили камень. Проблема если заказчик отльет свою схему с неотпиленными свд?
  18. STM32Fxxxx

    При помощи встроенного бутлодера грузите нешифрованный расшифровывальщик и шифрованную часть. При первом старте первую часть переписываете в sram и расшифровываетесь хоть на всю флешь.
  19. WiZnet w5300

    Да для TCP сокет = server:ip:port + client:ip:port Если брать posix то в псевдокоде должно быть кроме listen классическое bind и accept , но судя по документу сокет (и + все memalloc ) создается до listen и далее ждем естаблишед.
  20. WiZnet w5300

    судя по даташиту: http://www.wiznet.co.kr/Admin_Root/UpLoad_...130E%282%29.pdf стр. 94 , вы можете открывать до 8 сокетов. Т.е. после 0 далее открыть сокет 1 , 2 на тот же порт и так же сделать listen.
  21. -sh: ./rc.local: /bin/bash^M: bad interpreter: No such file or directory судя по символу M^ свой скрипт вы редактировали в виндовсе, и интерпретатору (вероятно) не нравится символ перевода каретки. Перевод строки в DOS и Windows это сочетание символов перевода строки и перевода каретки. в Unix только перевод строки. Отредактируйте свой скрипт по Unix правилам. Возможно после /bin/bash поможет поставленный пробел. Остальное вам уже ответили.
  22. А у Вас на отладочной плате Ubuntu установлена? Пришлите содержимое вашего /etc/init.d Добавьте содержимое вашего скрипта в какой нибудь уже рабочий из каталога /etc/init.d
  23. Должно быть по крайней мере не хуже. Могу еще порекомендовать nice'ом повысить приоритет процесса/процессов который работает с hid. Ну и wireshark для сниффа http://stackoverflow.com/questions/4971719...-with-wireshark
  24. Странно, а что в каталоге /sys/class/hidraw и /sys/bus/hid/devices ?
×
×
  • Создать...