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

 
 
 
Reply to this topicStart new topic
> LPC2364 с Keil RTOS не управляются некоторые линии портов
Д_М
сообщение Feb 15 2013, 19:00
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 15-04-05
Из: Краснодар
Пользователь №: 4 185



Здравствуйте!
ARM только осваиваю. Мигание светодиодом, внешнее прерывание, прерывание от таймера и UART, конфигурацию тактирования освоил сам. Столкнулся с проблемой при освоении Keil RTOS. Программа, которая нормально работает без RTOS (по прерыванию от таймера), частично не работает под RTOS. Не подчиняются некоторые линии портов общего назначения. А именно Port1. Другие не проверял. Даже те линии, которые не были инициализированны, как выходы, держат чёткую единицу, или ноль. На команды сброса и установки линии порта не реагируют. На том же порте другие линии работают нормально. Какой-либо закономерности не выявил. В частности 29 в единице, 28 в нуле, 15 и 16 работают нормально. Без RTOS "ноподчинения" не замечено. Сталкивался ли кто-нибудь, что Keil RTOS позволяет себе что-то лишнее?
Спасибо!
Go to the top of the page
 
+Quote Post
Ivan Panov
сообщение Feb 15 2013, 20:50
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 26
Регистрация: 23-02-09
Из: Одесская обл.
Пользователь №: 45 249



У меня два проекта на LPC2364 и Keil RTOS и оба прекрасно работают с периферией. "Странности" в поведении программы чаще всего бывают из-за недостаточного размера стека. Попробуйте выделить больше памяти под стек.
Go to the top of the page
 
+Quote Post
Д_М
сообщение Feb 18 2013, 13:58
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 15-04-05
Из: Краснодар
Пользователь №: 4 185



Цитата(Ivan Panov @ Feb 16 2013, 00:50) *
У меня два проекта на LPC2364 и Keil RTOS и оба прекрасно работают с периферией. "Странности" в поведении программы чаще всего бывают из-за недостаточного размера стека. Попробуйте выделить больше памяти под стек.


Спасибо за совет!
Как ведут себя программы при недостаточном размере стека мне хорошо знакомо. В моей практике это были нестабильные глюки и перезаргузки. В этом же случает наоборот всё стабильно. Одни линии в единице, другие в нуле, третьи нормально работают. Использовал demo пример от Keil. Он то должен вроде бы работать!
Go to the top of the page
 
+Quote Post
esaulenka
сообщение Feb 18 2013, 16:00
Сообщение #4


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

Группа: Свой
Сообщений: 1 032
Регистрация: 13-03-08
Из: Маськва
Пользователь №: 35 877



Очередной подземный стук...

Как вариант - "неправильные" ноги сконфигурированы не как GPIO, а какая-то периферия (для P1.28 P1.29 - выходы таймера, например).
Методика лечения - прочитать раздел даташита про переназначение ног и внимательно проверить код примера на предмет лишних переназначений (внимательно! там один регистр сразу переназначает 16 выводов).


--------------------
Тут обсуждается творческий порыв, а не соответствие каким-либо стандартам ©
Go to the top of the page
 
+Quote Post
SyncLair
сообщение Feb 18 2013, 17:34
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 209
Регистрация: 6-01-12
Пользователь №: 69 197



Банально, конечно, но:
Цитата(esaulenka @ Feb 18 2013, 20:00) *
Методика лечения - прочитать раздел даташита про переназначение ног ...

Методика лечения - прочитать значение регистра про переназначение ног ))


--------------------
Go to the top of the page
 
+Quote Post
Д_М
сообщение Feb 18 2013, 18:11
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 15-04-05
Из: Краснодар
Пользователь №: 4 185



Спасибо огромное за поддержку! Причина, как всегда, была нелепой. В примере от Keil была ещё работа с LCD, который и захватывал линии порта. Отключил эту задачу, и всё заработало.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 19 2013, 12:18
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(Д_М @ Feb 18 2013, 22:11) *
В примере от Keil...

Вы же этого не сказали sm.gif
Я тоже натыкался на какие-то грабли с кейловскими примерами для их девбордов, теперь всегда выкидываю все, что не нужно
Go to the top of the page
 
+Quote Post

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

 


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


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