Например TDA7294

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





Текущее время: Вт апр 16, 2024 20:58:45

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


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



Начать новую тему Ответить на тему  [ Сообщений: 82 ]    , , , 4,  
Автор Сообщение
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Чт янв 13, 2022 20:56:53 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
tonyk, Измерительный осцилл непростой проект, двигаемся малыми шажками. Именно для измерения низких частот и нужен период. Н743 имеет хорошие оперы на борту с калибровкой.
• 2× operational amplifiers (7.3 MHz bandwidth)


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 18:06:48 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
Измерительный осцилл кроме разных напряжений должен измерять частоты и периоды. В Н743 есть таймер высокого разрешения 2nS и возможность CubeIDE в один клик настроить измерение параметров ШИМ сигнала, длит. импульса и период. Параллельно на другом таймере считаем импульсы за секунду для более точного измерения на высоких частотах.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 19:24:19 
Электрический кот

Карма: -4
Рейтинг сообщений: 70
Зарегистрирован: Вт ноя 19, 2019 06:10:18
Сообщений: 1054
Рейтинг сообщения: 0
HAL и скорость- вещи несовместимые. Как не столкнусь с ХАЛом, так постоянно вижу туеву хучу кода на все случаи жизни, особенно в обработчиках прерываний. Так что осваивай работу с периферией напрямую.


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

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

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 19:42:44 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21790
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
возможность CubeIDE в один клик
Только проблема в том, что возможность сделать в один клик тотально уничтожает три четверти возможностей периферии, сводя все к тупейшим вариантам использования. Это терпимо лишь для тех, кто ставит типовые и простые задачи.


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

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

Подробнее>>
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 19:58:18 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
tonyk, HAL_TIM_ReadCapturedValue(&htim1, TIM_CHANNEL_1);
Так нельзя? Там же данные защелкнулись. CubeIDE(MX) настраивает работу таймеров на внутренних связях по железу.

Добавлено after 5 minutes 34 seconds:
КРАМ, Как сделать в один клик тоже полезно знать, если читать и переводить 4000стр. даташита нет времени.


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 20:08:05 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21790
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
переводить 4000стр. даташита нет времени.

А их сразу все и не требуется читать. Задачи решают по частям, выстраивая их под требуемую периферию и ее особенности.
Для того, чтобы работать с АЦП-ДМА, не требуется сильно вникать в интерфейсы экранной графики.
Кстати, нажимая на кнопки конфигуратора, тоже нужно понимать к чему это приведет... Такшта даташит придется таки читать.
Не вникал в фичи конкретно Н7, но нынче полно МК с разрешением быстрого ШИМ от 250 пс (0,25 нс) и даже менее. При относительно низкой частоте накачки самого МК.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 20:11:36 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
Кстати, в CubeIDE для прерываний создается отдельный файл типа stm32хxx_it.c и там можно обрабатывать прерывания. Зачем еще тащить обработчик в main.c?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 20:14:43 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21790
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
для прерываний создается отдельный файл

И что? Создать отдельный файл можно вообще для одной функции, если в этом будет хоть какой то смысл.
Разговор шел о том, что работа через колбэки и кучу универсальных проверок в прерываниях тупо тормозят исполнение кода настолько, что прерывания теряют свой изначальный смысл инструмента реального времени.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 20:16:00 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
КРАМ, делать ШИМ и читать ШИМ это может быть не одно и тоже.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 20:16:33 
Электрический кот

Карма: -4
Рейтинг сообщений: 70
Зарегистрирован: Вт ноя 19, 2019 06:10:18
Сообщений: 1054
Рейтинг сообщения: 0
linkov1959, я не пользуюсь ХАЛом, а если пользуюсь, то как затычкой-времянкой, когда нет времени долго вникать, а нужен результат здесь и сейчас. Потом переписываю под свою задачу без всяких ХАЛов. А уж если задача изначально требует выжимать из "железа" все соки, то тут хошь-не-хошь, но вникай в работу "железа". Кстати, на ХАЛ мурзилка нифига не маленькая, например, UM1095- это описание HAL на F7 размером чуть меньше 2000 страниц.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 20:22:47 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21790
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
делать ШИМ и читать ШИМ это может быть

