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

SimpleSoft

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

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

  • Посещение

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

    2

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


  1. в терминале сделайте echo Blablabla > COM2: com2: - ваш ком порт (переберите - кто-то да ответит)
  2. Есть BSP который даёт GigaDevice - GD32F4xx Firmware Library v.3.0.3 и в него добавили поддержку платы. Да, вы можете подключать Arduino shields. Надо смотреть какие ноги 5В толерантны.
  3. -c "ftdi_layout_signal SWD_EN -data 0x10" Это некорректно - относится к ADBUS4.
  4. И вам хороших выходных) Что мешает зарегистрироваться на бесплатный вебинар? Вы и получите ссылку на материалы.
  5. Саму плату можно заказать в Китае - все материалы мы высылаем тем кто зарегистрировался. Плату планируем поставлять для тех кто планирует платные курсы с нами.
  6. Данный тренинг будет проводится на базе платы GD32F470 Training kit cо встроенным отладчиком от FTDI FT2232H.
  7. Добрый день. Приглашаю на бесплатный вебинар по теме «Разработка ПО для GigaDevice GD32 семейства. Профессиональный подход. Разработка на базе открытого ПО.» Ссылка на вебинар: https://go.mywebinar.com/smkx-fnrj-qpbm-kfdb Содержание вебинара: https://dab-embedded.com/en/services/webinar-gigadevice-gd32-software-dev-prof/?lang=en 25.Февраля 2023, 15:00 по Москве Длительность 1 час. #вебинар #firmware #GD32 #opensource
  8. Да проигрывает, на нативных ARM Simd будет в разы быстрее. Но советую пользоваться тк альтернативы собственно нету
  9. IAR ARM 7.80.4

    Еще раз спасибо и хороших выходных
  10. IAR ARM 7.80.4

    Спасибо. А таблеточка от 7.80.2 подходит? или надо новая?
  11. Я использовал в разных проектах. Он делает возможность сливать инструкции во время выполнения ядром. Дамп регистров конечно не делает в реальном времени но по инструкциям можно просмотреть принятые решения. Я бы сказал что при таких редких глюках как отвал раз в неделю будет сложно копаться в дампе, он будет огромного размера. Там в реальном времени валятся инструкции и сервисная инфа. Например если контроллер работает на 120Мгц то как минимум 240МБ в секунду придут данные. Сами прикидывайте. Я бы посоветовал больше потратить время на воспроизведение глюка в лабораторных условиях и тогда можно отловить.
  12. IAR ARM 7.80.4

    Добрый день. подскажите где найти установщик 7.80.4? Спасибо
  13. STM32CubeIDE

    Добрый день, Используем в новом проекте STM32H750 и Ethernet PHY KSZ8091R - опять вижу в генерированном CubeMX проекте ошибки в работе с D-Cache и естественно сгенерированный проект сразу не запускается (использован STM32H7 MCU pack 1.7.0) Мы поправили - но будьте внимательны - можно легко закопать дни в поиске проблемы.
  14. Вы можете доступаться до MIPI CSI регистров из Cortex M4. Они относятся к блоку AIPS4.
  15. Добрый день. Лучше взять https://www.intrinsyc.com/snapdragon-embedded-development-kits/snapdragon-855-hdk/ Там Hexagon DSP V66x. Там в SDK, в примерах есть скрипты которые через ADB закачивают все необходимые файлы на платформу и запускают на cDSP. Дебажить у вас на целевой платформе не получится, у них там очень кривой отладчик через ADB. Мы купили Lauterbach с лицензией для Hexagon DSP и с помощью него дебажим на платформе. Но лучше вариант - это симулятор от Lauterbach.
  16. А сравнивали эти байты с пачкой при плюсовой температуре? Может всёже флешка отдаёт ошибочные данные?
  17. Только увидел сообщение :) Было такое - были проблемы с кэшем. На HDD всё ОК, на SSD - бывало проблемы. Не решили - просто перенести на HDD. Может у меня не ваш случай - гляньте ProcMon - что IAR делает в это время.
  18. Добрый день Наша компания ищет схемотехника готового работать удалённо. Задача: Необходимо разработать схему с 8-ми канальным ЦАП отвечающий следующим характеристикам: 1. Первые 4 выходных канала с возможностью управлять нагрузкой в 100 мА при +12В диапазоне (0..+12В). Точность – 1мВ (выход х Вольт ±1мВ). Допустимый уровень шума – ≤ 15 мкВ (RMS) 2. Вторые 4 выходных канала с возможностью управлять нагрузкой в 500 мА при +12В диапазоне. Точность – 25мВ. Допустимый уровень шума – ≤ 1 мВ (RMS) 3. Требуемая частота изменения значения на выходах ≥ 500 Гц. 4. Схема должна иметь возможность измерять установленный уровень каждого выхода ЦАП с точностью 1мВ (с помощью 8-канального АЦП или АЦП + мультиплексор) 5. Шина управления ЦАП и АЦП – желательно SPI (но не критично). 6. Индустриальный диапазон температур -40°C to +85°C Присылайте ваше предложение по сотрудничеству в личку.
  19. Спасибо за советы. Реализовали предложение чтению данных только если необходимо, т.е. вызываем USBD_CDC_ReceivePacket когда следующие данные реально нужны. Действительно помогло. Заметили особенность - TeraTerm Ymodem "пихает" пакеты постоянно (видимо маленький таймаут для Write, или ещё что-то, что мы упускаем из виду) - проверено с помощью Com Port monitor на стороне PC, который "слушает" всё что летит от TeraTerm в COM port.
  20. Спасибо всем за ответы. Мы хорошо разбираемся в USB, мой вопрос был про опыт решения на STM32. По поводу не читать USB RX - мы не пробовали, но возник вопрос - а не будет ли STM32 дергать постоянно прерывание о приёме данных? (в Tech Ref не копались) Может кто-то знает как OTG в STM32H7 обрабатывает RX data interrupt?
  21. Добрый день, реализуем YModem поверх USB CDC. Тестируем под Win7 с помощью TeraTerm. Как только начинается передача пакетов данных от ПК (TeraTerm) в STM32, пакеты данных (по 512) прилетают с такой скоростью, что забивают кольцевой буфер под завязку. Посмотрели более детально, TeraTerm (Ymodem TX) повторяет пакеты до тех пор, пока STM32 не пришлёт ACK (тогда шлёт следующий кусок данных). Возник вопрос - как "притормозить" приходящие пакеты? Мы рассматривали вариант отключать прерывания USB: hpcd_USB_OTG_HS.Instance->GAHBCFG &= ~USB_OTG_GAHBCFG_GINT; Но это как-то жестоко, хоть и работает. Второй вариант который мы рассматривали - это Flow Control, но отбросили - не всегда его конечный клиент использует, да и потом без него тоже система должна корректно отрабатывать. Обработчик который сейчас реализован: static int8_t CDC_Receive_HS(uint8_t* Buf, uint32_t *Len) { /* USER CODE BEGIN 11 */ USBD_CDC_HandleTypeDef *hcdc = (USBD_CDC_HandleTypeDef*)hUsbDeviceHS.pClassData; if (hcdc) { USBD_CDC_SetRxBuffer(&hUsbDeviceHS, Buf); USBD_CDC_ReceivePacket(&hUsbDeviceHS); if (bs_usb_rx_command(Buf, hcdc->RxLength) == 0) { return (USBD_BUSY); } } return (USBD_OK); /* USER CODE END 11 */ } Если функция bs_usb_rx_command не может записать в кольцевой буфер (он полон) данные - возвращаем USBD_BUSY (по сути теряем данные). Но следующие тут же прилетают. Поделитесь, пожалуйста, опытом, как вы решали подобную задачу. Спасибо! MCU: STM32H743XIH STM32CubeIDE Version: 1.0.2
×
×
  • Создать...