Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопросы по LPC1751.
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
e_one
Интересует несколько вопросов по LPC1751.
1. Можно ли программировать контролер с помощью UART0 не задействуя RTS и DTR COM порта?
А именно при программировании закоротить джампером ресет и nEINT на землю, освободив RTS и DTR.
2. Какой частоты должен быть кварц, для программирования через UART?
3. Может есть у кого пример как прикрутить EEPROM AT124c16 по І2С.
4. Нашел самый простой JTAG, пятый пост
http://electronix.ru...opic=24885&st=0
Будет он работать с LPC1751 и Keil uVision4?
5. Разбирался кто-то с работой прерываний от ножек порта, есть впечатления?
Прерывание от отдельных ножек расценивается как общее или на каждую можно сделать подпрограму обработки прерывания.
С АРМами раньше не работал, прошу не пинать ногами.
zltigo
1. Да, разумеется
2. Вообще никакого не надо
3.... и т.д.
Может для начала надо с документацией ознакомиться, с AN разными? По форуму поискать? Позадавать вопросы, там, где нашли, напрмер, тот-же JTAG....
Admin:
На форуме есть раздел для начинающих. Тема перенесена.
e_one
Цитата(zltigo @ Apr 26 2010, 10:41) *
1. Да, разумеется
2. Вообще никакого не надо
3.... и т.д.
Может для начала надо с документацией ознакомиться, с AN разными? По форуму поискать? Позадавать вопросы, там, где нашли, напрмер, тот-же JTAG....
Admin:
На форуме есть раздел для начинающих. Тема перенесена.


Спасибо.

А можна ответ да/нет на вопрос с прерываниями от пинов.
Хочу уточнить.
1. При програмировании таким методом ресет и nEINT всё время програмирования нужно удерживать в нуле?
Если можно опишите эту процедуру.
2. Как выставить на RTS и DTR СОМ порта ПК уровни 1 и 0 при запущеном програматоре, програматор Flash Magic. Или посоветуйте альтернативу.
3. Какую частоту нужно выставить в строке Oscillator MHz при использовании встроеного генератора на 4 МГц?

Не судите строго, уже не мало времени потратил, в голове бардак.
Первым делом искал, читал мануал, знакомился с особенностями архитектуры, перерыл AN... в голове все не поместилось.. начал схему рисовать. по ходу копил, сортировал информацию. и одного чудного дня по непонятным причинам при запуске пикада комп начал подвисать, проц на 100%, на сигналы от клавы не отвечал, только курсор перемещался, после минуты борьбы тыцнул ресет. винда не загрузилась, запустил с другого харда виндовс7, оно нашло ошибки в файловой системе, пол часа исправляло, после перезапуска пропали папки с инфой, винда грузилась очень медленно, я не долго думая переустановил, а потом дошло, что инфу не восстановить, сижу теперь заново колупаю.
Вобщем 2 месяца работы ушло... осталасть только в голове и схема на флешке.
zltigo
Цитата(e_one @ Apr 26 2010, 10:04) *

1. Разумеется нет. Достаточно и несколько десятков тактов процессора после снятия reset.
2. AT200 ищется на форуме.
3. Такую, какую написано в документации - 14.746MHz - ибо PLL используется. Ну прочитайте наконец User Manual, ну те разделы, которые интересуют.
e_one
Ладно, спс, не буду усложнять жизнь.
Дойду до работы с железом, потом буду задавать вопросы.

1 вопрос, можно ли запрограмировать новую микросхему со стандартным бутлоадером через UART0 используя внутренний генератор?
Для меня не понятно, как можна настроить PLL не програмируя конторолер.
из даташита
When ISP mode is entered after a power on reset, the IRC and PLL are used to generate
the CCLK of 14.748MHz. The baud rates that can easily be obtained in this case are:
9600 baud, 19200 baud, 38400 baud, 57600 baud, 115200 baud, and 230400 baud.
PLL автоматически настроен на 14.748MHz?

2 вопрос . пдф
Any pin of ports 0 and 2 can be used to generate an interrupt.

Можно сделать подпрограму обработки прерывания для каждой ножки отдельно, нужно 2 ножки?
из пдф можно EINT0 использовать, будет точно работать, а для EINT1-3
Not available on 80-pin package.

Хелп плз, без решения этих вопросов стою на месте.
KRS
Цитата(e_one @ Apr 26 2010, 12:38) *
Для меня не понятно, как можна настроить PLL не програмируя конторолер.

В чипе прошит бутлоадер, он и настраивает PLL! Стереть бутлоадер нельзя!
e_one
KRS, спс, понял.
Меня сбило с толку то, что при тактировании из вне, PLL должно быть настроено по другому, тоесть бутлоадер использует IRC.
Бутлоадер находится в ROM, стереть нельзя это точно.
zltigo
Цитата(e_one @ Apr 26 2010, 13:11) *
Бутлоадер находится в ROM, стереть нельзя это точно.