Я не знаю что вы имеете ввиду, но захват (Input Capture) в этих шимах тоже имеется. Хотя понятно, что методы высокого разрешения для пикосекундного Output Compare не применимы для реального счета в Input Capture. Однако и 2 нс это огромный пласт МК с гораздо меньшими тактовыми частотами, нежели Н7. Обычно все эти ШИМы работают на своем осцилляторном домене.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 22, 2022 20:25:20 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
tonyk, я сначала отрабатываю проекты на f103 по готовым примерам, а потом переношу на h743 и HAL это делает.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Вс янв 23, 2022 18:05:34 
Электрический кот

Карма: -4
Рейтинг сообщений: 70
Зарегистрирован: Вт ноя 19, 2019 06:10:18
Сообщений: 1054
Рейтинг сообщения: 0
tonyk, я сначала отрабатываю проекты на f103 по готовым примерам, а потом переношу на h743 и HAL это делает.

КРАМ тебе верно сказал, что ХАЛ не способен переносить проекты один-в-один. Сам посуди, в F1 и F7, например, разные UART, поэтому то, что делается в F7 аппаратно невозможно сделать в F1. То есть код, работающий на F1, не сможет использовать возможности UART, установленный в F7. Обрати внимание на название файлов в ХАЛ. Файлы с суффиксом "_ex" как раз и содержат эти специфические функции.
ИМХО, СТМ неправильно сделала ХАЛ. Например, одинаковые UART в F0 и F7, F1 и F4. Вот и надо быдло группировать периферию по версиям. В F1 и H7 разные АЦП, поэтому невозможно сделать перенос кода. Сделать тупую оцифровку одного инжектированного канал- да, можно. А вот, например, оцифровать 2 диффканала с автоматическим смещением и усреднением по 4 точкам и записью в мамять через DMA, например, на Н7 можно, а вот на F1- нельзя, нет у него таких функциональных блоков.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Вс янв 23, 2022 18:39:58 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
tonyk, один в один не переносится, но я стараюсь по мере сил. Хотел запустить HTIM по быстрому, но придется учить матчасть, но даташит читать не буду - языкам не обучен.:)


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Сб янв 29, 2022 22:06:45 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
Этот HTIM больше для ШИМ придуман, частотомер на TIM1 и TIM2 сделал, работает отлично до 250Мгц. Очень легко в кубе настраивать синхронно два таймера.
1 таймер запускает 2 таймер, который по счетному входу считает, пока не переполнится 1 таймер, настроенный на 1 импульс 1сек. В колбеке 1 таймера выводится счетчик 2 таймера, как частота и запускается снова.
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
if(htim == &htim1)
{
count = __HAL_TIM_GET_COUNTER(&htim2)*8; // значение в счётчике таймера №2, вывод инфы.

HAL_TIM_Base_Stop_IT(&htim1);

// обнуляем счётчик и рестартуем таймер №1 //
__HAL_TIM_SET_COUNTER(&htim2, 0x0000);

HAL_TIM_Base_Start_IT(&htim1);
}
}
https://drive.google.com/file/d/1DBh4Dt ... sp=sharing


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Вс янв 30, 2022 14:16:50 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
Измеряем период, тут нужно захватывать фронта. Настраиваем в кубе таймер на два канала директ-индирект. В колбеке 1 канала делаем всё.

void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)
{
if (htim->Instance == TIM5)
{
if(htim->Channel == HAL_TIM_ACTIVE_CHANNEL_1)
{
//TIM2->CNT = 0;
period = HAL_TIM_ReadCapturedValue(&htim2, TIM_CHANNEL_1)+2;
pulse = HAL_TIM_ReadCapturedValue(&htim2, TIM_CHANNEL_2)+2;

}
}
}
Таймер обнуляем не в колбеке, а по железу настройками в кубе.
https://drive.google.com/file/d/1O8KG6a ... sp=sharing
Итого - с помощью куба и нескольких строчек кода получаем полнофункциональный частотомер. Частоту считает Tim2, период и импульс Tim5, они 32бит. На LCD выводится частота ВЧ, период(частота НЧ), ширина импульса. Точность превосходная.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Вс янв 30, 2022 17:21:14 
Электрический кот
Аватар пользователя

