Jump to content

    

JohnKorsh

Свой
  • Content Count

    214
  • Joined

  • Last visited

Everything posted by JohnKorsh


  1. Добрый день! Не посоветует ли кто микросхему стабилизатора (можно LDO, но лучше импульсный понижающий) со следующими параметрами (искал, но не нашёл). Основное - собственный ток потребления не более 500 нА. Входное напряжение <= 7,5 В, выходное напряжение = 2,5 В, ток нагрузки не более 5 мА.
  2. Добрый вечер! Снимаю вопрос - ответили с Silicon Laboratories. Для генерации лицензии попросили MAC адреса моих модулей, через час прислали лицензии. Запрос делал на форуме Silicon Labs - может, кому-нибудь понадобится.
  3. Старые модули, из макета, отвечают 4.0.0 Bluegiga iWRAP, и нормально работают, новые модули отвечают 5.0.2 Bluegiga iWRAP. По RS232 позволяют делать установки, но не выходят в режим работы по BlueTooth, ка и обещано в IWRAP5 User Guide.
  4. Добрый день! Я использую модуль BlueTooth WT12. У него встроенное программное обеспечение. До 5 версии оно было безлицензионным. Сейчас - с лицензией. То есть он параметры выставить можно, общаться по RS232 можно, но, без ввода лицензионного кода в.ч. часть заблокирована. Сама фирма BlueGiga, похоже, распалась (запрос выводит на Silicon Laboratories). Не поможет ли кто с лицензией? По описанию, как я понял, она бесплатна. Но, похоже, получить её неоткуда, кроме как от коллег.
  5. Добрый день, Паша! Спасибо Вам. Я читал эту книгу. Там про скользящее FFT в самом конце, поверхностно, конечно, на мой взгляд, - маловато математики. Ищу что-то более фундаментальное.
  6. Добрый день! Не посоветует ли кто литературу по реализации FFT со скользящим окном?
  7. Нашёл. Может, кому пригодится. Оказывается STM32 умеет стирать EEPROM только словами, хотя в HAL есть функция стирания по байтам. Перед записью стираю рабочую область EEPROM. Вот мой код - помещаю перед записью, может, есть решение поизящнее. // Erase of the EEPROM work area HAL_FLASHEx_DATAEEPROM_Erase (FLASH_TYPEERASEDATA_WORD, FLASH_EEPROM_BASE); HAL_FLASHEx_DATAEEPROM_Erase (FLASH_TYPEERASEDATA_WORD, FLASH_EEPROM_BASE + 4); HAL_FLASHEx_DATAEEPROM_Erase (FLASH_TYPEERASEDATA_WORD, FLASH_EEPROM_BASE + 8);
  8. Добрый вечер! Продолжаю работать с EEPROM. В моём исполнении работает нестабильно. Работаю через HAL. Да, пытался найти примеры - в HAL есть примеры EEPROM, но это EEPROM внешняя с SPI иди I2C. Вот код тестовой программы: HAL_FLASHEx_DATAEEPROM_Unlock (); // Обеспечиваю доступ к EEPROM for (Test = 0; Test < 100; Test++) { IWDG->KR = 0xAAAA; // Watchdog reset // HAL_FLASHEx_DATAEEPROM_Erase(FLASH_TYPEERASEDATA_BYTE, FLASH_EEPROM_BASE + Test); // <- 1 HAL_FLASHEx_DATAEEPROM_Program(FLASH_TYPEPROGRAMDATA_FASTBYTE, FLASH_EEPROM_BASE + Test, Test); // <- 2 Min = Rd_Byte_EEPR (FLASH_EEPROM_BASE + RSSI_Level); } HAL_FLASHEx_DATAEEPROM_Lock (); В EEPROM в результате предыдущих тестов записались, начиная с адреса FLASH_EEPROM_BASE, следующие данные 0x55, 0x00, 0x00, 0x00, 0x37, .... Эти данные не стираются функцией, помеченной 1- при запуске под отладчиком в переменной Min они читаются, вместо 00, 01, 02,... как ожидалось. В некоторых сессиях отладки программа зависает в точках 1 или 2. Приходится делать стирание программной Flash. Не подскажет ли кто причину?
  9. Спасибо, Сергей! Чувствуется рука Гуру.
  10. Добрый день! Не поможет ли кто с простейшим случаем. В STM32L152 мне надо работать с EEPROM. EEPROM в этом микроконтроллере является частью общего адресного пространства. в HAL есть функции для стирания и записи байта. Нет функции чтения. Пытаюсь так: uint8_t *Addr = 0x8080000; Компилятор не позволяет. NULL позволяет присваивать, &.. тоже, а конкретное число нет. Не подскажет ли кто как считать байт по конкретному адресу.
  11. Добрый день! Спасибо за обсуждение. Ну, раз нельзя отключать - обрабатываю программно , кто включил железо, кнопка или IWDG. "Однажды (дежавю у меня) мельком видел Ваш комментарий, что при испытаниях какого-то девайса из-за "иголок" МК не мог дойти до места включения сторожевого пса и зависал (может не совсем корректно описал - поправьте). Расскажите, что тогда было?" - если вопрос ко мне, то было на MSP430. В начале работы инициализировал огромный массив и за это время WDT отрабатывал, что положено, и так в цикле. В IAR есть low_level_init.c - в этот файл можно записать функции, которые выполняются до низкоуровневой инициализации, там я и запретил WDT, а, после инициализации, включил. Кстати, в MSP WDT тоже отключается.
  12. В EFM32G880F128 есть такая возможность. Использовал, удобно. У буржуев есть, значит, думаю, не совсем глупо.
  13. В изделии нет выключателя питания. STM ставят в Sleep и ждут нажатия пользователем кнопки. IWDT напрасно беспокоит STM. Приемлемо, но всё же хотелось бы его отключить. В некоторых микроконтроллерах использовал такую возможность. Может и тут есть?
  14. Добрый день! Спасибо, разобрался LCD задышал. Это просто предупреждения Cube, что некоторые выводы, нужные LCD задействованы другой периферией, на генерацию кода инициализации не влияют. Не подскажете ли ещё: в Reference Manual подробнейше описано как включить IWDT, но я не нашёл, как IWDT отключать на время (мне не нужно, чтобы он будил STM в Sleep).
  15. Добрый день! Светодиода два - на PE4 и на PE5. Под отладчиком управляются адекватно. Ещё не могу понять: при создании конфигурации в CUBE32 задаю HSE генератор (12 МГц). При попытке включить опцию LCD с любым Duty cycle около RCC возникает предупреждение: Частично запрещён - конфликт с LCD (Partly disabled conflict with LCD: Mode 1/4 Duty Cycle тут любой, хоть Static). И около SYS также с перечислением выводов LCD. Все указанные выводы пытаюсь использовать только для LCD - на картинке расположения выводов они все отмечены как LCD Seg.. В чём недопонимание, не подскажете ли?
  16. Добрый день! Спасибо за советы. Нет, Level 2 не установлен. Светодиод зажёг, но самому непонятно. Может, кто объяснит? - В Cube STM32 обратил внимание, что стояло Debug Disable, поставил Serial Wire. Создал инициализацию. После загрузки - светодиод засветился. Единственное отличие - установка Dbug. Как наличие Debug может влиять на исполнение - я программировал проверял записанное с ULINK и с программатором Beep2, хотя он всё равно через SW.
  17. Добрый день! Мне необходимо написать свой софт под готовое железо. Железо без принципиальной схемы на STM32L152 в BGA. С одной железки снял BGA и вызвонил схему. Попробовал перепрограммировать, для пробы зажечь светодиод железа. (Инициализация микроконтроллера по Cube32 от ST). Программа записывается, осуществляется проверка записанного. Не не выполняется. Даже кварцы не заводятся. Все выводы - в третьем состоянии, то есть не идёт инициализация. Вопрос в следующем: есть ли в STM32L152 защита, которая остаётся после полного стирания и не даёт исполняться программе (сам микроконтроллер не менял - BGA, проблемно)? Извините за простой вопрос - с STM32 работаю первый раз.
  18. Добрый день! Спасибо большое всем. Не устаю удивляться сколь многого я не знаю. Мы остановились на Altium - оптимально для нас. Ваши ответы помогли нам сделать выбор.
  19. Добрый день! Спасибо, мужики. Много важного. Это не вброс - просто не хочется промахнуться - второй раз таких денег не выделят.