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

Ivan Rusev

Members
  • Постов

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

  • Посещение

Весь контент Ivan Rusev

  1. Протеус интерфейс криво определяет.Только в железе
  2. cmsis.Куб?.И лучше всего в прерівании по иаймеру. Хал .Лучше LL. Прошиваете через usb?.swio лучше
  3. if()-если(условие) else()-иначе (условие)
  4. Как то криво работает преобразование Буду дальше в лес идти.Может много дров принесу на форум.Потихоньку сдвигается с места задача.Задача повторить Бобр AVR(станция управления с защитой по току).На инжект каналах не хотелось бы.По ДМА хочу.
  5. Если бы я был умный я не спрашивал вас спецов.STM32F407VE проблема в том что преобразовуется 1 канал по счёту это может быть 0-10 .а дальше не происходит сканирование.В Инжект каналах у меня в прерываниях всё получилось.Сдесь с ДМА ? Я понял в чём проблема в алгоритме.Каналы переключаются .Но вот буфер один а как вытащить с масива одну единицу?
  6. Stm32f407 Вобщето в серии F4 RM регистры все одинаковые . Прерывание по DMA конечно не связано по АЦП.ИНжект каналы 4 по ацп в прерывании мне удалось заппустить правда с запуском таймером а не стартовим битом.Мне неудаётся запустить два канала ацп в прерывании по DMA? 2 канала
  7. это верно поэтому и спрашиваю как запустить ADC более одного канала в прерывании по DMA ?
  8. Не получается у меня запустить несколько каналов АЦП в прерывании по DMA.Чего не хватает?
  9. Этот макрос ни везде работает.Даже в тактировании.Я много чего не знаю.Вот по этому спрашиваю.RM читаю с переводом.Сей час иногда фразы понимаю без перевода.
  10. CC->APB1ENR |= RCC_APB1ENR_TIM2EN; //подаем тактирование TIM7 TIM2->PSC = 60000; //настроить делитель для формирования миллисекунд TIM2->ARR = 1000; // 500 mS TIM2->DIER |= TIM_DIER_UIE; //разрешить событие от таймера TIM2->CR1 |= TIM_CR1_CEN; //разрешить перезагрузку и включить таймер NVIC_EnableIRQ(TIM2_IRQn); Это вы мне?Эсли вы посмотрите мой код от этого ничем не отличается.Тактирование настроенно не по примерам.А методом тыка.Примеры толлько на F1 серии есть. Куда нам до вас .Вы доценты.А мы абитуриенты.Всё что написано мной.Немного отличается от вашего.Простинько и понятно.Может 1 или 2 бита лишних.Но то что я смотрел и у вас и в нете страх и ужас.Человек может не понял.Что програмированние(самообучение)методом проб и ошибок.Вам вобщето спасибо.Я тежело но двигаюсь к своей цели.Проект самодельный частотник.
  11. А зачем это? Бит отключён.Таймер нужно включить.Сначало настроить потом включить. TIM12->SR &= ~(TIM_SR_UIF);Этот бит мне кажется в прерываниях устанавливается и сбрасываеться.
  12. Точносчть от тактирования.У вас настроен скорей всего на HSI(внутренне тактирование.А оно не стабильно.Спецы могут мне ещё один минус поставить.И мне кажется я не берусь говорить что я прав но TIM2->PSC =0 ; // TIM2->ARR=24000-1 ; при частоте тактирования 24 000 000 Гц . раняется 1 кГц
  13. Понял.Будем эксперементировать.Спасибо
  14. Но их в прерывании нужно как то прописывать.Это 5 каналов Значить в буфере значений 5 .допустим от 1 до 5.Массив?
  15. А если 5 входов ADC использовать 10 то буферов столько же?
  16. Ни совсем.Задача усложнилась .Нужно два вывода АЦП прописать.Настроить я знаю как .И один управляет одним светодиодом(портом).А другой другим светодиодом(портом). А буфер один.Вот тогда с АЦП будет всё.На AVR знаю как это сделать а на STM? А ШИНа КАН а ЦАП
  17. Как настроить ДМА на 2 и больше каналов?.С Инжект каналы проще там 4 DR а в регулярных каналах 1.А как же в прерывании по ДМА чтобы разные какналы управляли разными GPIO.Или два канала управляют одним портом? main.c А буфер один
  18. Я извеняюсь.Всё сделано.Усложню задачу попробую запустиь 2 -3 канала.ИЗвените main.c
×
×
  • Создать...