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

 
 
> Осваиваю RTEMS - помогите разобраться, сборка ядра
x83
сообщение Jun 9 2011, 04:51
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 67
Регистрация: 11-07-07
Из: Екб
Пользователь №: 29 052



Здравстуйте уважаемые!

До сей поры не приходилось вплотную сталкивать с embedded *nix системами, в основном standalone- приложения были под разные архитектуры. Сейчас надо развивать некогда реализованный проект под RTEMS.

Вот что досталось.

Есть железка на основе Coldfire (mcf548x), существующий софт написан под RTEMS-4.10.0, все собирается под Cygwin`ом.
Более-менее удалось настроить Eclipse, для запуска Make`a и работы с GIT.

Разобрался с основными прикладными задачами:
  • - Прием/передача сообщений по CAN;
  • - Обработка данных;
  • - Прием/ передача сообщений через Ethernet;



Так-же имеется свой BSP, заточенный под нашу плату. BSP лежит в нужных директориях исходников системы, как того требует документация.
Сами исходники и тулчейн лежат в /usr/local/src/

Пользовательский проект myprog собирается в своей директории вызовом Make`a - тут проблем нет.
Точно так-же, если что-то меняю в lib то сначала делаю Make там, потом заново собираю myprog.

Код
Project
      |-lib
      |    |- drv
      |    |- utils
      |    Makefile
      |
      |-myprog
                  |
                  Makefile


На выходе получаю myprog.ralf, который записываю во флеш с помощью ColdFire Multilink.

На плате есть UART в который назначен std out - собственно вся отладка через этот UART, с помощью printf() в нужных местах.


Озадачился тем, что скорость этого порта установлена 57600. Решил сделать 115200 rolleyes.gif

Нашел в исходниках системы файл bsh.h

Цитата
D:\usr\local\src\rtems-4.10.0\c\src\lib\libbsp\m68k\mp2\include\bsp.h
(MP2 - название BSP нашей платы)


поправил там:

Код
#define CONSOLE_PORT            0

//#define CONSOLE_BAUDRATE     57600
#define CONSOLE_BAUDRATE     115200


Далее насколько я понимаю надо пересобрать ядро системы, а потом заново слинковать свой проект wink.gif?

Вот здесь у меня пока что не получается ничего толкового wacko.gif

  • - Делаю Make clean.
  • - запускаю конфигуратор m68k-rtems-mp2-config
  • - Make all


Затем в своем проекте myprog
  • Make clean
  • Make


Но после прошивки платы порт так и продолжает работать на 57600.
выдает информацию примерно следующего плана:

Цитата
FlexCAN driver init. major number = 2
reset_all_devices() finished
DSPI driver init. major number = 3
MCP2515 CAN driver init. major number = 4
CAN driver init. major number = 5
RTEMS. Build Jun 8 2011 09:55:37
Free memory: 65161908 bytes
eth0: Ethernet address: 00:80:7F:22:61:57
eth1: Ethernet address: 00:80:6F:12:51:47
Can't set eth1 address: File exists
Network initialized.
FLASH ID: 227e00ec
....


Хелпните где я ошибаюсь, куда копать?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 15:35
Рейтинг@Mail.ru


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