Есть необходимость по выводу фрейма через SPI запускать таймер. Как это сделать руками в обработчике прерывания SPI, вопросов не вызывает. Однако, это как-то совсем не изящно. По идее, можно попробовать завести ногу NSS на вход ETR таймера и это вроде бы будет полностью аппаратным решением, но тоже как-то выглядит не очень. Может быть есть какое-то решение, чтобы окончание передачи по SPI аппаратно запускало таймер ?
Мне ничего не известно о том, что DMA умеет устанавливать биты где-либо, кроме своих собственных регистров. Если речь идет об установлении бита программно из обработчика прерывания DMA, то такая возможность известна, но интересует, нет ли чисто аппаратного решения, чтобы получалась более жесткая синхронизация между окончанием передачи и запуском таймера.
Установка бита CEN по факту есть копирование числа из одной ячейки памяти(DMA_CMAR) в другую ячейку(DMA_CPAR). Запуском DMA является событие окончания приёма(или передачи). Длина пересылки = 1 слово(регистр CR1 таймера). Получается всё аппаратно без каких-либо прерываний.
Устанавливаю GNU для CooCox v.2 beta (система Windows XP Professional SP3), выскакивает вот такая ошибка, и установка не может завершится. У кого какие предположения есть по этому поводу?
в архиве скачать и распаковать куда ни будь - например у меня D:\GCCARM (имхо лучше в корне папка). Качал архив тут: https://launchpad.net/gcc-arm-embedded файл gcc-arm-none-eabi-4_9-2015q1-20150306-win32.zip Кокос работает, вин 8.1. В переменные среды, на всякий, прописал путь D:\GCCARM\bin
Попробовал подключить батарейку к STM32F0Disco. Убрал SB1 и установил C17. Все работает, часы идут при отключении питания. Решил измерить ток - при работающем от источника питания потребление с батарейки - 33 мкА , если отключить питание - 1 мкА. Это нормально? Мне кажется при наличии питания не должно брать от батареи.
kapitan0v писал(а):Попробовал подключить батарейку к STM32F0Disco...
в документации есть такое:
Battery backup domain To retain the content of the Backup registers and supply the whole RTC domain when VDD is turned off, VBAT pin can be connected to an optional standby voltage supplied by a battery or by another source. The VBAT pin powers the RTC unit, the LSE oscillator and the PC13 to PC15 IOs, allowing the RTC to operate even when the main power supply is turned off. The switch to the VBAT supply is controlled by the Power Down Reset embedded in the Reset block or (on STM32F0x8 devices) by the external NPOR signal. Warning: During tRSTTEMPO (temporization at VDD startup) or after a PDR is detected, the power switch between VBAT and VDD remains connected to VBAT. During the startup phase, if VDD is established in less than tRSTTEMPO (Refer to the datasheet for the value of tRSTTEMPO) and VDD > VBAT + 0.6 V, a current may be injected into VBAT through an internal diode connected between VDD and the power switch (VBAT). If the power supply/battery connected to the VBAT pin cannot support this current injection, it is strongly recommended to connect an external low-drop diode between this power supply and the VBAT pin.
Из прочтенного делаю вывод что для кристалла STM32F407 максимальное время дискретизации равно 3+12=15 и делим на частоту PCLK2 (42 MHZ) и получаем в итоге 0,357 мкс. Таким образом умножив 0.357 на 12 бит получим время одного сканирования 5 мкс?Верно?
Где то читал что максимальная частота PCLK2 = 32 MHZ- но в datasheet-е про это ничего не нашел.
Вроде еще есть дуальный режим - объединение АЦП кристала, которое якобы позволяет уменьшить это время...
Правильно ли я понимаю, что с контактов 1 и 2 (Target Vcc) напряжение должно подаваться с программатора на чип (режим SWD)? Имею ST-Link V1, и, при попытке обращения к чипу (утилитой STM32 ST-Link), на в/у контактах ничего не появляется. Если подать питание напрямую с 19 пина, то и чтение и программирование проходит без проблем. Это так и должно быть, или где-то косяк (программатор достался б/у)?
эти контакты подключаются к шине питания программируемого МК. и программирование происходит при поданном на таргет (плату) напряжении питания. По ним програматор определяет величину напряжения питания, и от него же работает транслятор уровней (если ст-линк честный и он там есть ) так как камень может работать и на 2V.
Собственно, у меня вопрос на миллион. Известно, что с помощью отладчика, в МК STM32 можно править регистры, переменные в ОЗУ и вообще все, что имеет атрибуты rw. Соответственно, есть возможность порулить периферией прямо из отладчика. Меня интересует вопрос: А есть ли готовые утилиты, позволяющие шить отладчиком (ST-LINK или аналогичный) внешние FLASH и EEPROM, подключенные к SPI или I2C камня, прямо через отладочные интерфейсы? Ну, приблуда к OpenOCD или что-нибудь в таком роде?
I am DX168B and this is my favourite forum on internet!
Smen писал(а):Да вроде "честный", но работал без подачи этого напряжения.
С ст-линком особо не разбирался - работает и работает, а вот J-Link при таких извратствах ( нет напряжения тагерта, или оно не в диапазоне для прошивки) посылает далеко и сразу. Ну и главное - делай как написал производитель и будет щастье)))