Он находится во Flash. Стереть или заменить можно, если снять дополнительную защиту. Такую-же защиту можно поставить и на любую другую область Flash.
e_one
Уважаемый zltigo, подскажите пожалуйста, вопрос о прерывании.
Нужно 2 внешних прерывания с разными обработчиками. достаточно ответа да/нет.
zltigo
Цитата(e_one @ Apr 26 2010, 13:19) *
Нужно 2 внешних прерывания с разными обработчиками. достаточно ответа да/нет.

Кроме GPIO можно вообще использовать 'прямые' входы EINT0..3. Количество прерывний с количеством GPIO пинов не завязано - ничего не мешает повесить на одно прерывание множество обработчиков от разных GPIO.
Все. Дальше давайте самостоятельно дежурные вопросы решайте.
e_one
я понял можно. спасибо!!!

а для EINT1-3 Not available on 80-pin package.
zltigo
Цитата(e_one @ Apr 26 2010, 13:29) *
а для EINT1-3 Not available on 80-pin package.

Значит не поняли sad.gif. EINT0 есть. Ну а второй через GPIO, даже без расшаривания оных.
О сколько еще чудных открытий будет сделано при изготовлении в спешке курсовика sad.gif.
e_one
я полностью запутался...
Вариант с EINT0 мне понятен. С GPIO порта 0 и 2 путаница.
читал http://www.gaw.ru/html.cgi/txt/doc/micros/...x_arh/2_4_5.htm
еще больше не понятно, написано до 240 внешних прерываний
zltigo
В огороде бузина, в Киеве дядька, а на заборе написано русскими буквами, только не понятно причем эти буквы к EINTx LPC1751. Все. Читайте родной User Manual. Точка.
e_one
zltigo, дошло наконец. спасибо за ссылки на мануал.
e_one
Родился вопрос.
Как подтягивающие резисторы настроить. По умолчанию на входах подтяжка на +3,3, ток 40 мкА.
в каком регистре менять настройки?
zltigo
Цитата(e_one @ Jun 1 2010, 18:01) *
в каком регистре менять настройки?

Ну так User Manual чего-бы не почитать? Можно особо и не читать, просто поиск pull-up запустить и случится чудо.
e_one
zltigo, не могли бы вы привести пример, одну строку для кейла.
zltigo
Цитата(e_one @ Jun 1 2010, 19:06) *
одну строку для кейла.

Keil обычный сишный компилятор. Разницы нет. Регистры отвечающие за pull-up/pull-down нашли? Два бита на pin. Так в чем проблема?
e_one
Тысячи извенений, регистры нашел PINMODE0-9...
В отладчике чето не отображало ноликов, минуту назад зашил в микруху, а оно работает.
Думал регистр неправильно выбрал... Вобщем слегка тупонул
e_one
Здравствуйте. Есть вопрос.
Пытаюсь подключить АТ24С16 к LPC1751 по шине i2c канала 1 контролера апаратно.
Нашел пример с кейла(в файле i2c.rar проект).
Заменил адрес датчика на адрес #define LM75_ADDR 0x50 памяти АТ24С16,
подкоректировал канал из i2c0 на i2c1,
и инициализацию
LPC_SC->PCONP |= (1 << 19);
/* set PIO0.0 and PIO0.1 to I2C0 SDA and SCK */ /* function to 11 on both SDA and SCK. */
LPC_PINCON->PINSEL0 |= 0x0F;
LPC_I2C1->I2CONCLR = 0x40;
LPC_I2C1->I2SCLL = I2SCLL_SCLL;
LPC_I2C1->I2SCLH = I2SCLH_SCLH;
/* Install interrupt handler */
NVIC_EnableIRQ(I2C1_IRQn);
LPC_I2C1->I2CONSET = I2CONSET_I2EN;

по примеру
I2CWriteLength = 3;
I2CReadLength = 0;
I2CMasterBuffer[0] = 0x50;
I2CMasterBuffer[1] = 0;
I2CMasterBuffer[2] = 49;
I2CEngine();
должно записать число 49 в ячейку 0 еепрома
но при чтении таким образом:
I2CWriteLength = 3;
I2CReadLength = 1;
I2CMasterBuffer[0] = 0x50;
I2CMasterBuffer[1] = 0;
I2CMasterBuffer[2] = 0x50;
I2CEngine();
в I2CMasterBuffer инфа не меняется, подскажите что не так, или подкиньте вариант попроще.
Нужно писать и читать байт по адресу. можна даже первые 256 байт.
да, чуть не забыл, сигналы на ногах scl и sda есть, но форма пока не извесна, может завтра найду осцилограф с памятью и отпишусь.
частоту тоже изменял примерно от 1 до 100 кгц
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.