Например TDA7294

Форум РадиоКот • Просмотр темы - С чего начать программировать микроконтроллеры?
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Пт июл 04, 2025 23:51:21

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


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



Начать новую тему Ответить на тему  [ Сообщений: 2294 ]     ... , , , 114,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Сб авг 14, 2021 22:50:33 
Друг Кота
Аватар пользователя

Карма: 116
Рейтинг сообщений: 4473
Зарегистрирован: Пт мар 30, 2012 05:17:29
Сообщений: 15520
Откуда: Екатеринбург
Рейтинг сообщения: 1
И вообще, быть вендузятником - это как на нуль делить свою жизнь!!!
Операционная система, как и любой другой инструмент, выбирается исходя из круга стоящих задач. Считать по-другому - искусственно ограничивать себя, а это неправильно.

_________________
Морд - ни лап.
Мат, око и дар. А колом?
Массам кот или торт?
Тротил и ток массам!


Последний раз редактировалось mickbell Сб авг 14, 2021 22:51:05, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Сб авг 14, 2021 22:58:58 
Потрогал лапой паяльник

Карма: -3
Рейтинг сообщений: -4
Зарегистрирован: Ср дек 09, 2020 18:38:07
Сообщений: 317
Рейтинг сообщения: 0
Разобрался. Написано Buy, я так понял что покупать надо. Не хотел по имейлу активировать. Ок, запустил.

Добавлено after 2 minutes 22 seconds:
Насчёт винды я согласен что надо с неё уходить только из за того что они наглеют. Слежка и.т.п.
А программировать где угодно можно и применять навыки. Потом ещё искать эмуляторы для виндовских программ под линукс.

Добавлено after 5 minutes 58 seconds:
https://learnc.info/c/namespaces.html
Функцию нельзя определять более одного раза в разных файлах или нельзя иметь функции с одинаковыми названиями в разных файлах?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Сб авг 14, 2021 23:44:21 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2516
Рейтинг сообщения: 0
Операционная система, как и любой другой инструмент, выбирается исходя из круга стоящих задач. Считать по-другому - искусственно ограничивать себя, а это неправильно.

Ну-ну... Одно дело - в игрушки играть, для чего мастдайка как раз подходит, и совсем другое - работать! Без баша с кореутилсами вообще ничего не сделать. Я уж молчу о вменяемом репозитории с софтом!
Цитата:
Потом ещё искать эмуляторы для виндовских программ под линукс.

Не надо. Очень редко можно найти такой софт, который только под огороженной мастдайкой работает. Но все равно он будет стоить 100500 денег, так что — не нужен!

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Вс авг 15, 2021 07:55:08 
Друг Кота
Аватар пользователя

Карма: 116
Рейтинг сообщений: 4473
Зарегистрирован: Пт мар 30, 2012 05:17:29
Сообщений: 15520
Откуда: Екатеринбург
Рейтинг сообщения: 0
Ну-ну... Одно дело - в игрушки играть, для чего мастдайка как раз подходит
Игрушки - тоже аргумент.

_________________
Морд - ни лап.
Мат, око и дар. А колом?
Массам кот или торт?
Тротил и ток массам!


Вернуться наверх
 
Выбираем индустриальные и медицинские источники питания MEAN WELL в открытом исполнении

Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Вс авг 15, 2021 22:57:31 
Потрогал лапой паяльник

Карма: -3
Рейтинг сообщений: -4
Зарегистрирован: Ср дек 09, 2020 18:38:07
Сообщений: 317
Рейтинг сообщения: 0
Кто подскажет.
Спецификатор %p происходит от слова Pointer- указатель.
Взять адрес переменной можно так: int r; printf("%p\n", &r);
Здесь всё логично для меня, спецификатор с названием Pointer работает с адресом.

