|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
Классы взаимодействия с пинами микроконтроллера22.05.2014, 17:18. Показов 4609. Ответов 51
Метки нет (Все метки)
Возвращаюсь в програмирование микроконтроллеров после 5 лет работы с ПЛИС. Спрос на рынке труда на микроконтроллеры преобладает. Теперь за 5 лет рессурсы выросли многократно и теснота по памяти, быстродействию и регистрам больше не тревожит. Стало модным и, главное, важным для создания надежных проектов писать на С++.Основательно засел за учебники(уж который раз!) .. и вспомнил простые мучения с распределением портов на внешние микросхемы. Естественно с прикидкой,- как я буду потом писать код. Пока по приоритетности возник вопрос и , надеюсь, тут мне местные гуру и корифеи ткнут(я не нашел примеры) как красиво создать универсальный класс\шаблон, где бы я мог собирать побитно оставшийся ресурс для пользователя чтения\ записи. Чтобы все эти сборки пинов (разные регистры), запоминание не тронутых были спрятаны для пользователя. Если у кого есть примеры,-буду рад. Понимаю, что для разных контроллеров это будет по разному. Но главное - идея! Остальное я сам сделаю... Заранее спасибо!
0
|
|
| 22.05.2014, 17:18 | |
|
Ответы с готовыми решениями:
51
Комп работает только с 20 пинами Как правильно работать с пинами портаG Можно управлять отдельно пинами ide-разъема? |
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||||||||||||||||||||||||||||
| 23.05.2014, 16:12 | |||||||||||||||||||||||||||||
![]()
как только появляется указатель, все можешь лезть в памяти куда хочешь, даже если её нет компилятор слова не скажет
кто контролирует? где "сборщик мусора" а знаменитое
почитай знаменитое "Верёвка достаточной длины, чтобы... выстрелить себе в ногу. Правила программирования на С и C++" Ален И. Голуб или "Скользкие места C++" Стефан К. Дьюхэрст Добавлено через 1 минуту есть веши которые поддерживает Си но не поддерживают плюсы, например рекурсивный вызов Майн
3
|
|||||||||||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 23.05.2014, 17:24 [ТС] | |
|
Странно, что вы приводите примеры далекие от ООП...
Брюс Эккель Философия С++ (наш случай,- он из С-железячников) как раз акцентирует внимание на строгой типизации самого С++. Сама идея ООП без возможности сокрытия вряд ли устроил бизнес... Корни оттуда!
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||
| 23.05.2014, 18:23 | |||
|
да и ООП в плюсах не совсем ООП у шарпа он гораздо сильнее это не хорошо и не плохо, это данность где то хорош Си( высокоуровневый ассемблер) где то плюсы, а где то Лисп нужен периодически наблюдаю как в ветке "С++ для начинающих" появляются задачи для баз данных
0
|
|||
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 23.05.2014, 19:05 [ТС] | |
|
Тут речь не о встроенных типах, а о пользовательских, где эта хитрость предусмотрена.
В конце концов, если взять IAR среду, там есть, и уже давно,-опция С++ даже для AVR!!! Это мода или веление времени, ...возможность нового стиля проектирования? Кстати, у компилятора С++ есть куча настроек, где уровень контроля типизации можно менять. В пределе,- явное преобразование типов!
0
|
|
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 23.05.2014, 19:53 [ТС] | |
|
Да легко... Это уже механически после политических баталий...
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
||||
| 23.05.2014, 19:54 | ||||
|
где это указано в стандарте? Как это влияет на приведение типов? Как это влияет на приведение типов? знаешь ты слишком много приписываешь языку вспоминается чеховское "Дуэль есть дуэль, и не следует делать ее глупее и фальшивее, чем она есть на самом деле." ты недавно узнал про язык? я как то за пятнадцать лет, подрастерял этакий восторг или пишем по всем канонам ООП, тогда "фиг вам богатства и счастья", в смысле быстродействия и эффективного использования внутренней памяти или вылизываем код, долбимся на низком уровне, тогда забываем об универсальности и красоте ООП
0
|
||||
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 23.05.2014, 20:31 [ТС] | |
|
Управление доступом-краеугольный камень при создании классов.
Возможность написания проекта на С++ для AVR смущает. Там же тесно!.. Тем не менее.. Приведение типов char в int и наоборот, при некоторых настройках обязательно. Язык С++ я знаю уже 10 лет. Познакомился еще в прошлом веке. Но по-новому глянул на него только недавно, когда выслушивал ругань между собой программистов в курилке. Страуструпа прочел уже с другим настроем... Коллективная работа в ООП более осмысленная и её проще подхватить постороннему. Мне конечно же привычней работать по-старинке. Сам себе хозяин. Трюки всякие, не утруждать себя комментами =). ..А теперь во мне нет вот этой самой красоты и универсальности, благодаря этому открытому вопросу в старт-топике.. Моя задача как раз и состоит,- усвоить метод решения задачи методом ООП. Вот почему я тут! Парить в академических задачах - одно,- привязать к привычным ресурсам контроллера - другое. Кажется,- переболеешь немного и дальше пойдет легче...
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||||
| 23.05.2014, 20:54 | |||||
|
иначе не было бы целой тучи языков. все бы перешли на плюсы под задачу выбирается инструмент, но никак не наоборот есть задачи которые например решаются на том же Лиспе элементарно, а на плюсах через одно место или например работа с массивами( матрицами) как решается на Фортране, а как на Си в заголовочном файле пара функций ввод/вывод а в Си файле вся реализация
1
|
|||||
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 23.05.2014, 21:15 [ТС] | |
Да это ведь прописано в правилах... Тут не то место.
0
|
|
|
1280 / 1185 / 175
Регистрация: 02.12.2013
Сообщений: 4,883
|
|
| 23.05.2014, 21:17 | |
|
Не по теме: Ну вот опять обломали, а я специально пиво и чипсы купил.
0
|
|
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 23.05.2014, 21:21 [ТС] | |
|
ValeryS вам вопрос. Вы пробовали для себя ООП?
По сути ведь организовать абстрактный порт их обрывков регистров, оставшихся от распределения более приоритетными внешними системами не должно быть сложно. Универсально не получится. Это понятно теперь. Может не там я ищу учебный вариант?
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||
| 23.05.2014, 21:24 | |||
|
Добавлено через 3 минуты для начала опиши члены и методы класса
0
|
|||
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 23.05.2014, 21:31 [ТС] | |
|
Да нет! Я не имел ввиду Винду..
Надо присесть. Получится через недельку...
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||
| 23.05.2014, 21:37 | |||
сиречь микроконтроллеров, я пока не вижу задач с ООПмне как раз нужна не абстракция а конкретика но может мне задачи такие не попадались ![]()
0
|
|||
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
||
| 23.05.2014, 22:44 [ТС] | ||
|
Вот набрел на энтузиаста AVR showthread.php?t=17357
Добавлено через 14 минут http://habrahabr.ru/post/149683/
Это вообще отсюда... Шаблоны проектов на C++ для AVR [GCC, IAR]
0
|
||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||
| 23.05.2014, 23:22 | |||
![]() а вот цитата(точнее цитата цитаты) из твоей ссылки
0
|
|||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,715
|
|
| 24.05.2014, 00:42 | |
|
Мурман, что же вы прицепились со своим обектно орентированым программированием. Максимум что можно для программирования МК взять из ООП так это составление блок-схемы алгоритма.
На C++ пишите программы для МК лишь бы результат был положительный. Добавлено через 3 минуты Мурман, можно взять 1 МК 2 МК 10 МК и между ними распределить ресурся. Как бы язык программирование не главное. Схемотехнику тоже надо знать.
0
|
|
|
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 22
|
|
| 24.05.2014, 09:15 [ТС] | |
|
Вы не читали начало диалога, скорее всего...
Ноги растут от работодателей. Для программиста микроконтроллеров требуют знаний С++. Раньше такого не было. В буквальном смысле,- серьезные фирмы создают себе базу для качественного тестирования своего продукта. Я как раз из схемотехников... С большим опытом...
0
|
|
| 24.05.2014, 09:15 | |
|
Материнка с 8 пиновым питанием для процессора а блок с 4 пинами Скрипт для генерации .h файла с пинами МК из схематика Eagle АЦП ATMEGA32. Непонятки с пинами AVCC и AREF. Тема закрыта. Работа с файловой системой: классы Directory и Filе и классы DirectoryInfo и FileInfo Реализовать классы различных профессий и классы фирм из разных отраслей производства Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Очистка реквизитов и табличных частей документа при копировании
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|
|
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
|
Вот представьте что вам дали бессмертие.
kumehtar 24.07.2026
Вот представьте что вам дали бессмертие, ничего более не меняя. Вообще ничего, только бессмертие в нынешнем виде. Рады были бы? Что бы вы тут делали всё это время?
Никакой пенсии. Никакого нового. . .
|
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю
Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы
Кратко. . .
|
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем
**Полевые заметки о двухнедельной совместной работе**. . .
|