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

adnega

Свой
  • Постов

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

  • Посещение

  • Победитель дней

    3

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


  1. Как вариант, еще RESET на МК нужно завести с программатора, а в утилите программирования в настройках указать Connect Under Reset. Может, частоту SWD нужно снизить.
  2. Я думаю, на T_VCC должно быть питание с таргета. А на GNDDetect должно быть GND. Вы какими сигналами соединили программатор и контроллер?
  3. Там что-то типа Vtarget есть, чтобы подать VCC от таргета?
  4. Можно попробовать софтово возбудить exti-прерывание (EXTI_SWIER1), чтобы исключить вопросы к обработчику.
  5. Я тоже зависаний никогда не видел, но в спецификации указано. Например, из SPI-режима без передергивания питания никак в SD-режим не вернуться. И неуправляемой подтяжки хватает, чтобы паразитно карту запитать, поэтому все подтяжки вешаю на тот же ключ.
  6. Я подтяжки делаю к питанию карты, а питание карты подаю через управляемый ключик, т.к. карта требует в некоторых ситуациях "power cycle".
  7. в файле bl_export.c //----------------------------------------------------------------------------- // APPLICATION //----------------------------------------------------------------------------- #ifndef IS_BOOTLOADER const volatile sBL_EXPORT bl_export __attribute__((used, section(".bl_export"))); //----------------------------------------------------------------------------- // BOOTLOADER //----------------------------------------------------------------------------- #else // IS_BOOTLOADER const sBL_EXPORT bl_export_func __attribute__((used, section(".bl_export"))) = { &set_pin, // bl_set_pin &get_pin, // bl_get_pin }; #endif // IS_BOOTLOADER в файле bl_export.h //----------------------------------------------------------------------------- // Описание типов функций //----------------------------------------------------------------------------- typedef void t_bl_set_pin(const WORD pin, const BYTE value); typedef int t_bl_get_pin(const WORD pin); //----------------------------------------------------------------------------- // typedef struct sBL_EXPORT //----------------------------------------------------------------------------- typedef struct sBL_EXPORT { t_bl_set_pin *bl_set_pin; t_bl_get_pin *bl_get_pin; }; в приложении bl_export.bl_set_pin(WORKLED_PIN, wl_state? 1 : 0); скрипт линкера библиотеки MEMORY { RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 32K FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 16K - 240 - 16 BL_EXPORT(rw!x) : ORIGIN = 0x08003F00, LENGTH = 240 } SECTIONS { .bl_export : { KEEP(*(.bl_export)); } >BL_EXPORT } скрипт линкера приложения MEMORY { RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 32K BOOTLOADER (rx) : ORIGIN = 0x08000000, LENGTH = 16K - 240 - 16 BL_EXPORT(rw!x) : ORIGIN = 0x08003F00, LENGTH = 240 } SECTIONS { .bl_export (NOLOAD) : { KEEP(*(.bl_export)); } >BL_EXPORT }
  8. Не совсем понял этот пункт Типа, он запускается при минимум 1.7В, а затем может до 0.6В ?
  9. Это для честных пользователей или для уличения вредителей? Просто, если вредитель подготовленный, то всякие внешние решения он может обойти. А tamper, подключенный к МК уже не обойти.
  10. Может, их можно собрать в структуры, а затем вообще избавиться от невыровненных данных. В любом случае, оставлять указатели, по-моему, зло. В таком случае выдается предупреждение, что атрибут будет проигнорирован: *(_packed int*)p+1 = 0x12345678;
  11. Можно typedef struct sARP_RECORD { sMAC_ADR mac; sIP_ADR ip; DWORD time; BYTE used; } __attribute__((packed)) sARP_RECORD;
  12. SPN - это как именно данные трактовать.
  13. Главное в крайности не впадать. Наемный работник, если он такой гениальный и прищемленный руководством, может вполне назарабатывать себе раза в три-пять больше. Да, это не $M, но достойно жить вполне хватит. Да, с наемной работой придется расстаться. Налоги на УСН вполне посильные. Я до ИП работал по договорам с НДФЛ 13%. Тут условно УСН 7%. Почти в два раза выгоднее.
  14. Налоговое законодательство самое изменчивое, но оно таким и должно быть для выполнения своих функций. Кста, в том году обязательные платежи за себя должны были быть повышены, но остались на прежнем уровне. Я обычно заранее все плачу, поэтому как бы переплатил. Вариант, но там нужно смотреть на ограничения. У меня жена на патенте работала два года. Лучше бы сразу на УСН вела деятельность - до сих пор аукается. Долго рассказывать, но я для себя сделал вывод, что лучше пользоваться чем-то знакомым для самих налоговиков, а не экзотикой (типа патента).
  15. Оформить ИП и вкалывать на полную катушку с уплатой всех налогов.
  16. Вот архив с исходниками.
  17. Давно аналогичной проблемой озадачен. Если юзеры не будут ломать прошивку, то самый простой и удобный способ - генерация какой-нить контрольной суммы с ID-чипа и какой-то иной информацией. Т.е. юзеры дают вам значение функции от ID-чипа (seed=f1(ID)). Вы в ответ передаете другое значение (key=f2(seed)). Юзеры используют key для инициализации устройства. Второй вариант - шить секретный загрузчик. Тут все просто, понятно, надежно, но нужно физически контактировать с чипом или изделием. Третий вариант - некое аппаратное устройство, которое проинициализирует изделие. В этом устройстве вами будет заложено N штук лицензий с возможностью пополнения.
  18. Думаю, в Интернете для ПК полно примеров. Я бы с них начал. Тогда AJAX можно попробовать. Я для МК не пробовал, а для ПК лет 10 назад (когда WebSocket не было) что-то делал. Может, вам какой-нить web-программист нужен для начала. В своем можно все необходимое реализовать - это плюс. Ваша задача использовать то, что браузеры умеют. Это и есть AJAX если мне не врет память. Вы пишите как бы сервер. Существуют браузеры с поддерживаемым функционалом - это клиенты. Вам нужно использовать те технологии, которые браузерами поддерживаются. Я бы советовал WebSocket, но сам его не применял. Я бы советовал посмотреть как реализовано в TCP2UART. Там и webfs и WebSocket, но для ESP8266.
  19. Спасибо за информацию! Нужно будет попробовать. У меня сейчас только PS и AS варианты заложены, но JTAG очень интересен в перспективе.
  20. И ног меньше, и алгоритм проще, и решение универсальное. У меня Циклоны EP1, EP2, EP4 и Spartan-3AN одинаково управляются, хотя платы расширения могут быть реализованы на разных FPGA. Есть ли где-то подробное разжевывание про загрузку через JTAG?
  21. Вроде, ваш вариант даташитом приветствуется (см. сноску 3)
  22. По ценам от ST рост, вроде, не большой. Надеюсь, дефицит скоро закончится. Если будут завышать цены, то некоторые задачки у нас будут переведены на дешевые альтернативы (ESP, китайский lgt8f328p, мелкие мк от атмел/микрочип). При завышенных ценах на старшие модели, вообще, можно будет пригнуть на какие-нить Cortex-A-решения. Мне ST нравится, нравится направление, в котором они развиваются, нравятся их цены и доступность. Но я так плотно на ST сидел, что не заметил вкусноту от атмел/микрочипа, китайских друзей и т.п. Уверен, в ST работают грамотные люди, они все понимают и не допустят потери таких клиентов как я. Скорее, барыги все раскупят и начнут продавать в 30 раз дороже.
×
×
  • Создать...