|
Не могу зажечь светодиод на ноге у LPC2368 |
|
|
3 страниц
1 2 3 >
|
 |
Ответов
(1 - 36)
|
May 3 2010, 12:12
|
Группа: Участник
Сообщений: 6
Регистрация: 6-03-08
Пользователь №: 35 706

|
IOSET1, IODIR1, IOCLR1 - что-то я не нашел в даташите таких регистров, зато есть - IO1SET, IO1DIR, IO1CLR. Или у Вас в хидере они так обозначены?  Ну, и переименовывать типы данных надо через typedef, а не - define.
Сообщение отредактировал stasyud - May 3 2010, 12:19
|
|
|
|
|
May 3 2010, 12:28
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(stasyud @ May 3 2010, 15:12)  IOSET1, IODIR1, IOCLR1 - что-то я не нашел в даташите таких регистров, зато есть - IO1SET, IO1DIR, IO1CLR. Или у Вас в хидере они так обозначены?  Ну, и переименовывать типы данных надо через typedef, а не - define. Ерунда... Такие регистры есть(по крайней мере были)... Да и через define можно ввести DWORD.
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
|
May 3 2010, 12:59
|
Группа: Участник
Сообщений: 6
Регистрация: 6-03-08
Пользователь №: 35 706

|
Цитата Ерунда... Такие регистры есть(по крайней мере были)... В юзер мануале их нету, зато в кейловском хидере они есть))) Проверил в железе - код работает, правда в функции задержки добавил по нолику, чтобы подольше были.
|
|
|
|
|
May 3 2010, 13:19
|

Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460

|
Цитата(stasyud @ May 3 2010, 16:59)  Проверил в железе - код работает, правда в функции задержки добавил по нолику, чтобы подольше были. А что за железо ? Я проверял на такой платке: http://starterkit.ru/html/index.php?name=s...p=view&id=9Спасибо доброму модератору, добавившему два моих сообщения из других тем в эту тему. Наверное, это должно привести к ускорению ответа на них.
Сообщение отредактировал ArtemDement - May 3 2010, 13:19
|
|
|
|
|
May 3 2010, 13:22
|
Группа: Участник
Сообщений: 6
Регистрация: 6-03-08
Пользователь №: 35 706

|
Цитата А что за железо ? Плата самодельная, в вашем коде изменил только ногу порта для светодиода
|
|
|
|
|
May 3 2010, 17:40
|

Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460

|
Цитата(Nixon @ May 3 2010, 17:40)  А вы случайно в SCS бит GPIOM в "1" не установили? Да, был установлен на "1", но смена на "0" ситуацию не изменила - мигать светодиодом не получается. Продолжаю тестировать SK-MLPC2368. Вот код для отправки символов по UART. Этот код нормально работал с LPC2104, прошиваю в SK-MLPC2368 - никакой реакции. Код #include <LPC23xx.h>
#define byte unsigned char
void init_serial (void) /* Initialize Serial Interface */ { PINSEL0 = 0x00000005; /* Enable RxD0 and TxD0 */ U0LCR = 0x00000083; /* 8 bits, no Parity, 1 Stop bit */ U0DLL = 110; /* 9600 Baud Rate 15MHz VPB Clock */ U0LCR = 0x00000003; /* DLAB = 0 */ }
byte send_byte (byte ch) /* Write character to Serial Port */ { while (!(U0LSR & 0x20)); return (U0THR = ch); }
byte b;
void main(void) {
init_serial();
while (1) { send_byte(b); b++; }
}
|
|
|
|
|
May 3 2010, 18:00
|

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

|
Цитата(ArtemDement @ May 3 2010, 20:40)  Продолжаю тестировать SK-MLPC2368. Инетесно,следующее сообщение будет не работает USB, или Ethernet? Цитата Этот код нормально работал с LPC2104, прошиваю в SK-MLPC2368 - никакой реакции.
PINSEL0 = 0x00000005; /* Enable RxD0 and TxD0 */ U0DLL = 110; /* 9600 Baud Rate 15MHz VPB Clock */
А Вам не показалось, что LP2104 это не LPC2368 и что copy-paste нельзя? Цитата(Nixon @ May 3 2010, 20:42)  Судя по наличию вторичного бутлоадера программу нужно линковать не с 0. Почему решили, что есть "вторичный"?
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
May 3 2010, 19:15
|

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

|
Цитата(Nixon @ May 3 2010, 21:56)  А каким он образом эмулирует флешку? Это уже о другой плате: Цитата прошиваю в SK-MLPC2368 - никакой реакции.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
May 10 2010, 08:29
|

Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460

|
Вот такие настройки по умолчанию. "Прошивка не исполняется" - на выходе нет ни 0В, ни 3,3 В, а некое промежуточное состояние - 2,2В.
Сообщение отредактировал ArtemDement - May 10 2010, 08:32
Эскизы прикрепленных изображений
|
|
|
|
|
May 10 2010, 08:35
|
Участник

