Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SK-MLPC2388
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
snayperAlfa
Приветствую всех.

Приобрел я данную плату http://www.starterkit.ru/html/index.php?na...p=view&id=7

1.Подключил к COM порту. Далее надо закоротить джамперы J3,J4. Запускаю Philips Flash Utility. Жму Read Device. Получаю следующую картину:.
Пишется что удачно прочитался ID.
2.Есть ли внутри чипа загрузчик? Или можно стирать полностью флеш память посредством кнопки ERASE, а затем также само через COM port и программу Philips Flash Utility загружать прошивку в чип?
rezident
FlashMagic поддерживает LPC2388. Либо смотрите в апнотах как его прошивать через USB или Ethernet. http://www.standardics.nxp.com/search/?sea...p;links=999,023
snayperAlfa
Спасибо. Меня еще волнует судьба бутлоадера внутри,который. Я его случайно не сотру?
rezident
Сдуру и х.. сломать можно biggrin.gif Вы не торопитесь прошивать-то, а прежде почитайте документики со странички производителя. Ссылку я в предыдущем сообщении дал. А то получится как обычно: сначала сломаем и только потом за чтение инструкции принимаемся smile.gif
snayperAlfa
Появилась проблема - не могу сделать низкий уровень на любом выводе МК.
3.Создал проект в Keil

Код
#include "lpc23xx.h"
#include "stdio.h"

int main (void)
{
IODIR0 |= (1 << 26);
IOPIN0 |=(0 << 26);
while (1)
{
};
}


Подключил вольтметр: 1 щуп к P0_26 , а второй щуп к GND. А на вольтметре все теже 3,21 В.
В чем проблема? Подскажите плз.
rezident
Цитата(snayperAlfa @ Jun 2 2009, 21:44) *
В чем проблема? Подскажите плз.
Причина видимо все в том же - в отсутствии желания читать документацию. laughing.gif На IDE и компилятор тоже своя документация имеется.
snayperAlfa
Я уже и IOCLR0 |=(1 << 26) пробывал, результат тотже
mempfis_
Цитата
Код
#include "lpc23xx.h"
#include "stdio.h"

int main (void)
{
IODIR0 |= (1 << 26);
IOPIN0 |=(0 << 26);
while (1)
{
};
}




IODIR0 - опредлеляет направление пина
С IOPIN0 можно считать текущее состояние пина, но врятли вы чегото добъётесь записывая туда 0.

Для установки пинов порта 0 используют регистр IOSET0, для сброса IOCLR0.
Запись IOSET0 = (1 << 26) приведёт к установке пина 26 порта 0
Запись IOCLR0 = (1 << 26) приведёт к сбросу пина 26 порта 0
snayperAlfa
Написал вот так
Код
#include "lpc23xx.h"
#include "stdio.h"

int main (void)
{     SCS = 0x00;
    IODIR0 =(1 << 26);      
    IOCLR0 =(1 << 26);    
    while (1)
    {
    };
}

И все теже 3,21 В sad.gif
mempfis_
Вы в настройках проекта MAM и PLL настроили ?
Вот тут я когдато интересовался настройкой PLL.
http://electronix.ru/forum/index.php?showtopic=54072&hl=

Сам начинал с такого - дёргал ножкой на SK-MLPC2468.
Посмотрите ещё и вот тут.
http://electronix.ru/forum/index.php?showtopic=53903&hl=
snayperAlfa
Сенкс,гляну

Блин. Я уже поменял настройки в starup.s.
Множитель PLL выставил 8. Делитель 1.
Делитель для CPU от PLL стоит 2.

И все равно 0 эффекта sad.gif

На некоторых выводах 3,21 В, а на некоторых 2,5 В. Хм.
mempfis_
Уберите галочку настройки PLL вообще.
Процессор по идее будет тактироваться от внутреннего генератора и по любому должен работать!
snayperAlfa
Убираю галку, результат тотже.
У меня мысль какая, ведь портвсе равно должен будет изменить свое состояние независимо от частоты, будь она 1 кГц или 60МГц?
Код
#include "lpc23xx.h"
#include "stdio.h"

int main (void)
{    
    IODIR0 =(1 << 24)|(1 << 23)|(1 << 25);      
    IOCLR0 =(1 << 24)|(1 << 23)|(1 << 25);
    while (1)
    {
    };
}


Я уже удалил и файл startup.s - не помогло
snayperAlfa
Установлю IAR. Может поможет
zltigo
Цитата(snayperAlfa @ Jun 2 2009, 22:55) *
Может поможет

Еще можно свечку поставить...Но больше всего поможет ознакомление с документацией хотя-бы в части процедуры запуска bootloader-ом загруженной программы.
snayperAlfa
Вот гадство!

Создал в ИАРе проект:
Код
#include <NXP/iolpc2388.h>
int main()
{
  IO0DIR = 0;
  IO0CLR= (1 << 24)|(1 << 23)|(1 << 25);
  
  //IODIR0 =(1 << 24)|(1 << 23)|(1 << 25);      
    //IOCLR0 =(1 << 24)|(1 << 23)|(1 << 25);
    //IOSET0=    (1 << 24)|(1 << 23)|(1 << 25);
        
  while(1){
    
  };
  
  return 0;
}


Зашил в чип и опять 0 эффекта
mempfis_
У меня в IARе тоже не сразу всё заработало.
Простая программа моргания светодиодом не работала.
В итоге выяснил что это зависит от настроек линкера.
Попробуйте мой проект моргания светодиодом (точнее дёрганья двумя ножками P0.26 & P4.4).
В настройках проекта linker\config укажите путь к этому файлу (или в примерах найдите для своего процессора) - LPC2468_Flash.icf

Должно работать - проверял.
snayperAlfa
Сенкс. Попробую разобраться
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.