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

 
 
> Простейший код для ARM LPC2148 не работает, Помогите советом
Alexandr
сообщение Jun 17 2008, 20:02
Сообщение #1


Знающий
****

Группа: Модераторы
Сообщений: 804
Регистрация: 1-12-04
Пользователь №: 1 283



Попала ко мне в руки учебная плата с процессором LPC2148 - плата EA-EDU-001, разработанная конторой Embedded Artists. Посмотреть и скачать описание можно тут http://www.megachip.ru/item.php?item_id=670612 Хорошая плата, много периферии. Купил книгу Редькина. Изучил. Все вроде понятно. Написал простенькую программу под IAR - должна она была PLL подключить, таймер и прерывание настроить и по прерыванию светодиодами мигать. В симуляторе прогнал - работает. Записал в плату - тишина. Возился, возился - в IAR-овском симуляторе и в NoICE работает, а в железе - нет! Упростил программу до нескольких строк - чтоб только светодиоды загорелись после сброса (схему включения светодиодов прилагаю). И снова тишина. И можно было бы списать на то, что плата дохлая, но записав в нее фирменную программу я наглядно убедился в том, что все светодиоды мигают. Видимо я не понимаю какой-то простой, но важной вещи. Подскажите в чем ошибка.

Код
#include <iolpc2148.h>

void main(void)
{
IO0DIR=0x0000FF00;  
IO0CLR=0x0000FF00;

while (1)
  {
  asm ("nop");
  }

}

Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Иван Сусанин - первый полупроводник
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Andy Mozzhevilov
сообщение Jun 18 2008, 04:56
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Смотрите, правильно ли определены области RAM, Flash в проекте, как стек инициализируется.
Чем заливаете Flash? Пишется ли контрольная сумма векторов прерываний?
asm "nop" - кстати абсолютно лишнее.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
Alexandr
сообщение Jun 20 2008, 22:15
Сообщение #3


Знающий
****

Группа: Модераторы
Сообщений: 804
Регистрация: 1-12-04
Пользователь №: 1 283



Цитата(Andy Mozzhevilov @ Jun 18 2008, 08:56) *
Смотрите, правильно ли определены области RAM, Flash в проекте, как стек инициализируется.
Чем заливаете Flash? Пишется ли контрольная сумма векторов прерываний?
asm "nop" - кстати абсолютно лишнее.


А где это посмотреть можно? Я только начал работу с IAR. Код программы приведен в первом посте. Значит все области стоят по умолчанию в настройках компилятора?

Флэшка программируется через RS232 с помощью штатного кабеля платы.

Про контрольную сумму векторов прерываний ничего не знаю. Где посмотреть?

Вроде программа то всего 5 строк, а код получился размером в 993 байта. Значит компилятор добавил нечто свое.
А еще мне тут подумалось - а не может сидеть в памяти процессора какой-нибудь хитрый загрузчик, воспринимающий только определенный код программы? Хотя я вроде всю память стирал. В общем тяжко идет освоение.


--------------------
Иван Сусанин - первый полупроводник
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 21 2008, 04:45
Сообщение #4


Гуру
******

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



Цитата(Alexandr @ Jun 21 2008, 00:15) *
Флэшка программируется через RS232 с помощью штатного кабеля платы.

Штатность кабеля не имет значения,а вот софт для заливки может и не править ту самую:
Цитата
Про контрольную сумму векторов прерываний ничего не знаю. Где посмотреть?

Про сумму смотреть в документации - целый раздел посвященный загрузке. Книжку для обзора (только бога ради не Редькина - тут уже предлагали сжечь его на костре из его книг, и не могу назвать такое предложение чрезмерно жестоким). Возъмите Тревор Мартин LPC2000.... Есть у него и конкретно по LPC23/24, но возможно ее нет на русском. Посмотрите на форуме AT200 программатор - он точно smile.gif умеет править контрольную сумму при загрузке.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Alexandr   Простейший код для ARM LPC2148 не работает   Jun 17 2008, 20:02
- - Alexandr   Разбираюсь по маленьку. Уже правильно настроил в к...   Jun 23 2008, 20:27
|- - zltigo   Цитата(Alexandr @ Jun 23 2008, 22:27) Как...   Jun 23 2008, 20:33
- - GetSmart   Я дак просто свой startup.s79 с уже просчитанной к...   Jun 24 2008, 03:21
- - Alexandr   Все, я ее победил. Внял совету zltigo и откомпилир...   Jun 24 2008, 21:12
- - GetSmart   Только это startup в самой минимальной конфигураци...   Jun 25 2008, 03:47
|- - zltigo   Цитата(GetSmart @ Jun 25 2008, 05:47) Тол...   Jun 25 2008, 05:59
- - GetSmart   Цитата(zltigo)Это не startup, это совершенно не пр...   Jun 25 2008, 06:31
|- - aaarrr   Цитата(GetSmart @ Jun 25 2008, 10:31) Не ...   Jun 25 2008, 06:41
|- - zltigo   Цитата(GetSmart @ Jun 25 2008, 08:31) Не ...   Jun 25 2008, 06:48
- - GetSmart   Цитата(aaarrr)Добавьте в вектора переход на обрабо...   Jun 25 2008, 06:57
|- - aaarrr   Цитата(GetSmart @ Jun 25 2008, 10:57) Но ...   Jun 25 2008, 07:02
- - GetSmart   Где там предсказание смещений? Если кто-то не знак...   Jun 25 2008, 07:09
|- - aaarrr   Цитата(GetSmart @ Jun 25 2008, 11:09) Где...   Jun 25 2008, 07:41
|- - zltigo   Цитата(GetSmart @ Jun 25 2008, 09:09) Есл...   Jun 25 2008, 08:06
- - Alexandr   ПЫтаюсь стартовый код под IAR написать. Идея вроде...   Jul 3 2008, 20:16
|- - Сергей Борщ   Цитата(Alexandr @ Jul 3 2008, 23:16) Одна...   Jul 3 2008, 21:05
- - Alexandr   Я кажется схожу с ума. Откомпилировал код в 4-ом I...   Jul 8 2008, 10:46
- - zltigo   Цитата(Alexandr @ Jul 8 2008, 12:46) Чуде...   Jul 8 2008, 12:13


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

 


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


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