Jump to content

    

LCD

Участник
  • Content Count

    99
  • Joined

  • Last visited

Community Reputation

0 Обычный

About LCD

  • Rank
    Частый гость

Recent Profile Visitors

975 profile views
  1. Заменил контроллер на новый, всё заработало как надо. Очень подозреваю, что китайцы учатся подделывать и "большие" STM32.
  2. Абсолютно не видно, т. к. MISO висит на Vcc, а на SCK идут нормальные пачки импульсов. Попробовал, не помогло. Завтра буду перепаивать камень.
  3. Перепроверил код с использованием разных SPI на разрабатываемом устройстве и на отладочной плате Olimex с F405. На отладочной плате всё работает идеально - и читает, и пишет, последовательность установки бит в CR1 не важна. На устройстве как бы удалось запустить чтение, если одновременно установить биты CPOL и CPHA. Ещё есть какая-то закономерность с последовательностью установки бит в CR1, но я её целенаправленно не исследовал. Быстрые данные (десятки кГц на SCK) дают ноль в DR, хотя ёмкость у линий для такой частоты никакая и на осциллографе всё чётко. Если повесить MISO на Vcc, то в DR будет 254 или 65534, т. е. один бит всегда теряется. Проверял на SPI1 и SPI2. В первом сообщении я написал "Если повесить АЦП на SPI2 или SPI3 - всё нормально работает" из-за того, что перепроверял код на отладочных платах. После недели безуспешной возни начинают закрадываться подозрения в неисправности или поддельности контроллера, т. к. маркировка у него еле заметная по сравнению с чёткой маркировкой "нормальных" STM, но не думаю, что китайцам выгодно подделывать такой маловостребованный вариант контроллера, а с другой стороны, удивило, что он стоил дешевле более простого F407. Есть у кого какие-нибудь мысли?
  4. Мне и весь недописанный код не жалко выложить. Другие порты я инициализировал и проверял в отладчике.
  5. Естественно, я менял значение GPIOB->AFR[0] для SPI.
  6. Здравствуйте. Использую STM32F429IGT, на SPI1 висит АЦП MCP3208. На него подаются запросы от контроллера и они обрабатываются согласно даташиту (смотрел осциллографом), но после выполнения запроса в SPI1->DR всегда 0. Если повесить АЦП на SPI2 или SPI3 - всё нормально работает. Если перевесить MISO с PA6 на PB4 - не работает. RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN; GPIOA->MODER |= GPIO_MODER_MODER4_0 | GPIO_MODER_MODER5_1 | GPIO_MODER_MODER6_1 | GPIO_MODER_MODER7_1; GPIOA->AFR[0] |= 0x55500000; GPIOA->OSPEEDR |= GPIO_OSPEEDER_OSPEEDR4 | GPIO_OSPEEDER_OSPEEDR5 | GPIO_OSPEEDER_OSPEEDR7; RCC->APB2ENR |= RCC_APB2ENR_SPI1EN; SPI1->CR1 |= SPI_CR1_MSTR | SPI_CR1_BR | SPI_CR1_DFF; // master mode, prescaler 255, 16 bit SPI1->CR2 |= SPI_CR2_SSOE; SPI1->CR2 |= SPI_CR2_RXNEIE; SPI1->CR1 |= SPI_CR1_SPE; NVIC_EnableIRQ (SPI1_IRQn); NVIC_SetPriority (SPI1_IRQn, 15); Какая может быть причина?
  7. Рабочий диапазон температур - от -50 до +100. При повышении температуры выше +60, утечка база-коллектор у BC847/857 возрастает до недопустимых значений. Посоветуйте транзисторы с примерно такими же параметрами в таком же корпусе (SOT-23). Режим работы - ключевой.
  8. Пока остановился на варианте с двумя механически соединёнными моторами с энкодером и контролем тока на ведомом двигателе. Может быть, потом будет имитатор износа коллектора на тиристоре/транзисторах/реле. Девайс предназначается больше не для производства, а для разработчиков, т. е. для test-driven development на железячном уровне.
  9. Здравствуйте, есть задача сделать имитатор электромотора с целью тестирования блоков, которые моторами будут управлять. Рабочее напряжение - 110 В, ток - единицы ампер. Нужно имитировать различную нагрузку на мотор, застопоривание и, в идеале, различную степень износа коллектора, перегорание катушки и межвитковое замыкание. Блоки отслеживают не только активную составляющую, которую относительно просто сымитировать, но и индуктивную. Какие могут быть варианты построения схемы?
  10. Линейная схема греться будет всегда, а подогрев включается только ниже определённой температуры. Рабочий диапазон температур устройства - от -50 до +60.
  11. Одна часть схемы потребляет 12 вольт (~50 мА), другая - 3,3 (единицы мА), ещё есть подогрев на резисторах (несколько Вт), который можно питать любым напряжением. Проблемы такие: 1. У всех компонентов должна быть хорошая доступность в продаже. Если и использовать трансформатор, то только стандартный. 2. Свободно примерно 2 кв. см. двухсторонней платы, высота ограничена примерно 8 мм. Если делать "бутерброд", то останется ещё меньше. 3. Рабочая частота должна быть не менее 150 кГц, т.к. схема чувствительна к НЧ-помехам, поэтому отличные микросхемы LNK30* не подходят. Посоветуйте что-нибудь.
  12. Как лучше обозначать NSI45020 в соответствии с ЕСКД? Хотелось бы обозначить его как разновидность диода (типа стабилитрона, Шоттки и т.д.), а не как микросхему.
  13. С горем пополам запустил tremor-lowmem, так что вопрос отпадает. Больше всего проблем было из-за странностей IARа при работе с union-ами и 64-битной арифметикой.
  14. Ищу алгоритм сжатия звука с потерями, главные требования: 1. небольшие требования декодера к железу (STM32); 2. отсутствие фазовых искажений; 3. хорошая степень сжатия (10 и более раз). Пробовал Vorbis, он хорош, но требует более 128 кб ОЗУ, что плохо подходит для микроконтроллера. Сигнал - шумоподобный, не речевой, пик (и информационная составляющая) находится на частотах 30-200 Гц. Разрядность - 12 бит.
  15. Проблема решилась: нужно было правильно указывать CHANNEL_0_SRC