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

Rimsky

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

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

  • Посещение

Репутация

0 Обычный

Информация о Rimsky

  • Звание
    Участник
    Участник
  1. Попробую, спасибо! Хотя на практике и 1N4148 работает и не разу не вылетел, но ХЗ
  2. Всем спасибо! Решил ограничиться выбором диода по мощнее (S1B) , думаю все будет Ок.
  3. Ну дык зарядный ток конденсатора с низким ESR (X7R) приличный, хоть и кратковременный. По даташиту до 8А в коротком uS импульсе может диод протянуть. Но при 48В получается больше 10А. Тем более напряжение высокое 48В. Вот и спрашиваю, правильно считаю или нет.
  4. Источник могучий 300W. 50mA это как раз DC/DC который питает схему управление этим девайсом, развязать его диодом необходима для того, чтоб когда качает мощь на выход в нагрузку, не высасывала этот кондер и шимка не глючила.
  5. Добрый день! Подскажите пожалуйста, кто в теме: Есть входной конденсатор X7R 1uFx100V, который необходимо зарядить через диод до уровня входного напряжения 48V. Как это отразиться на диоде 1N4148WS? Не крякнет ли он когда нибудь от начального зарядного тока.Спасибо!https://yadi.sk/i/YN6vXmIWdbNe-Q
  6. Приветствую, коллеги! Покритикуйте пожалуйста мою трассировку. Это первый опыт трассировки гигабитного эзернета. Посоветуйте пожалуйста, кто имеет опыт. Можно ли так соединять защитную диодную сборку к диф. линии? Нужно ли выравнивать длины диф пар, и на сколько допуск? И еще здесь проскочила мысль, что в разъеме RG45 одна линия подключения трансформатора, короче другой на величину расположением падов, есть ли у кого подтверждение этого предположения? Спасибо! На материнской плате компа видел похожее фото Еще вопрос: когда рассчитываю волновое сопротивление проводника для стандартного стека значение ширины проводника в 50 Ом составляет 0,27мм, правильно ли я все рассчитал? И на сколько важно это сопротивление для не диф. линий интерфейса драйвера RGMII
  7. Проблема с usart

    Да это частота внешнего кварца. Библиотечный файл можно и не править, достаточно объявить это определение, например так: #ifndef __GLOBALS_H #define __GLOBALS_H #define HSE_VALUE ((uint32_t)4096000) #include "stm32f10x.h" #include "stm32f10x_conf.h"
  8. Проблема с usart

    Нет, HSE_VALUE я установил 4096000 #if !defined HSE_VALUE #ifdef STM32F10X_CL #define HSE_VALUE ((uint32_t)25000000) /*!< Value of the External oscillator in Hz */ #else #define HSE_VALUE ((uint32_t)4096000) /*!< Value of the External oscillator in Hz */ #endif /* STM32F10X_CL */ #endif /* HSE_VALUE */
  9. Проблема с usart

    В общем так я и поступил. Смутило то, что SPL взято с stm32gui_lib в котором идет явная привязка к МК STM32F10x.... В расчете baud rate для USARTA есть вызов процедуры RCC_GetClocksFreq(&RCC_ClocksStatus); Которая инициализирует значения структуры RCC_ClocksStatus элементы которой участвуют в расчете. В этой процедуре и фигурирует определение HSE_VALUE. Если оно не соответствует Вашему кварцу, то и расчет будет не верным. У меня кварц на 4096000, что отличается от дефолтного в 2 раза, вот тут то и были грабли.
  10. Проблема с usart

    Читал, только в МК STM32F100C4T6 такого бита в регистре USART_CR1 нет. В прочем с этим я разобрался. :)
  11. Проблема с usart

    Открыл исходник (stm32f10x_usart.c) там в функции USART_Init(...) обнаружен такие строчки : /* USART OverSampling-8 Mask */ #define CR1_OVER8_Set ((u16)0x8000) /* USART OVER8 mode Enable Mask */ #define CR1_OVER8_Reset ((u16)0x7FFF) /* USART OVER8 mode Disable Mask */ if ((USARTx->CR1 & CR1_OVER8_Set) != 0) { /* Integer part computing in case Oversampling mode is 8 Samples */ integerdivider = ((25 * apbclock) / (2 * (USART_InitStruct->USART_BaudRate))); } else /* if ((USARTx->CR1 & CR1_OVER8_Set) == 0) */ { /* Integer part computing in case Oversampling mode is 16 Samples */ integerdivider = ((25 * apbclock) / (4 * (USART_InitStruct->USART_BaudRate))); } Кто объяснит, где в регистре USART_CR1 бит (CR1_OVER8) ??? Разобрался, для корректной работы с SPL нужно определить HSE_VALUE (частоту внешнего кварца), если это значение не определено, то из файла STM32f10x.h подставляется дефолтное: #if !defined HSE_VALUE #ifdef STM32F10X_CL #define HSE_VALUE ((uint32_t)25000000) /*!< Value of the External oscillator in Hz */ #else #define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */ #endif /* STM32F10X_CL */ #endif /* HSE_VALUE */
  12. Проблема с usart

    Здравствуйте друзья. Инициализировал USART1 (МК STM32F100C4T6) при помощи стандартной библиотеки STDLib GPIO_InitTypeDef GPIO_InitStruct; USART_InitTypeDef USART_InitStructure; #if !defined REMAP_USART1 // Включаем тактирование порта А и USART1 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_USART1, ENABLE); // Настраиваем ногу TxD (PA9) как выход push-pull c альтернативной функцией GPIO_InitStruct.GPIO_Pin = GPIO_Pin_9; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_Init(GPIOA, &GPIO_InitStruct); GPIO_InitStruct.GPIO_Pin = GPIO_Pin_10; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA, &GPIO_InitStruct); #else /** USART1 GPIO Configuration PB6 ------> USART1_TX PB7 ------> USART1_RX */ /*Enable or disable APB2 peripheral clock */ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO | RCC_APB2Periph_USART1, ENABLE); /*Configure GPIO pin */ GPIO_InitStruct.GPIO_Pin = GPIO_Pin_6; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOB, &GPIO_InitStruct); /*Configure GPIO pin */ GPIO_InitStruct.GPIO_Pin = GPIO_Pin_7; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IPU; GPIO_Init(GPIOB, &GPIO_InitStruct); /*Configure peripheral I/O remapping */ GPIO_PinRemapConfig(GPIO_Remap_USART1, ENABLE); #endif USART_StructInit(&USART_InitStructure); USART_InitStructure.USART_BaudRate = 9600*2; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No; USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_Init(USART1, &USART_InitStructure); /* Enable the USART1 */ USART_Cmd(USART1, ENABLE); /* Enable USART1 Receive and send interrupts */ USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); USART_ITConfig(USART1, USART_IT_TC, ENABLE); NVIC_EnableIRQ(USART1_IRQn); // Разрешение прерывания USART1 Но вот символьная скорость вместо 9600 бод как заказывал, в 2 раза меньше. В чем может быть причина?
  13. Помогите с at90usb162.

    Вот тут http://www.fourwalledcubicle.com/index.php проект LUFA есть хорошие примеры реализации USB на AVR
×
×
  • Создать...