Найдено 55 результатов
Re: stm32 RTC
Классно генерирует) и что? тупик?
stm32 RTC
Приветствую всех!
У меня сложилась проблемка с RTC. Первый раз пробую поднять на камне stm32g070. Батарейка на VBAT, кварц 32768 на месте, в кубе все вроде как настроено. Проблема в том, что при при любом сбросе проца как и при подаче питания - часы опять в нулях. Странное поведение как для RTC ...
У меня сложилась проблемка с RTC. Первый раз пробую поднять на камне stm32g070. Батарейка на VBAT, кварц 32768 на месте, в кубе все вроде как настроено. Проблема в том, что при при любом сбросе проца как и при подаче питания - часы опять в нулях. Странное поведение как для RTC ...
Re: stm32 MPU
Я понял. Нельзя управлять MPU при включенном кэше
Re: stm32 MPU
Еррату не догадался почитать, спасибо! Сейчас посмотрю
uchar - это прикол Кейла. объекта нет, он ему такой тип присваивает. То такое
MPU_INSTRUCTION_ACCESS_DISABLE или ENABLE на кэширование не влияет, но что-то надо туда поставить. Пробовал оба варианта - результат одинаков (
------
в эррате про ...
uchar - это прикол Кейла. объекта нет, он ему такой тип присваивает. То такое
MPU_INSTRUCTION_ACCESS_DISABLE или ENABLE на кэширование не влияет, но что-то надо туда поставить. Пробовал оба варианта - результат одинаков (
------
в эррате про ...
stm32 MPU
Доброго всем времени суток!
Кто может подсказать, где я что не понимаю? Задача такая: есть камень stm32f745, ПО не использует ОС. Кэширование данных включено. Мне необходимо закрыть область буфера в ОЗУ от кэширования, дабы избежать недопониманий с ДМА. Скопировал решение с Куба, но все равно сразу ...
Кто может подсказать, где я что не понимаю? Задача такая: есть камень stm32f745, ПО не использует ОС. Кэширование данных включено. Мне необходимо закрыть область буфера в ОЗУ от кэширования, дабы избежать недопониманий с ДМА. Скопировал решение с Куба, но все равно сразу ...
- Ср фев 21, 2018 21:06:26
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
на этом я пока и остановился. привел все к double
- Вт фев 20, 2018 19:56:55
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
уже в runtime будет определяться что и с чем сравнивать. для ясности дам такой пример. есть, к примеру, датчик освещенности. пользователь хочет автоматически управлять освещением. он в неком конфигураторе к объекту "датчик освещенности" подключает объект "сравнение", а к нему объект "реле". на один ...
- Вт фев 20, 2018 13:15:05
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
[uquote="ARV",url="/forum/viewtopic.php?p=3312862#p3312862"] выполняет задачу сравнения. чего с чем неизвестно, пока этого не укажет пользователь в конфигураторе. у объекта два "входа" для аргументов, управление типами этими аргументами и "выход" < = > сюр какой-то... просто так сравнение чего-то с ...
- Вт фев 20, 2018 13:07:11
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
это один из виртуальных объектов общего конструктора. выполняет задачу сравнения. чего с чем неизвестно, пока этого не укажет пользователь в конфигураторе. у объекта два "входа" для аргументов, управление типами этими аргументами и "выход" < = >
- Пн фев 19, 2018 21:14:32
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
[uquote="AlphaLaiman",url="/forum/viewtopic.php?p=3307483#p3307483"]Поскольку оба аргумента занимают 4 байта, достаточно привести оба к uint32_t:
if( *((uint32_t*)arg1) == *((uint32_t*)arg2) )
{
/* Enter your code here */
} [/uquote]
нельзя. поскольку плавающая выглядит в памяти по-другому. и int ...
if( *((uint32_t*)arg1) == *((uint32_t*)arg2) )
{
/* Enter your code here */
} [/uquote]
нельзя. поскольку плавающая выглядит в памяти по-другому. и int ...
- Сб фев 10, 2018 12:44:20
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
в enum лежит только указание типа. не само значение. и enum по умолчанию 8 бит. если не вылезет за пределы или не указать вручную
- Сб фев 10, 2018 10:57:38
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
да. такая идея и есть. только double нужен из-за размерности беззнаковых 4-байтных
- Сб фев 10, 2018 09:07:21
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
Re: C++ сравнение данных с заранее неизвестными типами
Я решил всем аргументам выделить еще по 4 байта и сравнивать их как double
должно получиться
должно получиться
- Пт фев 09, 2018 20:46:59
- Форум: Разные вопросы по МК
- Тема: C++ сравнение данных с заранее неизвестными типами
- Ответы: 50
- Просмотры: 10757
C++ сравнение данных с заранее неизвестными типами
Приветствую, форумчане!
Прошу помощи в идеях. Не могу перешагнуть следующую задачу.
Создан некий класс, задача которого сравнивать два аргумента конечной длины (4 байта). Тип каждого аргумента может задаваться отдельно, например в enum:
enum _cmp_type_e {
_cmp_char = 'C',
_cmp_ushort = 'U ...
Прошу помощи в идеях. Не могу перешагнуть следующую задачу.
Создан некий класс, задача которого сравнивать два аргумента конечной длины (4 байта). Тип каждого аргумента может задаваться отдельно, например в enum:
enum _cmp_type_e {
_cmp_char = 'C',
_cmp_ushort = 'U ...
- Вт июн 06, 2017 15:16:05
- Форум: AVR
- Тема: Си. Передача массива констант в функцию, хранение и вызовы
- Ответы: 32
- Просмотры: 6370
Re: Си. Передача массива констант в функцию, хранение и вызо
было все уже написано. оставалось только включить и увидеть. для меня этот опыт важен
Добавлено after 4 hours 10 minutes 58 seconds:
Re: Си. Передача массива констант в функцию, хранение и вызовы
Работает тема! Всем рекомендую :)
Добавлено after 17 minutes 5 seconds:
Re: Си. Передача ...
Добавлено after 4 hours 10 minutes 58 seconds:
Re: Си. Передача массива констант в функцию, хранение и вызовы
Работает тема! Всем рекомендую :)
Добавлено after 17 minutes 5 seconds:
Re: Си. Передача ...
- Вт июн 06, 2017 10:18:58
- Форум: AVR
- Тема: Си. Передача массива констант в функцию, хранение и вызовы
- Ответы: 32
- Просмотры: 6370
Re: Си. Передача массива констант в функцию, хранение и вызо
да. с памятью начались ожидаемые грабли. пробую реализовать последний вариант от Alex
- Чт июн 01, 2017 19:11:23
- Форум: AVR
- Тема: Си. Передача массива констант в функцию, хранение и вызовы
- Ответы: 32
- Просмотры: 6370
Re: Си. Передача массива констант в функцию, хранение и вызо
Но сейчас-то работает каким-то боком ) И выделение памяти адекватное. Если глюкнет - сразу напишу сюда
- Чт июн 01, 2017 19:06:28
- Форум: AVR
- Тема: Си. Передача массива констант в функцию, хранение и вызовы
- Ответы: 32
- Просмотры: 6370
Re: Си. Передача массива констант в функцию, хранение и вызо
надеюсь на С++. если вылезут баги, добавлю malloc
- Чт июн 01, 2017 18:49:22
- Форум: AVR
- Тема: Си. Передача массива констант в функцию, хранение и вызовы
- Ответы: 32
- Просмотры: 6370
Re: Си. Передача массива констант в функцию, хранение и вызо
в .hpp
typedef uint16_t (*interface_func); // определили тип для интерфейсной функции
// определяем тип для описания интерфейса модуля
struct module_interface_t
{
char func_cnt; // количество функций в интерфейсе
interface_func interface[]; // массив неопределенной длины
};
Добавлено after ...
typedef uint16_t (*interface_func); // определили тип для интерфейсной функции
// определяем тип для описания интерфейса модуля
struct module_interface_t
{
char func_cnt; // количество функций в интерфейсе
interface_func interface[]; // массив неопределенной длины
};
Добавлено after ...
- Чт июн 01, 2017 18:16:43
- Форум: AVR
- Тема: Си. Передача массива констант в функцию, хранение и вызовы
- Ответы: 32
- Просмотры: 6370
Re: Си. Передача массива констант в функцию, хранение и вызо
#define Sub (uint16_t*) &
static module_interface_t DeviceInfo;
void Exceptions_KernelInit(void)
{
DeviceInfo.interface[_kp_ProcessPSR] = Sub Exceptions;
DeviceInfo.interface[_kp_ReportPSR] = Sub ExceptionsReport;
DeviceInfo.interface[_kp_InputPSR + 0] = Sub RemoveExceptions;
Kernel ...