Allregia
Свой-
Постов
1 513 -
Зарегистрирован
-
Посещение
Весь контент Allregia
-
Вопрос о дисплеях и растаможке.
Allregia ответил Salamander тема в В помощь начинающему
Чет дорого. У китайцев вдвое дешевле: https://www.buydisplay.com/tft-display/ips-tft-display?diagonal_size=282&interface=396&resolution=811 US$18.33 Buy 10 for US$17.89 each and save 2% Buy 30 for US$17.40 each and save 5% Buy 50 for US$16.93 each and save 8% Buy 100 for US$16.44 each and save 10% С тачскрином и его контроллероv: +$7.70 -
После "xls-файлика", они сделали MicroXplorer , тогда еще небыло HAL, был SPL (впрочем, нынешние халовские LL - это практически и есть SPL), но Микроэксплорер с ним не работал и никакой кодогенерации не делал - он только ноги расставлял. И это было весьма удобно. Потом на него навесили хал и кодогенерацию, и обозвали получившееся "CubeMX". Если посмотреть в любом текстовом редакторе файл кубика (.ioc), то в нем до сих пор первая строка: "#MicroXplorer Configuration settings - do not modify". Что касается изначального вопроса топикстартера, то лично я кубом расставляю ноги, настраиваю периферию (причем не факт что я этими настройками потом воспользуюсь), настраиваю клоки. Затем: 1) генерю проект и компилирую его (чисто на всякий случай, чтобы знать что оно собралось). 2) в директории проекта создаю поддиректорию My_Application 3) в ней создаю файл my_application.c (ну и потом тут, и в других моих директориях будут остальные мои .c/.h) 4) в него копирую инклуды из main.c, и далее пишу: void SystemClock_Config(void); // это прототип функции из main.c //------------------- void My_App(void){ HAL_Init(); SystemClock_Config(); // дальше будет мой код. } [code] 5) В main.c дописываю 4 строки: [code] /* USER CODE BEGIN Includes */ void My_App(void); // 1 - это прототип моей функции из my_application.c <<<<<<<< /* USER CODE END Includes */ ... int main(void){ /* USER CODE BEGIN 1 */ MyApp(); // 2 - вызов моей функции <<<<<<<<<<<< #if 0 // 3 - закрываю все ихнее <<<<<<<<<<<< /* USER CODE END 1 */ далее все оставляю и потом: /* USER CODE BEGIN 3 */ } #endif // 4 - конец закрытой части <<<<<<<<<<<<< /* USER CODE END 3 */ } Все, я выключил все что нагенерил куб, вынес все свое в отдельную директорию. Далее я все файлы что нагенерил куб не трогаю, а их содержимым - ну, чем-то пользуюсь, чем-то нет, и тогда пишу свое. В такой системе я в любой момент могу перегенерить все кубом заново, и это не затронет ничего моего. Могу перенести все мое в другой проект, для другой платы или другого проца. Практика показала, что так удобно и достаточно оперативно. Особенно, если надо что-то быстро попробовать и ответить на вопрос "а что если?" или "как это сделать?" - тут неважно что программа не сильно оптимальная. Допустим мне надо попробовать какой-то чип, работающий по i2c, и с которым есть непонятни в документации - ну пофиг что калокуб при этом не совсем оптимально настроит какую-то переферию, которая будет исползоваться для проверок - не в ней же суть мероприятия.
-
Удивительное совпадение - вчера звонит приятель, у него на Ф4 тоже уходит время, и именно на 1-2 мин. за час! После расследования, оказалось что он по недосмотру, LSE он включил , но RTC тактировал от LSI...
-
Может. Я померял на текущей плате длины дорожек, мин. - 38мм, макс. - 45. Да и вообще, при 200кгц тактовой как-то не верится.
-
Боже упаси! Мне только БГа не хватало, для полного счастья. LGA-8 там. Смотрел, там что-то начинает шевелиться, но быстро заканчивает. Пока отложил, мне в принципе там для конкретной задачи, скорости и с 1-м битов с головой хватает. В марте дедлайн с прототипом устойства, а работы еще полно. Может быть потом к этому вернусь, но сейчас жалко сейчас терять время на третьестепенную задачу, есть более важные.
-
Ну, "немножко зависит", поскольку при малой длине разница в длинах проводников разных сигналов тоже небольшая. В любом случае - в других конструкциях, оно у меня на макетках работало даже когда разъем MicroSD похабно 10-сантиметровым МГТФом припаивал. Там про 52МГц для MMC, а тут оно на 0.2 МГц не хочет 😞
-
Можно конечно, но обычно на таких частотах, да на расстоянии в пару сантиметров - дожно быть пофиг там задержки и волновое. На L467 вообще было сантиметров 5, и все работало. Я выше писал что понижал тактовую до нескольких сот килогерц, и при этом ничего не изменилось. Уж при такой-то частоте точноне до 1 должно "задержек и волнового".
-
Где такое говорил?! Разумеется, именно он у меня и работает. Да. Собственно он не виснет а улетает в ошибку: hsd.Instance = SDIO; hsd.Init.ClockEdge = SDIO_CLOCK_EDGE_RISING; hsd.Init.ClockBypass = SDIO_CLOCK_BYPASS_DISABLE; hsd.Init.ClockPowerSave = SDIO_CLOCK_POWER_SAVE_DISABLE; hsd.Init.BusWide = SDIO_BUS_WIDE_4B;//SDIO_BUS_WIDE_1B; hsd.Init.HardwareFlowControl = SDIO_HARDWARE_FLOW_CONTROL_DISABLE; hsd.Init.ClockDiv = 16;//0; if (HAL_SD_Init(&hsd) != HAL_OK) // <<<<<<< это проходит { Error_Handler(); } if (HAL_SD_ConfigWideBusOperation(&hsd, SDIO_BUS_WIDE_4B) != HAL_OK) { Error_Handler(); // <<<<<<<<<<<<<<<<<<<<<<<<<<<<< вот сюда. } Завтра уже буду разбираться, если на дргуое не отвлекусь.
-
Ну, настроено все на SDIO. Что-то там "не то" - попробовал вместо чипа обычную карточку поставить - тоже самое. В 1-битном работает прекрасно, и FatFs и MSD, включаю4-х битный - виснет. Дальше пока не разбирался, другим занят.
-
ZDSD01GLGEAG.pdf По идее, ничем не долно отличаться. Ну кроме того, что это просто микросхема а не карточка в разъеме.
-
Привет. Работал ли кто-нибудь с SD NAND, а конкретно китайскими - Zetta ZDSD01G ? Может есть какие-то тонкости/нюансы в использовании? По описаниям и инфе из сети, просто подключается к SDIO вместо SD-карточки и все. Но у меня возникла проблема - работает только в 1-битном режиме, в 4-х битном зависает при инициализации. Проц F407, подтяжки 10К, кварц 24МГц, тактовая 144МГц. Ничего кроме флешки и ст-линка к нему не подключено (ну еще USB, но он не проинициализирован, сейчас от него только питание берется). От проца до чипа - сантиметра 3. Внутри сейчас FatFs (потом будет еще MSD через USB), в 1-битном режиме инициализируется, форматируется, файлы пишутся/читаются (правда пробовал только коротенькие, на сотню байт). Прогу для проверки калокубом сгенерировал. Пробовал снижать тактовую процу (до 32МГц), а также SDIO (понижал до 300кГц), пофиг - все равно в 4-х битном виснет на ините. P.S. Я делал как-то в 4-битном на L476 с обычной карточкой, проблем небыло. Делал много лет назад на F407 в 1-битном, т.к. одна из ног, нужных для 4-х бит была намертво занята другим, а скорость мне там не требовалась. Тоже проблем небыло. А вот на F407 я в 4-х битном никода не делал, оно вообще работет? Спасибо. P.P.S. Если где-то уже обсуждалось - ткните пальцем, плиз.
-
У меня "любой" - получился Сиглент. Pass/Fail не нужен, нужны цифры в протокол. Я уже подключил. 232-го у этого нету, но есть USB и LAN.
-
Да, но как Вы правильно заметили:
-
В общем, получается прицепить какой-нибудь простой осциллограы к ноуту будет проще.
-
Если мне память не изменяет, болометр эффективное меряет, а не пик-пик.
-
К сожаланию, в этих процах АЦП не умеет на 40МГц работать, можно конечно внешний, но тут ни скорости чтения, ни памяти не хватит.
-
GPIB и SCPI это конечно хорошо, и мы это делали, особенно когда надо не только риппл но и многое другие измерить. Но вот как-то к относительно простому МК (LPC1678 или STM32 какой) подключать несколько сложновато - rs232c в скопах давно нет, а USB/LAN это уже надо не МК а скорее "Малину" какую-нибудь ставить. Оно конечно и на этих процах есть ETH интерфейс, но надо внешний PHY, подымать в фирмваре ip-стек и прочее. Ну и сам осциллограф к тому-же - тут еще и жаба давит, т.к. кучу проверок и измерений параметров мы и так делаем, без всякого осциллографа (у другого оборудования есть SCPI через rs232, но оно не умеет риппл мерять. А вот если бы какую, не супер навороченную схемку, чтобы через АЦП МК можно было померять, было бы супер, но пока ничего в голову не приходит.
-
Измерение параметров выходов блока питания.
Allregia опубликовал тема в В помощь начинающему
Нужно для автоматического тестера. Собственно, величину напряжения на нагрузке померять не проблема, но как измерить риппл, по стандарту - пик-пик и rms в полосе до 20МГц, с вводом в комп или (еще лучше) - в МК? Осциллографом понятно что можно, но как-то сложно и громоздко. Риппл там реально милливольт 60-100 mV pk-pk, rms на уровне единиц-десятка mV. -
Вопрос по аккумуляторам
Allregia ответил repstosw тема в В помощь начинающему
Ну я пока так и сделал, поставил LDO с аккумулятора на RTC, но может есть лучше решение? Типа "уронить" 0.7в на последовательном диоде. Хотя, при микротоках на нем не будет 0.7в.- 57 ответов
-
- 1
-
- accumulator
- ni-mh
-
(и ещё 2 )
C тегом:
-
Вопрос по аккумуляторам
Allregia ответил repstosw тема в В помощь начинающему
Я понимаю что "не обещал", я спрашивал "как сделать"? Девайс питается от литий-иона, в выкл. состоянии от него-же должны и часы идти. Ставить еще 2032 для них - нет места.- 57 ответов
-
- accumulator
- ni-mh
-
(и ещё 2 )
C тегом:
-
Вопрос по аккумуляторам
Allregia ответил repstosw тема в В помощь начинающему
А как быть, к примеру, с питанием RTC у STM32? Там 3.6в макс, а с литиевой батарейки при зарядке может быть 4.2 Да диода последовательно?- 57 ответов
-
- accumulator
- ni-mh
-
(и ещё 2 )
C тегом:
-
Интерфейсы для обновлений
Allregia ответил unix тема в В помощь начинающему
А в чем неудобство? Я почти везде бутлоадеры на USB делаю (MSD), если оно в проце есть. Девайс прикидывается флешкой с одним файлом firmware.bin, для обновления его нужно замениь на новый, и все. Удобно, что никакого дополнительного железа и софта не нужно. Можно с любого компа/ноута, или планшета/телефона (но тут "железо" понядоится - OTG переходник). -
C Wireshark пока не разобрался, USBPcap поставил, перегрузился, но Wireshark все равно USB не видит. Вин11 😞 Могу попробовать в виртуалке, там у меня 10-ка LTSC стоит.
-
Wireshark скачал, но еще не пробовал, т.к. нашел решение тут: https://habr.com/ru/articles/571704/ Не все совпало, и не все оттуда использовал, но заработало!
-
Каким? Я USB раньше так глубоко не копал.