|
0 / 0 / 0
Регистрация: 10.05.2025
Сообщений: 24
|
|||||||
Проблема с ASCII в STM32CubeIDE14.05.2025, 21:47. Показов 1755. Ответов 11
Метки нет (Все метки)
Добрый всем день уважаемые программисты инженеры. Столкнулся с не понятной проблемой. При попытки откомпилировать проект вылазит предупреждения по переменной char strr = 'Щ'; но если эту переменную поместить в отдельный хидер то всё компелируется без предупреждения и символ 'Щ' как положено имеет код в ASCII 217 и правильно отображается на дисплее да и любой другой символ отображается из хидера как положено. В самом STM32CubeIDE везде установил кодировку CP1251 да и если я перевожу дисплей в режим знакогенератора то правильная передача символов именно только кириллицы возможно только из хидера НО английские буквы проходят нормально как из хидера так и из листа main.c.
0
|
|||||||
| 14.05.2025, 21:47 | |
|
Ответы с готовыми решениями:
11
Не запускается проект в Stm32CubeIde Ипорт проекта из Atollic TrueSTUDIO в STM32CubeIDE |
|
434 / 156 / 28
Регистрация: 12.12.2020
Сообщений: 1,255
|
|
| 14.05.2025, 21:52 | |
|
там где ругается, у вас файл кода в utf-8. сконвертируйте его в cp-1251
0
|
|
|
0 / 0 / 0
Регистрация: 10.05.2025
Сообщений: 24
|
||
| 14.05.2025, 22:04 [ТС] | ||
|
0
|
||
|
434 / 156 / 28
Регистрация: 12.12.2020
Сообщений: 1,255
|
|
| 14.05.2025, 22:06 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 10.05.2025
Сообщений: 24
|
|
| 14.05.2025, 22:13 [ТС] | |
|
0
|
|
|
434 / 156 / 28
Регистрация: 12.12.2020
Сообщений: 1,255
|
|
| 14.05.2025, 22:14 | |
Сообщение было отмечено BigSten как решение
Решение
не. Если файл открыть блокнотом, нотепадом или или чем нить
1
|
|
|
0 / 0 / 0
Регистрация: 10.05.2025
Сообщений: 24
|
|
| 14.05.2025, 22:19 [ТС] | |
|
Alex1126, ха и то верно, надо было оказывается всё таки выбрать Other CP1251 выходит файл main.c нужно отдельно настраивать под кодировку. Я то просто в свойствах самого проекта настраивал и думал что все его объекты унаследуют настройки но видать не все.
0
|
|
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
||
| 16.05.2025, 09:43 | ||
|
А вообще, учитывая, что иногда применяется даже HD44780, у которого своя, извращенная кодировка... cp1251 еще не худший выбор.
0
|
||
|
|
|
| 16.05.2025, 12:23 | |
|
Иногда - да.
И до некоторых пор это проще. Но потом ты начинаешь откладывать варианты, которые не вписываются в эту простоту. Потом начинаешь их избегать. И вот ты уже ходишь по форумам и хаешь не осиленный юникод в каждой теме, на который незаметно перешёл весь остальной мир, и ещё учишь этому детей. Выбор плох тем, что среды разработки (IDE) и средства совместной разработки (типа Azure) уже юникодовые и без танцев с бубном показывают однобайтовые тексты крякозябрами. Можно сразу строки в utf-16 держать, там есть строковые литералы u"str" ещё со времён C++11. Ещё проще будет конвертировать.Смысл в том, чтобы читаемый не специально настроенными средствами (кодировку редактор может определить и сам по BOM) текст показывал человеку то, что будет показано на экране устройства. Даже если в тексте и в бинарной прошивке кодировки разные в целях экономии памяти или извращённой кодировки драйвера.
0
|
|
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
||||
| 16.05.2025, 15:50 | ||||
|
Но костыли с однобайтными кодировками как раз и делаются чтобы пусть коряво, но с минимумом усилий. И, что хуже, он не решает основную задачу. Конвертация между разными юникодами алгоритмически очень простая. Сложнее перевести из юникода в юзерскую таблицу символов. С учетом того, что в юникоде эти символы накиданы вразнобой.
0
|
||||
|
|
||
| 16.05.2025, 15:58 | ||
u"str" сам файл мог бы быть в utf-8, а бинарное представление строки получалось уже в utf-16, которое просто (постоянный размер символа) constexpr функциями конвертить в win1251. Пропуская код символа юникода через таблицу соответствия для получения во время компиляции уже кода однобайтовой кодировки. Даже пользовательской.В случае однобайтовой символов не много, весь зоопарк не нужен, можно и вручную забить таблицу. И что получается: мы пишем u"str" в коде, сам код в utf-8 и без крякозябр отображается на веб-сервере и в редакторах, а в прошивке уже закодены байтики в кодировке win-1251.
0
|
||
| 16.05.2025, 15:58 | |
|
Помогаю со студенческими работами здесь
12
мигание светодиода stm32cubeide
Не могу помигать диодом на STM32F103C8Tx из STM32CubeIDE Библиотека больших чисел (GMP) в среде STM32CubeIDE STM32CubeIDE и PROTEUS Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
|
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y
Z4Tv2zpXVVo
https:/ / github. com/ shumilovas/ med2. git
|
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа.
В качестве фильтра для отбора справочника служит группа номенклатуры.
Отбор по наименованию группы. . .
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит значение перечислений.
/ / Событие "НачалоВыбора" реквизита на форме. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|