Карма: 4
Рейтинг сообщений: 135
Зарегистрирован: Сб мар 09, 2013 11:29:22
Сообщений: 1020
Откуда: 40RUS, Жуков
Рейтинг сообщения: 0
Что то в кубе не видно TIM5. Может TIM17?

_________________
IVL ex UA6PJ OSC_F303


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Вс янв 30, 2022 17:43:51 
Опытный кот

Карма: -2
Рейтинг сообщений: 35
Зарегистрирован: Пн сен 10, 2018 19:16:28
Сообщений: 815
Рейтинг сообщения: 0
240265, отрабатывал код на Tim2, но тот занят будет на ВЧ частоту. Тим17 дает меандр на пинА1, Тим1 дает ШИМ - это всё для отладки. Для частоты и периода достаточно по одному таймеру, можно и один на всё, но идея иметь два входа по ВЧ и НЧ, там разная схемотехника входного усилителя-формирователя. Думаю создать отдельную тему по существу дела.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Пт май 05, 2023 15:07:25 
Грызет канифоль

Карма: 4
Рейтинг сообщений: 33
Зарегистрирован: Чт ноя 29, 2012 08:27:22
Сообщений: 295
Рейтинг сообщения: 0
Дергаю ножку вверх-вниз 50 раз подряд.
На F407 @168МГц и GCC один импульс получается 36 нсек (14 МГц на 50 импульсов) ( На Кейле - быстрее).
То же самoе на Н7 @400Мгц импульс 65 нсек(~8 МГц). Почему?
Спойлер#define SET_LEDG WRITE_REG(LEDG_GPIO_Port->BSRR, LEDG_Pin)
#define RESET_LEDG WRITE_REG(LEDG_GPIO_Port->BSRR, (LEDG_Pin << 16))

0800da34 <testGpio>:
__attribute__((section("ITCMRAM"))) void testGpio(void) {
800da34: b480 push {r7}
800da36: af00 add r7, sp, #0
SET_LEDG;
800da38: f44f 6380 mov.w r3, #1024 ; 0x400
800da3c: f6c5 0302 movt r3, #22530 ; 0x5802
800da40: f44f 7200 mov.w r2, #512 ; 0x200
800da44: 619a str r2, [r3, #24]
RESET_LEDG;
800da46: f44f 6380 mov.w r3, #1024 ; 0x400
800da4a: f6c5 0302 movt r3, #22530 ; 0x5802
800da4e: f04f 7200 mov.w r2, #33554432 ; 0x2000000
800da52: 619a str r2, [r3, #24]


А если эту ножку на Н7 передерну один раз, как строб, в прерывании таймера -
то длительность уже 380 нсек ??


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32h7**
СообщениеДобавлено: Пт май 05, 2023 16:40:15 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
Посмотрите на какой шине висит GPIO и какая у неё частота. Сколько шинных интерконнектов нужно пройти процессору чтобы до этой шины добраться. И оптимизацию на скорость включить.
С оптимизацией что-то такое должно быть
Код:
//using LED = TLed<GPIO::PE_8>;
//Repeat<5>([](){ LED::On(); LED::Off(); } );
        LDR.N    R2,??DataTable1 ; 0x48001014
        MOVS     R0,#+1
        STRB     R0,[R2, #+5]
        STRB     R0,[R2, #+7]
        STRB     R0,[R2, #+5]
        STRB     R0,[R2, #+7]
        STRB     R0,[R2, #+5]
        STRB     R0,[R2, #+7]
        STRB     R0,[R2, #+5]
        STRB     R0,[R2, #+7]
        STRB     R0,[R2, #+5]
        STRB     R0,[R2, #+7]


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

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


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

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


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

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


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