Но ведь указателем называют другую конструкцию. Вот такую int r=0; int *k=&r;
Здесь непонятно почему это является указателем. Добавили ещё одну конструкцию и называем это указателем, хотя адрес переменной можно брать без посредника, в данном случае посредник это переменная k.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Вс авг 15, 2021 23:02:40 
Мудрый кот

Карма: 11
Рейтинг сообщений: 114
Зарегистрирован: Пт июн 01, 2018 07:28:45
Сообщений: 1759
Рейтинг сообщения: 0
Цитата:
хотя адрес переменной можно брать без посредника

и сразу вопрос: что значить "брать"?


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Вс авг 15, 2021 23:40:33 
Потрогал лапой паяльник

Карма: -3
Рейтинг сообщений: -4
Зарегистрирован: Ср дек 09, 2020 18:38:07
Сообщений: 317
Рейтинг сообщения: 0
Я не знаю как правильно сказать. Буду стараться выражаться понятнее.
Я имел в виду: я вывожу на экран адрес переменной r работая со спецификатором, который происходит от слова Pointer(Указатель) %р.
И это для меня было логично, это бы я принял как описание указателя.
Но указатель почему то это другое, со звёздочками.

Добавлено after 33 minutes 29 seconds:
Этому определению больше подходит название не Указатель, а Стрелочник))
Потому что идёт работа через переменную-посредника, в данном случае это переменная k.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Вс авг 15, 2021 23:43:47 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23870
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Кто подскажет.
.....
Но ведь указателем называют другую конструкцию. Вот такую int r=0; int *k=&r;
Здесь непонятно почему это является указателем. Добавили ещё одну конструкцию и называем это указателем, хотя адрес переменной можно брать без посредника, в данном случае посредник это переменная k.

k не является "посредником" и никакого отношения к r не имеет. k - это специфический тип переменной имеющей разрядность ПЛАТФОРМЫ и ей может быть присвоено ТОЛЬКО ЗНАЧЕНИЕ АДРЕСА.
Адрес переменной - это ЗНАЧЕНИЕ КОНСТАНТЫ, а не переменная. И именно это значение может быть присвоено типу указатель.
Ну и выражение int *k=&r; означает, что объявляется указатель k на переменную размерностью unsigned integer и ему дефолтно присваивается значение АДРЕСА переменной int r.
Возьмем для примера 8-битный МК с адресным пространством ОЗУ 16 бит. То есть максимальное (а не физически реализованное) адресуемое пространство составит 65536 байт. Тогда указатель будет 16-битный.
А если адрес 32-разрядный, то и указатель тоже будет 32-разрядный. А разрядность МК по данным может при этом быть любой от 8 бит и более.


Последний раз редактировалось КРАМ Вс авг 15, 2021 23:53:49, всего редактировалось 3 раз(а).

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Вс авг 15, 2021 23:49:37 
Мудрый кот

Карма: 11
Рейтинг сообщений: 114
Зарегистрирован: Пт июн 01, 2018 07:28:45
Сообщений: 1759
Рейтинг сообщения: 0
чтобы вывести что-то на экран, сперва необходимо это что-то преобразовать в понятное для экрана. А затем записать в регистр, из которого аппаратное обеспечение МК заберёт и по интерфейсу передаст в экран. Если в функцию надо передать адрес переменной, в которой содержится значение, значит внутри этой функции также определён указатель.

Добавлено after 2 minutes 51 second:
Цитата:
и ей может быть присвоено ТОЛЬКО ЗНАЧЕНИЕ АДРЕСА.

ну, Си такой язык, что присвоено может быть что угодно. Но для компилятора это всегда будет адрес.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Вс авг 15, 2021 23:52:21 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23870
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
присвоено может быть что угодно. Но для компилятора это всегда будет адрес.

А разве "что угодно" не входит в адресное пространство? И если не входит, то исключение по ошибке адреса будет следствием при обращении к переменной по этому значению указателя...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 00:13:30 
Потрогал лапой паяльник

