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

 
 
> Помогите запустить первую програмку, ARM7-LPC2148
imiron13
сообщение Jan 5 2010, 19:55
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 22-02-09
Из: Минск
Пользователь №: 45 206



Написал первую программку - некоторые из светодиодов зажечь,некоторые потушить.
В протеусе работает (там использую LPC2138), на отладочной не хочет. Использую
Keil uVision 4.00a, программатор MT-Link v6.0,дрова-Segger.
Шить прямо из Keil не получается, пишет, что этот программатор разработан только для
IAR. Шью HEX через Segger JFlash. При попытке прошить пишет, что HEX содержит
неверную контрольную сумму и предлагает вставить правильную. При использовании
готового HEX демопрограммы к отлад плате, тоже ругается на CRC, но после исправления
шьет и все работает. Моя же программа шьется,но не работает. Не могу сам разобраться
с чем проблемы: с кодом или с прошиванием. Подскажите, что тут может быть не так.

На плате: контроллер LPC2148, кварц-12МГц,светодиоды подключены к P0.8-P0.15,
зажигаюстя нулями.

Текст програмки:
CODE
#include <LPC214X.H>

#define LEDS_MSK 0x0000FF00 /* P0.8..15 */
#define LED1 0x00000100 /* P0.8 */
#define LED2 0x00000200 /* P0.9 */
#define LED3 0x00000400 /* P0.10 */
#define LED4 0x00000800 /* P0.11 */


int main (void)
{
PINSEL1 = 0x40004000; // P0.23 - VBus(?),P0.31- UP_LED(?),остальные-GPIO

IO0DIR = LEDS_MSK; // пины светодиодов - на вых
IO0CLR = LEDS_MSK; // все зажечь (подать 0)
IO0SET = LED2; // 2-й потушить (подать 1)
for(;;);
}


Конфигурация:
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Сергей Борщ
сообщение Jan 7 2010, 08:21
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(imiron13 @ Jan 5 2010, 21:55) *
В протеусе работает (там использую LPC2138), на отладочной не хочет.
А выложите-ка сюда листинг (в запакованном, разумеется, виде). Не работал с Кейлом, но если память не изменяет - ему надо было в проект кроме собственно исходника добавлять еще и стартап-файл.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
imiron13
сообщение Jan 7 2010, 10:02
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 22-02-09
Из: Минск
Пользователь №: 45 206



Цитата(Сергей Борщ @ Jan 7 2010, 10:21) *
А выложите-ка сюда листинг (в запакованном, разумеется, виде). Не работал с Кейлом, но если память не изменяет - ему надо было в проект кроме собственно исходника добавлять еще и стартап-файл.


Тут проекты для Keil4 и для IAR5.40(не работает даже в протеусе) и схема в протеусе. Стартап для Keil - statup.s (его настройка в 1-м посте на скрине), в IAR не разобрался где этот стартап и как его настраивать. Если поможете с IAR - еще лучше.
Заранее благодарю за помощь.

Цитата(Student Pupkin @ Jan 7 2010, 03:55) *
Возможно оффтоп... Тут пробегала тема, как у мт-линка обновить прошивку, чтобы его кейл признал. smile.gif

Перешивать не могу в любом случае: это все добро у меня во временном пользовании. Буду мучаться с тем, что есть.
Прикрепленные файлы
Прикрепленный файл  LEDS_Keil4.ZIP ( 135.01 килобайт ) Кол-во скачиваний: 25
Прикрепленный файл  LEDS_IAR540.zip ( 132.76 килобайт ) Кол-во скачиваний: 23
 
Go to the top of the page
 
+Quote Post
Student Pupkin
сообщение Jan 7 2010, 11:31
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 328
Регистрация: 23-05-08
Пользователь №: 37 760



Цитата(imiron13 @ Jan 7 2010, 13:02) *
для IAR5.40(не работает даже в протеусе)...
Если поможете с IAR - еще лучше.

В ИАР-е стартап прикручивать не надо, он формируется сам, в смысле там имеется шаблон, как грица на все случаи жизни, так что если в проекте нет файла cstartup.s (), то автоматически вставляется этот шаблон (но невидимо для вас smile.gif ).
Не хватает вам файла *.icf - конфигурационного файла для линкера (linker, компоновщика). Я вот файл прицепил, но взял из IAR\...\arm\examples\NXP\LPC214x\...
Прикрепленный файл  LPC2148_flash.rar ( 743 байт ) Кол-во скачиваний: 86

В опциях проекта в разделе "linker" ставьте галку "Override default" и укажите путь к файлу *.icf.
Должно...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 7 2010, 11:41
Сообщение #5


Гуру
******

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



Цитата(Student Pupkin @ Jan 7 2010, 14:31) *
В ИАР-е стартап прикручивать не надо, он формируется сам, в смысле там имеется шаблон, как грица на все случаи жизни, так что если в проекте нет файла cstartup.s (), то автоматически вставляется этот шаблон (но невидимо для вас smile.gif ).

Ой какая пурга sad.gif. Да откомпилированный среднепотолочный startup просто лежит с каждой из библиотек. Вот и все - никаких "шаблонов", никаких "невидимок". Если в проекте есть, как и из чего сделать нужный объектник, то тогда он линкуется вместо готового библиотечного. Совершенно обычное поведение ДЛЯ ЛЮБЫХ библиотечных функций и ЛЮБЫХ компиляторов.


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



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

 


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


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