electrotehnik
-
Постов
30 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные electrotehnik
-
-
Разводка не дорожками, а толстыми участками, близко к Appnote.
Единственно, что обнаружил ошибку в зеркальности футпринтов на транзисторах, попробовал на весу подключить его короткими тонкими проводниками.
Но единственное, что произошло, так это - LM3150 начала нагреваться.
Есть ли какие-либо комментарии на этот счет?
-
диод как в EVM установили, контроллер как-будто сделал один импульс, который зарядил выходной конденсатор, конденсатор держал зярад до подключения нагрузки.
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
Всем привет
подскажите, пожалуйста, что еще проверить?
Не запускается LM3150:
- питание на микросхеме есть
- ключи живы
- обвязка как по схеме от производителя
Вывод о том, что микросхема не заводится, делаю по тому, что отсутствуют управляющие сигналы на ключах.
Пробовал менять микросхему - эффект одинаковый.
Схемы моя и от TI во вложении.
-
для начала предлагаю Вам посмотреть какие характеристики имеют автомотив компоненты
http://www.infineon.com/dgdl/Infineon-TLF5...85f36&ack=t
http://www.infineon.com/dgdl/Infineon-TLE8...12d133e99316be2
А, ну вообще да, согласен. Конечно, все правильно. Пока опытный образец - для проверки концепции, поэтому это не принимал во внимание еще.
-
Если речь о его втыкании в бортсеть, то Вы серьёзно ошиблись и разделом форума, и уровнем проектирования.
Объясните, пожалуйста, почему Вы так думаете?
-
Неплохо бы сперва с этими числами разобраться
Питание устройства предполагается от свинцового АКБ 12В. 14.4В - номинальное значение автомобильного генератора, чтобы возможность такого подключения была предусмотрена. Потребителю требуется 7.2В, значение представляет собой половину входного напряжения - это просто совпадение.
По совету Ydaloj сейчас смотрю в сторону синхронных понижающих стабилизаторов, у них, я так понял КПД выше, и схемы такого типа более распространены там, где токи порядка от 10 Ампер и больше.
Сам производитель не показывает в даташите примера более 6А на 2,5В, при этом замечает, что такой ток уже достаточно сложно реализовать. Как считаете, вообще имеет смысл вытягивать из MAX1627 10А?
-
дроссель нужен с зазором,
а как же торы из материала, обеспечивающим распределенный зазор?
а дроссель заказал бы забесплатно с койлкрафтаРечь идет о заказе пробного образца?
- микросхему я бы взял вообще другую - на ток 10А только синхронники, иначе в чём выгода от 300кГц?Какую микросхему вы бы посоветовали?
-
Краткое описание преобразователя:
- Стабилизатор на базе MAX1627
- Vin=14.4 V (max)
- Vout=7.2 V
- Iout = 10 A (max)
- f=300kHz
- По рекомендации производителя Maxim сердечник дросселя должен быть ферритовый. Порошковое железо не рекомендуется.
В даташите на MAX1627, который приложен к этому посту, представлена методика расчета подходящей индуктивности.
По моим расчетам, мне нужен дроссель, способный выдержать Ipeak=16.1A, и имеющий индуктивность Lmin=2microH.
Нашел подходящие дроссели заводского исполнения фирмы CoilCraft SER2009-202ML, однако найти в продаже их очень сложно. Гораздо проще и дешевле собрать дроссель самостоятельно на ферритах Epcos - бюджетно и легкодоступно.
Прочитал уже кучу статей, посмотрел несколько программ, но понял, что начинаю запутываться в этом многообразии информации.
В связи с этим прошу наставить меня на путь истинный.
Сейчас у меня три вопроса:
- Какой конструкции дроссель выбрать: хотелось бы тор, но витков под такую индуктивность совсем мало, похоже тор по всей окружности не заполнить?
- Как правильно посчитать сечение провода для Ipeak?
- На какие параметры обращать внимание при выборе материала сердечника? Мю - чем больше, тем лучше?
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
Подскажите, пожалуйста, как узнать текущую частоту тактирования проца (где прочитать)? Вывод MCO конфигурировать не вариант, так как осциллограф максимум воспримет 30 МГц. Используются настройки SPL по умолчанию. Везде в статьях по STM32 пишут, что по умолчанию на шине APB1 тактовая частота 24МГц.
Но мне удалось получить длину импульсов 1 секунда только когда поставил следующие значения в инициализации:
void InitTimer(void) { TIM_TimeBaseInitTypeDef base_timer; TIM_TimeBaseStructInit(&base_timer); RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6, ENABLE); base_timer.TIM_Prescaler = 36000 - 1; base_timer.TIM_Period = 2000; TIM_TimeBaseInit(TIM6, &base_timer); TIM_ITConfig(TIM6, TIM_IT_Update, ENABLE); TIM_Cmd(TIM6, ENABLE); NVIC_EnableIRQ(TIM6_DAC1_IRQn); }
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
Попробовал Cube - все заработало, схема значит рабочая. Но Cube использует HAL драйверы.
Я же привык кодить на Standart Peripherial Library (SPL), судя по тому, что код рабочий, затык у меня в недоподключенной библиотеке SPL.
Дерево файлов моего проекта (кроме всех файлов в папке MDS-ARM) можно посмотреть во вложении к этому посту.
По непонятным для меня причинам код из первого поста заработал сам собой.
По осциллографу заметил, что код-то заработал, да не на той частоте, на какой нужно.
При этом работает только если подключать программатор SWD. Если подавать питание без подключенного программатора, то проц не исполняет код вообще. Сдается мне в тактировании проблема.
-
CUBE не пробовали?
Cube громоздкая тема. Но ради проверки работоспособности схемы попробовать можно..
-
Самое существенное отличие, что теперь GPIO не попадает в регион bitband.
Смотрел example на STM32F37x - там нет отличий по инициализации портов, все как Cortex-M4. Вообще уже не знаю что делать.
Может кварцевый резонатор ерундить, если операции с чтением и записью прошивки проходят всегда успешно?
-
Добрый день
Не работают GPIO. Все перепроверил, использую CMSIS и Standart Peripherial Library, вот код:
#include "stm32f37x.h" #include "stm32f37x_gpio.h" void InitPort(void) { GPIO_InitTypeDef GPIO_InitStructure; /* Разрешить тактирование GPIOx */ RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE); /* Конфигурирование ножки PB7, туда подключен светодиод */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; GPIO_Init(GPIOB, &GPIO_InitStructure); return; } int main(void) { InitPort(); GPIO_SetBits(GPIOB, GPIO_Pin_7); //светодиод горит while (1) { } }
Может чего-то не хватает? Подскажите, ткните пальцем пожалуйста. На других MCU Cortex-M4 такой код работает... вот и думаю, может проц запитал не до конца, но он ведь видится, прошивка льется и читается ST-Link.
Программирую в Keil.
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
ACS712 в пятиамперном варианте - это будет как раз самое оно, на мой взгляд.В моем случае речь может идти об ACS716, так как на плате низковольтная цепь с напряжением 3,3В.
А это уже SOIC16 корпус и ценник от 700 руб/шт, с временем поставки от 20 дней.
Если по другому никак, то, конечно, вполне рабочий вариант. Кто-нибудь может посоветовать ОУ с высоким синфазным напряжением (350-500 В) или с гальванически развязанными входами?
Стоит ли городить ОУ на транзисторах, способных держать такое напряжение + гальваническую развязку? Здесь уже становятся просто очевидными преимущества микросхем серии ACS7xx...
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
Требуемый диапазон токов ? Требуемая точность ? Почему бы не использовать холловские сенсоры a la ACS71x ?Токи необходимо ловить от 0,1А до 1,8А. Точность 0,1А. Холловские сенсоры обычно оптимальны для токов на порядок больших, есть, конечно, у них варианты на диапазон до 6А, но боюсь, что дрейф нуля у него будет как раз в пределах 0,1А. Реализация с шунтом кажется на много проще, особенно если бы можно было использовать специализированные усилители под шунты.
Или в случае с напряжением моего порядка иначе уже никак?
-
господа, подскажите, пожалуйста:
мне нужно мерить силу постоянного тока в цепи с напряжением от 190 до 500В.
Хочу использовать метод с шунтирующим сопротивлением и операционный усилитель (ОУ) (как альтернативу - current sense omplifier), но все они максимум поддерживают напряжение на входе не более 70...100В.
Начала приходить мысль использовать делители напряжения между шунтом и ОУ.
Подскажите, пожалуйста, как принято поступать в таких случаях?
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
Спасибо, разобрался!
diskio.c переписал по образу и подобию старой версии, при этом поглядывая на diskio.h. Последний - остался без изменений. Остальные файлы тоже просто копируются общим скопом.
Так и получается обновление.
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
Похоже при переходе к новой версии файл diskio.c остается неизменным, так как в нем описываются функции взаимодействия библиотеки с драйвером. Разве что эти функции необходимо поправить для соответствия нововведениям в библиотеке. В поставке с библиотекой этот файл представляет собой лишь пример. Поправьте меня, если я ошибаюсь, или мое предположение не точно.
-
Опубликовано · Изменено пользователем electrotehnik · Пожаловаться
Добрый день
Программирую на отладочной плате HY-MiniSTM32V. Карта памяти подключена по SDIO. Попался мне проект, где версия FatFS 0.08b уже отконфигурирована под работу с SDIO.
Но на данный момент уже вышла версия FatFS 0.10b.
Обновил аккуратно файлы FatFS, добавил где надо необходимые инклуды, по аналогии с рабочим проектом. Драйвер SDIO в отдельном файле реализован.
Однако компилер (Keil4) продолжает ругаться таким образом:
... .\Project_firmware.axf: Error: L6218E: Undefined symbol ATA_disk_initialize (referred from diskio.o). .\Project_firmware.axf: Error: L6218E: Undefined symbol ATA_disk_read (referred from diskio.o). ... .\Project_firmware.axf: Error: L6218E: Undefined symbol USB_disk_initialize (referred from diskio.o). .\Project_firmware.axf: Error: L6218E: Undefined symbol USB_disk_read (referred from diskio.o). ... .\Project_firmware.axf: Error: L6218E: Undefined symbol MMC_disk_initialize (referred from diskio.o). .\Project_firmware.axf: Error: L6218E: Undefined symbol MMC_disk_read (referred from diskio.o). ... .\Project_firmware.axf: Error: L6218E: Undefined symbol get_fattime (referred from ff.o). ...
Я собираюсь работать только с SD. Драйвер подключен только для SD и, соответственно, драйверов для ATA и USB у меня нет, поэтому в файле diskio.c сделал так:
#include "diskio.h" /* FatFs lower layer API */ //#include "usbdisk.h" /* Example: USB drive control */ //#include "atadrive.h" /* Example: ATA drive control */ //#include "sdcard.h" /* Example: MMC/SDC contorl */ #include "sdio_sd.h"
Упомянутые необъявленные символы встречаются почти в каждой функции файла diskio.c. Это что же, эти функции нужно переписывать с учетом отсутствующих драйверов, или искать драйвера?
Как сделать правильнее и проще?
-
Спасибо большое! :)
-
аргумент функции отправки на дисплей, содержащий текст, должен быть типом uint8_t.
а функция:
sprintf(tpre,"%5.2f",temp);
работает только с типом char.
Вот и возникает вопрос как быть в таких случаях. И хоть uint8_t и есть переназванный char
typedef unsigned char uint8_t;
но все же является уже оригинальным типом данных.
-
Здравствуйте
подскажите начинающему, как конвертировать числовой тип данных в строчный, если типы данных в используемых мной библиотеках объявлены не стандартно.
Существует функция вывода текста на экран:
typedef unsigned char uint8_t; typedef unsigned short int uint16_t; void GUI_Text(uint16_t Xpos, uint16_t Ypos, uint8_t *str,uint16_t Color, uint16_t bkColor) { uint8_t TempChar; do { TempChar = *str++; PutChar( Xpos, Ypos, TempChar, Color, bkColor ); if( Xpos < MAX_X - 8 ) { Xpos += 8; } else if ( Ypos < MAX_Y - 16 ) { Xpos = 0; Ypos += 16; } else { Xpos = 0; Ypos = 0; } } while ( *str != 0 ); }
И есть переменная, значение которой необходимо вывести на экран:
float temp; temp = 345/16;
Пробовал так:
#include "stdlib.h" #include "string.h" float temp; uint8_t tpre; temp = 345/16; sprintf(tpre,"",temp) strcat(tpre, " C"); GUI_Text(10, 10, &tpre,White, Black)
Результат отрицательный. Помогите советом, как сделать правильно?
-
Я пробовал библиотеку бесплатную от MICROCHIP. Она в исходниках ... Тоже вполне рабочая... ))
А есть какой-нибудь простенький пример проекта с этой библиотекой на STM32?
-
...GUIDRV_FLEXCOLOR_M16C0B16 [/b]- формат шині ( 16bpp, no cache, 16 bit bus)
Это ведь актуально для подключения LCD к MCU по примеру демоплаты от ST (32F429IDISCOVERY)?
А для подключения, имеющегося сейчас у меня на руках, в текущей компиляции библиотеки STemWin режима работы шины данных нет.
LM3150 не заводится
в Силовая Преобразовательная Техника
Опубликовано · Пожаловаться
подскажите как надо разводить, основные нюансы, на которые стоит обратить внимание в этой схеме