реклама на сайте
подробности

 
 
26 страниц V  < 1 2 3 4 > »   
Reply to this topicStart new topic
> Библиотеки для STM32
Genadi Zawidowsk...
сообщение Mar 3 2017, 19:22
Сообщение #16


Профессионал
*****

Группа: Участник
Сообщений: 1 469
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата
страшен стартап? Вот, к примеру, мой

стек забыли
Go to the top of the page
 
+Quote Post
scifi
сообщение Mar 3 2017, 21:21
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 628
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Genadi Zawidowski @ Mar 3 2017, 22:22) *
стек забыли

Код
SECTIONS
{
    .text :
    {
        __vtab_start__ = .;
        LONG(__StackTop)
        LONG(Reset_Handler | 1)
        KEEP(*(.vectab))
        *(.text*)
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 3 2017, 23:16
Сообщение #18


Профессионал
*****

Группа: Участник
Сообщений: 1 469
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



"огласите весь список, ппожалуйста!" ©
Похожий шок я испытал, когда разбирался с тексасовским проектом, где адреса периферии назначались в линк-скрипте (а каждое устройство жило в своей секции). Это же надо так запутать...
Go to the top of the page
 
+Quote Post
dxp
сообщение Mar 4 2017, 04:59
Сообщение #19


Adept
******

Группа: Свой
Сообщений: 3 322
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (scifi @ Mar 3 2017, 22:26) *
Интересно, чем так страшен стартап?

+1.

QUOTE (scifi @ Mar 3 2017, 22:26) *
Вот, к примеру, мой:
<...>

Или вот.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
Эдди
сообщение Mar 4 2017, 09:07
Сообщение #20


Местный
***

Группа: Участник
Сообщений: 414
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Цитата(dxp @ Mar 4 2017, 07:59) *
Или вот.

Спасибо за ссылочку! Форкнул на всякий случай.


--------------------
Я: на гитхабе, на stackexchange, в ЖЖшке
--------------------------------
In the world, only two things are the worst: Windows and Poettering.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 4 2017, 11:43
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 3 201
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Genadi Zawidowski @ Mar 4 2017, 01:16) *
Похожий шок я испытал, когда разбирался с тексасовским проектом, где адреса периферии назначались в линк-скрипте (а каждое устройство жило в своей секции). Это же надо так запутать...

А что в этом неправильного? Это основная задача линкера - распределять адресное пространство.
Точно так же можно в icf-файле IAR определить адресные пространства периферии.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 4 2017, 14:27
Сообщение #22


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(jcxz @ Mar 4 2017, 13:43) *
А что в этом неправильного? Это основная задача линкера - распределять адресное пространство.
Точно так же можно в icf-файле IAR определить адресные пространства периферии.

Неправильно, что то, что можно и НУЖНО делать преносимыми средствами языка, делается непереносимыми средствами инструмента. Появляется нахренненужная привязка и инструменту. Точнее, конечно, "нужная", но только тексасу пытающемуся таким образом подсадить недалеких потребителей и на свои инструменты, и свои контролеры. Такая же фигня в общем и у IAR - хидеры ваяют со своими "расширениями" с той же целью.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
pitt
сообщение Mar 4 2017, 15:08
Сообщение #23


Местный
***

Группа: Участник
Сообщений: 297
Регистрация: 1-06-06
Из: USA
Пользователь №: 17 672



Цитата(zltigo @ Mar 4 2017, 09:27) *
Неправильно, что то, что можно и НУЖНО делать преносимыми средствами языка, делается непереносимыми средствами инструмента. Появляется нахренненужная привязка и инструменту. Точнее, конечно, "нужная", но только тексасу пытающемуся таким образом подсадить недалеких потребителей и на свои инструменты, и свои контролеры. Такая же фигня в общем и у IAR - хидеры ваяют со своими "расширениями" с той же целью.

Agreed 100%


--------------------
Прокричал немой глухому:"...Спасибо за внимание!"
http://www.youtube.com/watch?v=3Nnj4ky4Z_g
Go to the top of the page
 
+Quote Post
SSerge
сообщение Mar 4 2017, 15:42
Сообщение #24


Профессионал
*****

Группа: Свой
Сообщений: 1 597
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



Цитата(pitt @ Mar 4 2017, 22:08) *
Agreed 100%

Так-то оно так, да вот беда - в С не предусмотрено стандартных средств для назначения объектам реальных адресов.
Впрочем для процессоров где периферия отображается в общее с памятью адресное пространство (типа ARM или MSP430) эти средства не особо нужны, можно обойтись указателями на регистры периферии.


--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post
Шаманъ
сообщение Mar 5 2017, 07:04
Сообщение #25


Знающий
****

Группа: Участник
Сообщений: 590
Регистрация: 27-08-08
Пользователь №: 39 839



Что-то я не понял про привязку. У меня таблица векторов выглядит так:
Код
__attribute__ ((section(".isr_vectors"))) void (* const __vectors[])(void) =
{      
    &_estack,           /* The initial stack pointer */
    Reset_Handler,              /* Reset Handler */
    NMI_Handler,                /* NMI Handler */
    HardFault_Handler,          /* Hard Fault Handler */
   .........................


В скрипте линкера прописывается куда положить какую секцию и собственно все.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 5 2017, 10:12
Сообщение #26


Профессионал
*****

Группа: Участник
Сообщений: 1 469
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



А есть люди, кто этот массив частично описывают в программе, частично собирают в скрипте линкера. Вот я глядя в исходник и ошибся, считая сто там ошибка (неполная таблица).
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 5 2017, 20:34
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 3 201
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Шаманъ @ Mar 5 2017, 09:04) *
Что-то я не понял про привязку. У меня таблица векторов выглядит так:
В скрипте линкера прописывается куда положить какую секцию и собственно все.

Разговор был про назначение адресов памяти регистрам периферии.
Кто-то делает это в си-шных хидерах, кто-то - через линкер. Принципиальной разницы нет. Имхо.

Цитата(Genadi Zawidowski @ Mar 5 2017, 12:12) *
А есть люди, кто этот массив частично описывают в программе, частично собирают в скрипте линкера. Вот я глядя в исходник и ошибся, считая сто там ошибка (неполная таблица).

Скорее такие люди просто надёргали кусков отовсюду, не разбираясь и не понимая.
Go to the top of the page
 
+Quote Post
Шаманъ
сообщение Mar 7 2017, 04:08
Сообщение #28


Знающий
****

Группа: Участник
Сообщений: 590
Регистрация: 27-08-08
Пользователь №: 39 839



Цитата(jcxz @ Mar 5 2017, 23:34) *
Скорее такие люди просто надёргали кусков отовсюду, не разбираясь и не понимая.

Ну зачем же так сразу - некоторый смысл может быть если применяется загрузчик.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 7 2017, 09:57
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 3 201
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Шаманъ @ Mar 7 2017, 06:08) *
Ну зачем же так сразу - некоторый смысл может быть если применяется загрузчик.

И какой смысл? И при чём тут загрузчик?
Go to the top of the page
 
+Quote Post
Шаманъ
сообщение Mar 7 2017, 15:52
Сообщение #30


Знающий
****

Группа: Участник
Сообщений: 590
Регистрация: 27-08-08
Пользователь №: 39 839



Цитата(jcxz @ Mar 7 2017, 12:57) *
И какой смысл? И при чём тут загрузчик?

Ну проявите фантазию wink.gif
Go to the top of the page
 
+Quote Post

26 страниц V  < 1 2 3 4 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th April 2017 - 18:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01519 секунд с 7
ELECTRONIX ©2004-2016