Настраиваем прошивку и отладку LPC1114F (Cortex-M0)

Настраиваем Keil5

Надо подключить сначала библиотеки

Поскольку наш контроллер имеет название 32-bit ARM Cortex-M0 microcontroller , то скачиваем Legacy support for Arm Cortex-M devices а странице : http://www2.keil.com/mdk5/legacy.

фотка 1

В результате появится возможность создать новый проект для нашего контроллера :

фотка 2

Но в проекте пока ничего собираться не будет , т.к. надо как-то искать какие-то необходимые файлы *.h,*.с (прикольно если толком еще не знаешь, как они называются хотя бы).

И вот тут можно убить вагон времени.

Поэтому главное далее сделать следующее :

Открываем Package Installer и устанавливаем еще Keil::LPC1100_DFP

фотка 3

И вот тогда создаем свой новый проект.

Обратите внимание NXPпоявился в SoftWare Packs.

фотка 4

Далее уже спокойно выбираем первый попашийся LPC 1114/302 (их почему-то несколько, 3 -4шт.)

фотка 5

И вот тут теперь надо не забыть проставить галочки нужного нам функционала Startup, CMSIS Core, ...

фотка 6

В результате мы увидим новый проект уже с такими папками:
(main.c автоматом был тоже создан )

фотка 7

И этот проект уже собирается нормально.

Маленький разъем для прошивки 10 пин 1.28мм шаг

Первое неожиданное знакомство с маленьким 10 пиновым разъемом 1.28мм шаг вызвало много вопросов. Подключить к нему провод от пин 2.54мм практически невозможно , он болтается и явно больше.

Пришлось заказать переходник с обычного JTAG с шагом 2.54мм на 1.28мм (550р. на али) с набором шлейфов (в.т.ч 10pin 1.28мм):

фотка 8

Но оказалось , что шлейф платы под разъем 10pin [ 1.28мм] разведен на переходнике не так. То есть прошивка JLink-ом не сработала.

Находим обохначение ножек контроллера LPC1114F:

фотка 9

Далее прозвонкой ножек разъема 10pin [ 1.28мм] на ножки микроконтроллера удалось установить, что :

pin разъема [10] вывод на плате назначение
1 53 +3/3V
9 29 земля
4 13 SWCLK/TCLK
10 1 RSTN/NRST -не обзятелен
2 ??? SWDIO/TMS

В результате JLink увидел контроллер и начал нормально прошивать. Но как я понял SWO вывод трассировки отсутствует у LPC и трассировка не удастся, но для начала и это хорошо. Можно уже мигать диодом:

По даташитам пишут Note: SWO does not exist on LPC1114, хотя SWO заводят на 28 ногу. Но куда у нас нога 28 идет я не нашел (возможно и никуда).

фотка 10
фотка 11

Трассировка по SWO не идет еще и потому , что обратите внимание в списке выбора Manage Run-Time Enveroment \ Compiler \ I/O \ STDOUT нет ITM :

В результате опыт не совсем удачный , впоследствии попалась плата с LPC 1758 от старого принтера и там все срослось.

Файлы для скачивания