Проблема с примитивной функцией

Разговор ни о чем. Есть пробел - читай книжки))
Особенно если наши доводы для тебя лишь пшик.

ЗЫ: Если кто-то делает и у него получается (и без ощибок), а ты делаешь и есть ошибки - значит ты что-то делаешь не так. Логично?

Вообще-то хорошая мысль. (кстати, так я тоже делаю)
Но!
У меня уже был прецедент. Причем, даже не к моим константам. Не знаю, как сейчас, но раньше было два распространенных аддона для stm32. Так вот, мне были высказаны претензии, почему я использую именно этот аддон, а не тот, который использует человек, высказавший мне претензии.
Поэтому смею предположить, что следование Вашему совету не спасет меня от претензий.

Получается, мнения разделились:

  • одни считают, что это элементарно,
  • другие считают, что это невозможно.

Это как раз понятно.
Вопрос так и звучит: ЧЯДНТ?

пользуетесь, разными, чужими аддонами !

1 лайк

Что-то напомнило: «ЭМИЛЬЕЕЕЕН!!!….» :smiley:

Это не выход. Когда их немного, то можно. Если пишешь универсальную программу, под разные процессоры/семейства лучше ввод/вывод оформить отдельно, через макро или инлайн с условной компиляцией. А так, писать нужно по правилам семейства. Заведено у ПИК так - так и пишем, у STM - аналогично.

да никто не мешает и по своим писать

TCCR0B |= bit(CS00) | bit(CS01);

или передефайнить

#ifdef CS00
#undef CS00
#define CS00 (0b00001000)
#endif

и тоже пользоваться.

Надо пользоваться одинаковыми своими?

откуда я знаю что вам надо.

Это получается что-то вроде сферического коня в вакууме.
Теоретически - правильно, но практически - невозможно.

Вот серьезно. Я не могу понять: Ты миллион (ну ладно, чуть по меньше) программ написал. Какой смысл вникать в то, что тебе не удобно или ты считаешь не правильным?

Мне вот изначально было не понятно работа напрямую с регистрами в AVR. Я пользовался прокладкой - Arduino функциями. В стм тоже есть свои прокладки….

А писать код на чистом Си для ОС (графика) - это вообще если только дел нет никаких (много свободного времени). )))

Никуда от прокладок не деться. Ютуб на 640бк озу не работал бы )))

Я полагал, что прочитали в этой теме в сообщениях №33, №41, №46 (ответ есть в №47, но неправильный), опровергнуть итоговый вывод в №52, №57, №68, №77

Зачем? Зачем его опровергать? Приведи хотя бы два обоснованных случая…

не, пойду ка я тоже пожалуй…

1 лайк

«Толи укусить, толи домой пора» :joy:

1 лайк

Ну так МММ же написал в сообщении №37: “Развивайтесь”, вот я и стараюсь следовать этому совету. Опять же, даже если я что-то считаю неправильным, ведь я могу ошибаться…

Развиваться, в моём понимании, это учиться чему-то новому (интересному) и тп. Ты же просто «встал позу». Ну и ладно. Мне с твоей позы не холодно не жарко. Вывод - ты не хочешь развиваться.

это все от жызо-идеи “самодокументирующегося кода” которому типа коменты не нужны. А понятнее всего было бы написать:
RegA |= 0b0011000; // включим то-се в регистре чтобы оно колбасило как надо

И кому надо залезет в даташыт и узнает как это изменить. Без лазиния по тыщще вложенных друг в дружку определений и файлов.

шо опять))

так не понятно!
вот так понятнее))

*(0x39) |= 0b0011000; // включим то-се в регистре чтобы оно колбасило как надо

и лазить никуда не надо, тока вы знаете и понимаете че написано, класс!

1 лайк

еще вот эти простыни вспоминаются

/* RegA */
         +--------- это то
         |+-------- это это
         ||+------- и т.д.
         |||+------
         ||||+-----
         |||||+----
         ||||||+---
         |||||||+--
         ||||||||
RegA = 0b00000000;
1 лайк