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

 
 
> FreeRTOS 10 + ATmega128L + STK600, Изучаю FreeRTOS
karatozz
сообщение Jun 7 2018, 17:42
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 7-06-18
Из: Dnipro
Пользователь №: 104 946



Уважаемые коллеги! Помогите начинающему. Начал изучать FreeRTOS, использую STK600 и ATmega128L. Задача следующая. Есть два светодиода LED0 и LED1. Я создал две задачи, которые устанавливают 0 или 1 на выводах PA0 и PA1. Первая задача делает переключение уровня на PA0 с периодичностью 1 секунда. Вторая задача делает переключение уровня на PA1 с периодичностью 2 секунды. Программа собирается без ошибок, работает без проблем в симуляторе, но когда прошиваю камешек, то просто горят два светодиода на плате STK600. Я перепробовал все возможные настройки фьюзов. Пробывал с внешним тактовым генератором и с внетренним. Проект из Atmel Studio 7 я прикрепил к теме. Буду рад любому совету!

Сообщение отредактировал karatozz - Jun 7 2018, 17:42
Прикрепленные файлы
Прикрепленный файл  TryFreeRTOS.rar ( 676.72 килобайт ) Кол-во скачиваний: 6
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
karatozz
сообщение Jun 18 2018, 17:30
Сообщение #2





Группа: Новичок
Сообщений: 3
Регистрация: 7-06-18
Из: Dnipro
Пользователь №: 104 946



Друзья! Спасибо всем за помощь!
У меня получилось запустить FreeRTOS на ATmega128. Проект, который прикреплял к своему первому посту полностью рабочий. Я уже было отчаялсяsm.gif Отложил изучение FreeRTOS и начал разбираться с интерфейсом TWI, который тоже у меня никак не мог запуститьсяsm.gif Перепробовав все что можно я наконец-то добрался до фьюз-битов. Оказывается на атмеге, которая у меня была, по умалчанию был установлен фьюз совместимости с ATmega103. Убрав совместимость у меня сразу заработал код для TWI интерфейса и с первого раза код FreeRTOS.
Вообщем, в очередной раз убеждаюсь, что нужно внимательно читать даташитsm.gif Отдельная благодарность Juvf! Благодаря Вам я до последнего верил, что FreeRTOS у меня запустится! rolleyes.gif

Сообщение отредактировал karatozz - Jun 18 2018, 17:31
Go to the top of the page
 
+Quote Post
k155la3
сообщение Jun 19 2018, 07:40
Сообщение #3


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

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(karatozz @ Jun 18 2018, 20:30) *
Вообщем, в очередной раз убеждаюсь, что нужно внимательно читать даташит . . .
И даташит должен быть на "перспективный", хотябы в какой-то мере, процессор. Чтобы умышлено "зажимать" себя в скудные ресурсы есть только одно
оправдание - нежелание-боязнь читать даташиты на более продвинутые платформы.
Go to the top of the page
 
+Quote Post
juvf
сообщение Jun 19 2018, 08:21
Сообщение #4


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(k155la3 @ Jun 19 2018, 12:40) *
И даташит должен быть на "перспективный", хотябы в какой-то мере, процессор.

А что есть "перспективный"? Атмега128 для FreeRTOS - тут разгуляться можно во всю ни в чем себе не отказывая. Можно сразу включить все опции ядра и писать китайский код без какой либо оптимизации (если конечно контент не хранить, типа *.jpg или медиа, для этого добавить внешнюю сд можно нужно). Можно добавить няшек типа FreeRTOS+CLI или FS, или Tracer какойнить. Куда перспективнее? Для задач 8-битника с 16МГц такта - Атмега128 чуть ли не потолок. Только я бы конечно вместо атмеги128 глянул бы стм8с - теже яйца 128кб будет раза в 3 дешевле, а периферия повкуснее.
Цитата
Чтобы умышлено "зажимать" себя в скудные ресурсы есть только одно оправдание - нежелание-боязнь читать даташиты на более продвинутые платформы.
я был умышленно зажат в 20-ти ногий стм8 с 8 кб флеша вместо атмеги32. Т.к. стм8 стоил 12 рублей, а атмега32 более 100.

ТС изучив FreeRTOS на просторах атмеги128 в будущем в перспективе сможет легко поднять данную ОС и на более слабых/простых/дешевых мк, как и на более мощных. Всё зависит от задачи.

Цитата(haker_fox @ Jun 8 2018, 13:56) *
Есть замечательная scmRTOS. Вытесняющая. API на Си++, если кому нужно. Работает шустро. Памяти много не требуется.

Писал пробовал писать на пуре с++ для атмеги. Невзлетело. Использовал компилятор из состава winAVR. В этом "с++" нет реализации new/delete. Можно ли использовать scmRTOS на AVR процессорах с компилятором winAVR?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


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


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