Jump to content

Скептик

Members
  • Content Count

    295
  • Joined

  • Last visited

Everything posted by Скептик

  1. Lexter, я просил помощь советом, а не пространственную критику. У каждого класса устройств свои особенности. Будь ты хоть мегапроффи в ремонте и настройке блоков управления коррекцией орбиты спутников, можешь и не догадаться как стартует диагностика гироскутера. Тот кто на этом ремонте сидит не первый год, наверняка сталкивался с таким дефектом и подскажет пути по его устранению. А если бы была полная документация с исходниками прошивки и сервисмануалом по ремонту, то я бы воспользовался первоисточником и сам бы давал советы.
  2. Здравствуйте! Я в ремонте не проффи, информации в широком доступе не нашёл, поэтому прошу помочь советом. Недавно попал в ремонт гироскутер. При нажатии на кнопку включения индикатор батареи загорался красным. Батарея жива (проверили на другом скутере). Управление на двух одинаковых платах. "Пошёл по проводам". На одной плате нашёл неисправный элемент - J127G (пробит переход ЭК). За ней следует преобразователь на аналогичном транзисторе MJD127G. Далее питание поступает на преобразователи 5V, 3,3V, для контроллеров. Силовые ключи двигателей запитаны отдельно. Вначале J127G полностью открыт, но при нажатии на кнопку включения на исправной плате он закрывается. Пока жду деталь, хочу спросить, зачем нужен этот узел защиты, или мягкого старта? Какова его логика работы?
  3. Подскажите, что означает "время выборки" в характеристике АЦП. На что оно влияет. В STM32F4xx время выборки может составлять от 3 до 480 тактов.
  4. Попробовал. Сработало. Не проходит прерывание от часов. Разбираюсь.
  5. Пробовал, не получается и EXTI_IMR и EXTI_EMR...
  6. Новая проблема - не могу организовать прерывание от RTC по будильнику. Делаю так: 1. Определяю адрес прерывания от RTC в таблице векторов: По адресу 228 записываю адрес обработчика прерываний + 1; 2. Разрешаю прерывания от RTC (41-я линия): Регистр NVIC_ISER1 = 0x0200; 3. Устанавливаю время тревоги по будильнику A каждый день в 00:00:00 : Регистр RTC_ALRMAR = 0x8000 0000; 4. Включаю будильник A: Бит RTC_CR_ALRAE = 1; 5. Разрешение прерываний от будильника A: Бит RTC_CR_ALRAIE = 1. Прерывания не происходит. Подскажите, что не так?
  7. Как всегда - невнимательность. Забыл затактировать контроллер питания - бит RCC_APB1ENR_PWREN. snn_krs, огромное спасибо за подсказку !
  8. Нашёл в RM0090 описание PWR_CR, бит DBT. Установил вперёд всего . Не помогло. Продолжаю разбираться...
  9. Да я на ассемблере пишу, не на СИ. Пункт 7, 8 как раз и есть разрешение доступа к регистрам RTC (документ AN 3371). Попробовал от LSI, такая же беда.
  10. Забыл пункт 6.2 Циклическая проверка включения LSE: Читаю из регистра RCC_BDCR флаг LSERDY, пока он не установится в 1.
  11. Привет! Новый вопрос от начинающего ассемблерщика. МК STM32F407VGT6. Не могу включить RTC. Алгоритм такой: 1. Включение тактирования GPIOC: В регистре RСC_AHB1ENR бит GPIOCENR = 1 2. Выбор назначения пинов PC14, PC15 как альтернативной функции: Регистр GPIOC_MODER = 0xA000 0000 = 0b1010 0000 0000 0000 0000 0000 0000 0000 3. Выбор номера альтернативной функции для пинов PC14, PC15: Регистр GPIOC_AFRH = 0xFF00 0000 4. Выбор источника тактирования RTC от LSE: В регистре RСC_BDCR биты RTCSEL[1:0] = 01; 5. Включение тактирования LSE: В регистре RСC_BDCR бит LSEON = 1; 6. Включение тактирования RTC: В регистре RСC_BDCR бит RTCEN = 1; 7. Снятие блокировки изменения регистров RTC: В регистр RTC_WPR записываю 0x00CA, затем 0x0053; 8. Включение режима инициализации RTC: В регистре RTC_ISR бит INIT = 1; 9. Циклически проверяю включение режима инициализации RTC: Читаю из регистра RTC_ISR флаг INITF. Флаг равен 0, режим инициализации не включается. Подскажите, где ошибка.
  12. Спасибо, с этим уже разобрался. Кривые руки, точнее, мозг. Обычная невнимательность и неаккуратность. МК STM32VGT6. Следующий вопрос: внутренняя периферия, к которой относится SysTick, не имеет bit-band адресации?
  13. Здравствуйте! Осваивал метод bit-band применительно к портам. В регистре GPIOx_ODR удалось сбросить бит, но не удаётся его установить в чём подвох?
  14. Я имел ввиду использование команды поиска идентификаторов. Если на шине, несколько датчиков, то при подаче команды "поиск ROM" (0xF0) они все одновременно начнут выдавать свои идентификаторы в шину. Вопрос был в том, как их разделить. Недавно сам нашёл ответ на свой вопрос в документации производителя. Это не сложно, но муторно.
  15. Здравствуйте! STM32F407GT Регистр GPIOx_OSPEEDR для конфигурации скорости тактирования портов. Прошу пояснить в каком случае какие скорости выбирать, как это отражается в конфигурации МК на аппаратном уровне.
  16. Не могу понять, как работает процедура поиска идентификатора, если на шине несколько датчиков. Они не будут отвечать одновременно?
  17. Здравствуйте! 1. Подскажите, пожалуйста, отличия DS1822 от DS18b20. 2. При подключении DS18xx с неизвестным идентификатором запрос на получения идентификатора следует отправлять только при отсутствии других DS18xx на данной шине?
×
×
  • Create New...