Перейти к содержанию
    

4 minutes ago, jcxz said:

Это IAR. Явное задание имени секции или абсолютного адреса для переменной. И в других компиляторах есть аналоги.

если Вам необходимо искать аналоги решения на другой "платформе", я бы сказал Вы используете плохое решние

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, slavka012 сказал:

Замечательно. Аналоги, конечно, есть, но непереносимые. В чьих либах так написано?

Это не либы, а хидер описания регистров периферии. Написано так у меня. И у многих других.

3 минуты назад, Integro сказал:

если Вам необходимо искать налоги решения на другой "платформе", я бы сказал Вы используете плохое решние

Вы обратите внимание кому отвечаете. Мне "решения на другой платформе" не нужны. Это не я об этом беспокоюсь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, jcxz said:

Это не либы, а хидер описания регистров периферии. Написано так у меня. И у многих других.

Тут хорошо смотрелась бы ссылка на github на одного из "многих" :smile:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 minutes ago, jcxz said:

Вы обратите внимание кому отвечаете.

У вас закончились аргументы? :))))))

Может просто согласитесь с:

8 minutes ago, Integro said:

если Вам необходимо искать аналоги решения на другой "платформе", я бы сказал Вы используете плохое решние

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 минут назад, aaarrr сказал:

Тут хорошо смотрелась бы ссылка на github на одного из "многих" :smile:

Ссылка на дистрибутив IAR пойдёт? Так как в хидерах периферии, идущих с ним в комплекте, сделано так же.

 

4 минуты назад, Integro сказал:

Может просто согласитесь с:

Конечно нет. Какой в этом смысл?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, jcxz said:

Ссылка на дистрибутив IAR пойдёт?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 минуты назад, aaarrr сказал:

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

Видимо TI тоже пытаются действовать тем же макаром. Потому что в CCS - похожая картина. Разве что там не абсолютные адреса, а именованные секции для линкёра.

 

PS: Да и каким образом так можно подсадить? Как?

PSS: И вообще речь о другом шла: не надо говорить за всех, когда не знаешь как у других. И достаточно чтобы хоть у кого-то одного было не так.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 minutes ago, jcxz said:

Разве что там не абсолютные адреса, а именованные секции для линкёра.

Еще лучше...

 

4 minutes ago, jcxz said:

Да и каким образом так можно подсадить? Как?

Через повышение трудоемкости переноса имеющегося проекта на альтернативный тулчейн.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 минут назад, aaarrr сказал:

Через повышение трудоемкости переноса имеющегося проекта на альтернативный тулчейн.

Это что так действительно необходимо? Сегодня отлаживать этот проект на IAR-е, завтра на GCC, послезавтра в CCS? И все только этим переносом тут и занимаются?  :moil:

Мне кажется что важнее - сама разработка ПО. И ведётся она как правило в пределах одного проекта на одном инструменте. А отлаживать ПО с IO-портами заданными как я привёл гораздо удобнее, чем с заданными через #define. Именно потому так и сделано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 minutes ago, jcxz said:

А отлаживать ПО с IO-портами заданными как я привёл гораздо удобнее, чем с заданными через #define.

а вот удобство отладки должна предоставлять Вам ваша любимая среда разработки но никак не хидер на MCU

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Если же мы говорим про библиотеки от поставщиков чипов, то у большинства (т.е. у вменяемых :) ) сделано именно так.

22 minutes ago, jcxz said:

 А отлаживать ПО с IO-портами заданными как я привёл гораздо удобнее, чем с заданными через #define. Именно потому так и сделано.

С этим в общем-то можно было бы теоретически согласится, но на практике отлаживая в эклипсе чип у которого регистры через дефайны определены (NXP) , не замечал никаких проблем и неудобств.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

27 минут назад, slavka012 сказал:

С этим в общем-то можно было бы теоретически согласится, но на практике отлаживая в эклипсе чип у которого регистры через дефайны определены (NXP) , не замечал никаких проблем и неудобств.

В IAR-е всё что задано #define - не видно в окне Watch. А вот заданное как объект данных - видно. Это главное преимущество многократно перевешивает все умозрительные выгоды от переносимости куда-то неведомо куда.

 

27 минут назад, slavka012 сказал:

Если же мы говорим про библиотеки от поставщиков чипов, то у большинства (т.е. у вменяемых :) ) сделано именно так.

Никакие "библиотеки от поставщиков чипов" не использую. И смысла в них не вижу.

 

PS: Да и переносить части своего ПО приходилось неоднократно. Причём - между разными МК и разными компиляторами в том числе. Проблем тоже не испытывал. Так как в своём ПО всегда отделяю нижний уровень работы с железом от более высоких, программных уровней.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 minutes ago, jcxz said:

Никакие "библиотеки от поставщиков чипов" не использую. И смысла в них не вижу.

Ага, ведь куда надежнее и быстрее написать свои!)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, jcxz said:

В IAR-е всё что задано #define - не видно в окне Watch. А вот заданное как объект данных - видно.

Ну вот а в эклипсе видно. Разумеется, если вы любите копаться в даташитах и переносить адреса оттуда в .с файлы с риском ошибок, то ваш подход для вас лучше работает, чем использование готовых заголовков от производителя. Переносимость кода вещь умозрительная? ЛОЛ

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15 минут назад, Integro сказал:

Ага, ведь куда надежнее и быстрее написать свои!)

Конечно. Ведь свои баги ищутся быстрее и проще чем чужие.

12 минут назад, slavka012 сказал:

Ну вот а в эклипсе видно. Разумеется, если вы любите копаться в даташитах и переносить адреса оттуда в .с файлы с риском ошибок

"Копаться в даташитах" нужно по-любому. Иначе что-то более-менее стоящее (на чужих либах) написать невозможно. Имхо. Так что адреса оттуда переносятся автоматом в процессе изучения периферии МК и по мере необходимости.

Вот даже глядя на данную тему - вы и не знали других методов задания портов IO. Видимо потому, что не даёте себе труда "копаться". А я знаю. И не один способ.  :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...