Группа: Свой
Сообщений: 57
Регистрация: 7-09-05
Пользователь №: 8 307

|
Цитата(ArtemDement @ May 10 2010, 12:29)  Вот такие настройки по умолчанию.
"Прошивка не исполняется" - на выходе нет ни 0В, ни 3,3 В, а некое промежуточное состояние - 2,2В. Осмелюсь предположить, что Вы меняете состояние порта с периодом, меньшим времени интегрирования показаний мультиметра (как я понял Вы именно его используете для измерения напряжения). Если частоту смены состояния порта поставить меньше (скажем 0.3 - 0.1 Гц), то на "тестере" все будет видно.
|
|
|
|
|
May 10 2010, 08:43
|

Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460

|
Цитата(КСПшник @ May 10 2010, 12:35)  Осмелюсь предположить, что Вы меняете состояние порта с периодом, меньшим времени интегрирования показаний мультиметра (как я понял Вы именно его используете для измерения напряжения). Если частоту смены состояния порта поставить меньше (скажем 0.3 - 0.1 Гц), то на "тестере" все будет видно. Дело в том, что речь идет про исходник от NXP без всяких изменений и при загрузке файла fio_release.hex мигание отслеживается без проблем этим же мультиметром. Проблема именно в том, что я как-то неправильно делаю HEX-файл.
Сообщение отредактировал ArtemDement - May 10 2010, 08:43
|
|
|
|
|
May 10 2010, 09:39
|
Группа: Участник
Сообщений: 6
Регистрация: 6-03-08
Пользователь №: 35 706

|
У меня иногда тоже не получалось получить рабочую прошивку - дело было в настройках оптимизации на вкладке "с/с++". Так и не понял как оно там оптимизирует - не работало при уровне оптимизации 0 и 3, а при 2 работало. Попробуйте откомпилить и проверить прошивки с разными уровнями оптимизации.
|
|
|
|
|
May 11 2010, 07:54
|
■ ■ ■ ■
    
Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443

|
Коль вы выпускник"ЛЭТИ" я бы вам посоветовал изучить след. документик: Цитата Министерство образования и науки Российской Федерации Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина)
Методические указания для выполнения лабораторных работ по дисциплине “Микропроцессорные системы” Скачать можно сдесь, сори к посту не хочет цепляться. В своё время мне помогло, хотя ЛЭТИ увы не заканчивал.
--------------------
Делай что должен и будь что будет.
|
|
|
|
|
May 16 2010, 08:12
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Поделюсь своим решением подобной проблемы. Тоже на порте, к которому был подключен светодиод, висело около 2 V. Ничего там быстро не переключалось. Просто из-за утечек несконфигурированного порта через светодиод (анод подключен к питанию) и резистор протекал маленький ток, создавая то самое падение на светодиоде (около 1 V), и совсем чуть-чуть - на резисторе. Оказалось, что важно сначала подать такты на порт, а потом конфигурацию задавать. Я делал наоборот, казалось, так логичнее. Вот порт и не работал. Когда перенес тактирование вперед, светодиод засветился. Работаю с STM32F103, но, думаю, с другими микроконтроллерами от ARM должно быть так же. Хотя у автора, думаю, проблема в ином...
|
|
|
|
|
May 22 2010, 17:53
|

Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460

|
Цитата(skripach @ May 11 2010, 11:54)  Скачать можно сдесь, сори к посту не хочет цепляться. В своё время мне помогло, хотя ЛЭТИ увы не заканчивал. Вы вот иронизируете про ЛЭТИ, а у меня на кафедре, между прочим, большинство преподавателей вообще про ARM никогда не слышали, кто МК занимается, считает последним достижением 8051 или AVR. Проблема разрешилась. Нужно было просто настроить Keil так как показано на скриншотах.
Эскизы прикрепленных изображений
|
|
|
|
|
May 22 2010, 20:22
|
■ ■ ■ ■
    
Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443

|
Цитата у меня на кафедре, между прочим, большинство преподавателей вообще про ARM никогда не слышали Ну если кафедра физкультуры или экономики какой-нибудь то поверю. Методы по моей ссылке кто-то ведь написал, а там именно ARM LPC... .
--------------------
Делай что должен и будь что будет.
|
|
|
|
|
May 23 2010, 07:39
|

Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460

|
Цитата(skripach @ May 23 2010, 00:22)  Ну если кафедра физкультуры или экономики какой-нибудь то поверю. Методы по моей ссылке кто-то ведь написал, а там именно ARM LPC... . Кафедра электроакустики и ультразвуковой техники. По Вашим суждениям сразу видно, что Вы далеки от реалий того, что происходит в ЛЭТИ. Да, там есть лаборатории с оборудованием NXP, Infineon, Siemens, Motorola, но далеко не все студенты учились хотя бы в одной из них. Программа обучения на всех факультетах разная, зачастую сильно устаревшая.
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|