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

Ищу порт Tn-Kernel для CM0

собственно может кто делал но стесняется выложить ?!

 

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

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


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

уф, сделал. за основу брал для CM3 от Кошкина Сергея и пример порта FreeRTOS для CM0

 

Если кому интересно, могу выложить ИАРовский проект для CM0 + TnKernel для быстрого освоения основ RTOS

tnkernel_cm0.rar

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


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

Если кому интересно, могу выложить ИАРовский проект для CM0 + TnKernel для быстрого освоения основ RTOS

Будьте любезны :a14:

А какой у Вас конкретно кортекс-м0? Понимаю, что не так важно, но всё же.

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


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

У меня есть авторский вариант. Тестировался на LPC11.

 

хм. По сути тоже самое но вот есть команда сброса конвеейера. Интересно как она влияет

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


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

Будьте любезны :a14:

А какой у Вас конкретно кортекс-м0? Понимаю, что не так важно, но всё же.

 

Пример исходников для Cortex-M0 + LPC1114 + IAR ARM 6.3 + RTOS TnKernel2.7

 

// должен быть внешний кварц на 12МГц

// по включению питания дрыгает ногой P2.0 и пишет в UART на 115200 8N1 строку "hello !(счетчик)"

// реализовано:

// настройка PLL, WDT, UART, dprintf

// управление GPIO ( светодиодом ) с помощью макросов Аскольда Волкова

// можно подключится терминалкой 115200 8N1 И отправлять строку *LED:ON=100,OFF=200# для управления миганием

// динамическое выделение памяти MALLOC реализовано на TN-пулах, также добавлен контроль MALLOC_TEST чтобы детектить нарушения пулов и учет какой кусок кода откуда выделял память

// в случае ASSERT-ошибок вызывается app_assert_func

// Tnkernel неоффициальная. Часть изменений указана в файле _lib\rtos\tn_kernel\необходимые доработки.txt

// в общем так, накидал всякого для быстрого стартапа

// если нет Jlink то прошивка тут mcu\Release\Exe\mj_example.hex

//

// в случае выявленных недочетов, прошу писать на [email protected] ( чтобы пофиксил и обновил файлы )

 

 

LPC1114_CM0_IARARM63_RTOSTnKernel27.rar

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


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

нашел про ISB

 

When changing the stack pointer, software must use an ISB instruction immediately

after the MSR instruction. This ensures that instructions after the ISB execute using the

new stack pointer. See ISB on page 3-53.

 

прошу пост от Oct 1 2013, 13:44 удалить, так как является разносчиком возможных неприятностей

 

Самое интересное, что в порте FreeRTOS для CM0 тоже не юзают ISB. Хотя там CM0+, сжет и не надо - не смотрел

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


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

Пример исходников для Cortex-M0 + LPC1114 + IAR ARM 6.3 + RTOS TnKernel2.7

 

замечены траблы:

маловато выделил стека в Handler mode. Поправил

 

Исправлен UART - теперь при записи работает с полноценным FIFO

 

Так же добавлена поддержка pin2pin-совместимого LPC11E36 ( c EEPROM через IAP )

 

 

ссылка

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


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

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...