Карма: -3
Рейтинг сообщений: -4
Зарегистрирован: Ср дек 09, 2020 18:38:07
Сообщений: 317
Рейтинг сообщения: 0
Это будет являться указателем? int r; printf("%p\n", &r);
Почему нет, если здесь используется спецификатор %p, который происходит от слова Pointer(Указатель)?

Добавлено after 16 minutes 35 seconds:
Адрес может и статичен, но при разыменовывании это переменная, которую можно менять сколько хочешь раз.
И это остаётся всё та же самая k при разыменовывании, которая будет являться переменной. Я вижу это как посредничество потому что адрес переменной r можно вывести на экран без посредничества дополнительных конструкций со звёздочками, что я написал постом выше.

Добавлено after 4 minutes 22 seconds:
Но что самое важное от чего я и путаюсь- это то что в этой упрощённой конструкции выведения адреса на экран я использую спецификатор %p, который происходит от слова Pointer(Указатель). Ну всмысле что ещё надо чтоб назвать это указателем.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 00:39:09 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23870
Откуда: Московская область, Фрязино
Рейтинг сообщения: 1
здесь используется спецификатор %p, который происходит от слова Pointer

Вы мешаете в кучу формат аргументов функции printf (это особый случай) и формат переменных в теле программы.
Разыменование - это лишь форма присвоения/возврата значения переменной по указателю.
Если вы пишите функцию, которая имеет аргументы, то передать в нее значения аргументов вы можете двумя способами - либо указав имя переменной, значение которой передается, либо через указатель, тогда передать в функцию можно значение любой переменной (с размерностью определенной при объявлении указателя) и тогда функция станет универсальной по отношению к аргументу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 00:48:10 
Потрогал лапой паяльник

Карма: -3
Рейтинг сообщений: -4
Зарегистрирован: Ср дек 09, 2020 18:38:07
Сообщений: 317
Рейтинг сообщения: 0
Это два разных типа Указателей значит? Ок. Если так, то более понятно.
& get a pointer; %p print a pointer
* а это третий Указатель, который другого вида, ну я не экстрасенс, почему они одинаково их назвали тогда.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 00:50:36 
Мудрый кот

Карма: 11
Рейтинг сообщений: 114
Зарегистрирован: Пт июн 01, 2018 07:28:45
Сообщений: 1759
Рейтинг сообщения: 0
Это будет являться указателем? int r; printf("%p\n", &r);
Почему нет, если здесь используется спецификатор %p, который происходит от слова Pointer(Указатель)?

А Си здесь причём? Это команда форматирования для функции printf().


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 01:14:04 
Потрогал лапой паяльник

Карма: -3
Рейтинг сообщений: -4
Зарегистрирован: Ср дек 09, 2020 18:38:07
Сообщений: 317
Рейтинг сообщения: 0
А Си здесь причём? Это команда форматирования для функции printf().

У меня этот код в Си компилируется, запускается и выдаёт на экран адрес переменной r.
Код:
#include <stdio.h>
int main(void) {
    int r;
    printf("%p\n", &r);
  return 0;
}


Добавлено after 3 minutes 24 seconds:
& get a pointer; %p print a pointer
* это тоже Указатель.
Как мне кажется очень легко запутаться. Два разных типа указателей в одном выражении.

Добавлено after 1 minute 43 seconds:
Кодом выше я тоже указатель вывел на экран, только другой значит указатель.

Добавлено after 9 minutes 41 second:
Неа. Это всё один вид указателей.

Добавлено after 1 minute 32 seconds:
Может то что со звёздочкой можно назвать переносчиком указателя))

Добавлено after 2 minutes 32 seconds:
Вот то что & и %p могут использоваться без конструкций со звёздочкой наталкивает на мысль что указателем можно назвать сам адрес ячейки.

Добавлено after 1 minute 7 seconds:
А звёздочка как сосуд для указателя, в котором его переносят.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 01:17:54 
Мудрый кот

