Например TDA7294

Форум РадиоКот • Просмотр темы - STM32F030 ADC Handler CMSIS
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 16, 2024 15:38:01

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 27 ]    , 2
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: STM32F030 ADC Handler CMSIS
СообщениеДобавлено: Чт янв 07, 2021 13:31:34 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
стандартным вызовом. Разве это запрещено?
С дуру и хрен сломать можно.

Добавлено after 1 minute 50 seconds:
Вообще то я пользуюсь практикой SPL, не прибегая к ней самой. Там все выглядит именно так - проверка разрешения && проверка флага - сброс флага - обработчик.
Куда полезней своей головой пользоваться.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32F030 ADC Handler CMSIS
СообщениеДобавлено: Чт янв 07, 2021 13:34:24 
Сверлит текстолит когтями

Карма: -10
Рейтинг сообщений: 93
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1150
Рейтинг сообщения: 0
Что не так?
Имха - неопределённый порядок чтения volatile-регистров.
Хотя возможно тут зависит от компилятора.... :dont_know:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32F030 ADC Handler CMSIS
СообщениеДобавлено: Чт янв 07, 2021 13:44:45 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
jcxz, вы абсолютно правы. Правая часть && не будет выполнена, если левая false. Это значит чтения из ADC1->ISR не произойдёт. А такое чтение, для некоторых периферийных устройств может менять состояние флагов.
Код:
//void ADC_IRQHandler (void)
//{
//  if ((ADC1->IER & ADC_IER_ADRDYIE) && (ADC1->ISR & ADC_ISR_ADRDY))
        MOV      R0,#+1342177280
        LDR      R1,[R0, #+4]
        LSLS     R2,R1,#+31
        BPL.N    ??ADC_IRQHandler_0
        LDR      R1,[R0, #+0]
        LSLS     R2,R1,#+31
        ITT      MI
//    ADC1->ISR = ADC_ISR_ADRDY;
        MOVMI    R1,#+1
        STRMI    R1,[R0, #+0]
//}
??ADC_IRQHandler_0:
        BX       LR               ;; return


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: STM32F030 ADC Handler CMSIS
СообщениеДобавлено: Чт янв 07, 2021 13:54:12 
Сверлит текстолит когтями

Карма: -10
Рейтинг сообщений: 93
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1150
Рейтинг сообщения: 0
Правая часть && не будет выполнена, если левая false. Это значит чтения из ADC1->ISR не произойдёт. А такое чтение, для некоторых периферийных устройств может менять состояние флагов.

Я о чём и говорю. Поэтому думаю - или у ТС в свойствах проекта выставлено подавление варнингов, или он просто не обращает внимания на них при компиляции или регистры определены неверно (без volatile) или ...?


Вернуться наверх
 
Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32F030 ADC Handler CMSIS
СообщениеДобавлено: Чт янв 07, 2021 14:18:48 
Собутыльник Кота

Карма: 36
Рейтинг сообщений: 808
Зарегистрирован: Ср ноя 29, 2017 06:58:50
Сообщений: 2906
Рейтинг сообщения: 0
А разве на это выдаются предупреждение? Возможное невыполнение части условия - стандартное поведение, о котором просто надо помнить.


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32F030 ADC Handler CMSIS
СообщениеДобавлено: Чт янв 07, 2021 14:25:38 
Сверлит текстолит когтями

Карма: -10
Рейтинг сообщений: 93
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1150
Рейтинг сообщения: 0
А разве на это выдаются предупреждение? Возможное невыполнение части условия - стандартное поведение, о котором просто надо помнить.
Лучше в начале ISR прочитать регистр флагов прерываний в локальную переменную и работать уже ней.
Да и не нужно многократно читать эти флаги (если обрабатывается несколько разными ветками алгоритма).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32F030 ADC Handler CMSIS
СообщениеДобавлено: Чт янв 07, 2021 14:39:21 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
Поэтому думаю - или у ТС в свойствах проекта выставлено подавление варнингов, или он просто не обращает внимания на них при компиляции или регистры определены неверно (без volatile) или ...?
Не, всё у него верно определено. Описания регистров из CMSIS взяты. Компиляторы действительно молчат.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 27 ]    , 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y