Карма: 11
Рейтинг сообщений: 114
Зарегистрирован: Пт июн 01, 2018 07:28:45
Сообщений: 1759
Рейтинг сообщения: 0
Ну вот и настала пора перейти к символам и строкам в Си.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 01:31:45 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23870
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Это два разных типа Указателей значит? Ок. Если так, то более понятно.
& get a pointer; %p print a pointer
* а это третий Указатель, который другого вида, ну я не экстрасенс, почему они одинаково их назвали тогда.

Еще раз.
&<variable> - это ЗНАЧЕНИЕ АДРЕСА ПЕРЕМЕННОЙ, а никакой не указатель.
Есть ОБЪЯВЛЕНИЕ указателя (не путать с его употреблением в коде). Форма объявления указателя:
<тип на который указывает> *<имя указателя> - char *a;
Есть ПРИСВОЕНИЕ ЗНАЧЕНИЯ указателю в коде - a=&<variable>; И здесь нет никаких звездочек.
Есть разыменование - *a=12345; это присвоение значения переменной на которую ссылается указатель. И тут вообще указатель не модифицируется.
% - это не знак указателя. Это В ДАННОМ СЛУЧАЕ стартовый символ аргумента функции printf. А p является спецификатором, говорящем о том, что вывод будет по указателю. Предлагаю прочесть описание этой функции, а не фантазировать. :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 02:12:00 
Потрогал лапой паяльник

Карма: -3
Рейтинг сообщений: -4
Зарегистрирован: Ср дек 09, 2020 18:38:07
Сообщений: 317
Рейтинг сообщения: 0
Хорошо, я понимаю что это неправильно.
Но здесь явно описание плохое или кто то три раза повторил и все подхватили.
----------
Вы игнорируете просто аргументы что я пишу.
Да, вижу что неправильная моя теория, но не полностью по моей вине.

Ещё раз логику опишу.
Имеем код:
Код:
#include <stdio.h>
int main(void) {
    int r;
    printf("%p\n", &r);
  return 0;
}



& - этот знак означает get a pointer что переводится как ПОЛУЧИТЬ УКАЗАТЕЛЬ
К чему я в данном коде применяю &. К переменной r. Для чего? Для получения Адреса этой переменной.
%p - этот спецификатор означает print a pointer что переводится как НАПЕЧАТАТЬ УКАЗАТЕЛЬ.
Что я печатаю с помощью %p. Я печатаю Адрес переменной r с помощью спецификатора %p
Посмотрите с моей стороны. Что я должен думать если всё по логике указывает именно на Адрес переменной.

Может фантазирую, да, Но описание спецификатору и Анперсанде не я придумывал.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 03:16:58 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23870
Откуда: Московская область, Фрязино
Рейтинг сообщения: 1
Но описание спецификатору и Анперсанде не я придумывал.

Тут путаница из-за жаргонов и неточного перевода.
Амперсант означает получение значения ДЛЯ указателя. Формат этого значения соответствует ТИПУ "указатель". То есть в жаргоне только из контекста можно понять о чем идет речь - о самом указателе или об адресах.
Точно так же мешают в кучу разрядность константы(значения) и тип переменной. Например. В жаргоне 0.2345 - это флоат. Но это никакой не флоат, а просто число. И оно может быть присвоено типу int который может быть fixed, то есть переменной с фиксированной точкой.
Добавлено after 3 minutes:
%p - этот спецификатор означает print a pointer что переводится как

Вы не слышите... :)))
В третий раз. Спецификатором является ТОЛЬКО p. Знак % применяется и с другими спецификаторами, коих целая туча.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: С чего начать программировать микроконтроллеры?
СообщениеДобавлено: Пн авг 16, 2021 09:37:48 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2516
Рейтинг сообщения: 0
Что-то тут все в толстый троллинг скатилось…

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


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

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


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

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


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

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


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