Конфигурация на щифта на микроконтролера на базата на ARM7 (LPC2148)

Опитайте Нашия Инструмент За Премахване На Проблемите





Дизайнерите на вградената система и SOC (система на чип) избират конкретно микропроцесорни ядра , библиотеки и различни инструменти за разработване на базирани на микропроцесор приложения. ARM процесорът е една от най-добрите алтернативи, които могат да се получат за дизайнерите на вградени системи. През последните няколко години архитектурата ARM стана много популярна и те се предлагат от различни производители на интегрални схеми. Приложенията на ARM процесорите включват мобилни телефони, автомобилни спирачни системи и др. Глобалните партньори на ARM общността са разработили полупроводници, както и корпоративен дизайн на продукти, включва служители като инженери, дизайнери и разработчици. Тази статия е за базиран на ARM7 микроконтролер LPC2148, архитектура и конфигурация на щифтове. Тази статия ще ви помогне да разберете основите на микроконтролера.

Микроконтролер LPC2148, базиран на ARM7

Пълната форма на ARM е усъвършенстван компютър с намален набор от инструкции (RISC) машина , и това е 32-битова архитектура на процесора, разширена от притежанията на ARM. Приложенията на ARM процесор включват няколко микроконтролера, както и процесори. Архитектурата на ARM процесор е лицензирана от много корпорации за проектиране на базирани на ARM процесор SoC продукти и процесори. Това позволява на корпорациите да произвеждат своите продукти, използвайки ARM архитектура. По същия начин всички основни компании за полупроводници ще произвеждат базирани на ARM SOCs като Samsung, Atmel, TI и т.н.




Какво е ARM7 процесор?

Процесорът ARM7 често се използва във вградени системни приложения. Също така, това е баланс между класическа, както и нова-Cortex последователност. Този процесор е невероятен в намирането на ресурси, съществуващи в Интернет с документация за отлични постижения, предлагана от NXP Semiconductors. Той е напълно подходящ за чирак, за да получи в детайли изпълнение на хардуер и софтуер.

LPC2148 Микроконтролер

Микроконтролерът LPC2148 е проектиран от Philips (NXP Semiconductor) с няколко вградени функции и периферни устройства. Поради тези причини той ще направи по-надежден, както и ефективната опция за разработчик на приложения. LPC2148 е 16-битов или 32-битов микроконтролер, базиран на семейство ARM7.



Характеристики на LPC2148

Основните характеристики на LPC2148 включват следното.

  • LPC2148 е 16-битов или 32-битов микроконтролер, базиран на семейство ARM7, и се предлага в малък пакет LQFP64.
  • ISP (при системно програмиране) или IAP (при програмиране на приложения), използващ вграден софтуер за зареждане на чипове.
  • Статичната RAM памет на чипа е 8 kB-40 kB, флаш паметта на чипа е 32 kB-512 kB, широкият интерфейс е 128 бита или ускорителят позволява високоскоростна работа от 60 MHz.
  • Отнема 400 милисекунди време за изтриване на данните в пълен чип и 1 милисекунда време за 256 байта програмиране.
  • Вградените интерфейси за проследяване и Embedded ICE RT предлагат отстраняване на грешки в реално време с високоскоростно проследяване на изпълнение на инструкции и вграден софтуер Real Monitor.
  • Той има 2 kB RAM на крайната точка и USB 2.0 контролер на устройства с пълна скорост. Освен това, този микроконтролер предлага 8kB вградена RAM в близост до USB с DMA.
  • Един или два 10-битови ADC предлагат 6 или 14 аналога i / ps с ниско време на преобразуване като 2,44 μs / канал.
  • Само 10-битов ЦАП предлага променлив аналогов o / p.
  • Външен брояч на събития / 32 битови таймери-2, PWM устройство и наблюдател.
  • RTC с ниска мощност (часовник в реално време) и 32 kHz вход за часовник.
  • Няколко серийни интерфейса като две 16C550 UART, две I2C-шини със скорост 400 kbit / s.
  • 5 волта толерантни бързи входни / изходни щифтове за общо предназначение в малък пакет LQFP64.
  • Външни щифтове за прекъсване-21.
  • 60 MHz от най-добрия CLK-часовник на процесора, който може да се получи от програмируемия цикъл на фазово заключване чрез разрешаване на времето, е 100 μs.
  • Вграденият генератор на чипа ще работи от външен кристал, който варира от 1 MHz-25 MHz
  • Режимите за енергоспестяване включват главно празен ход и изключване.
  • За допълнителна оптимизация на мощността има индивидуално активиране или деактивиране на периферни функции и периферно мащабиране на CLK.

Памет


Микроконтролерът LPC2148 има 512 kB вградена FLASH памет, както и 32 kB вградена SRAM. Също така този микроконтролер включва присъща поддръжка до 2kB USB RAM. Тази памет е добре съчетана за всички приложения за микроконтролер.

Вградена FLASH система с памет

Този микроконтролер включва 512 kB система с флаш памет и тази памет може да бъде полезна както за съхранение на данни, така и за код. Програмирането на тази памет може да се направи по следния начин.

  • Чрез включване на JTAG интерфейс в сериен
  • Използване на UART или ISP (при системно програмиране)
  • Възможности на IAP (при програмиране на приложения)

Приложната програма, базирана на функцията IAP, може също да премахне, докато програмата работи. Винаги, когато се използва микроконтролерът LPC2148 вграден зареждащ модул, тогава 500 kB флаш памет е достъпна за потребителски код. Флаш паметта на този микроконтролер предлага най-малкото количество от 100 000 цикъла на запис / изтриване, както и 20-годишно съхранение на данни.

Вграден SRAM

Този микроконтролер предлага статична RAM с 32 kB и много полезен за съхранение на данни или код. Достъпен е за 8-битови, 16-битови и 32-битови.

Входни / изходни портове

Микроконтролерът LPC2148 има два входно / изходни порта и те се наричат ​​P0 и P1. Всички щифтове за портове са маркирани с PX.Y. Тук „X“ означава номер на порт като 0 или 1, докато „Y“ означава номер на пин 0-31. Всички щифтове могат да изпълняват и алтернативни задачи. Например, P0.8 предоставя като GPIO и Tx щифт на UART1, AD1.1, PWM4. На RST (RESET) всеки пин е подреден като GPIO.

Как да започнем с програмирането?

Първоначалната стъпка към програмирането на lpc2148 е подреждане на GPIO Pins. Така че ето и свързаните понятия като регистри . Пиновете за вход / изход с общо предназначение в LPC2148 включват P0.0 до P0.31 и P1.16 до P1.31 и всъщност тези щифтове са налични въз основа на алтернативното използване на функцията.

Port-0 и Port-1 са 32-битови входно / изходни портове и всеки бит от тези портове може да се контролира от индивидуална посока. Операциите на порт-0 и порт-1 зависят от функцията на щифт, който е избран с помощта на блока, свързан с щифта. В Port-0 не могат да се получат щифтове като P0.24, P0.26 и P0.27, докато в Port-1 не могат да се получат щифтовете от 0 до 15. Тук и двата пина като Port-0 и Port-1 се контролират от две групи регистри, обсъдени по-долу.

LPC2148 Конфигурация на щифтове

Конфигурация на ПИН базиран на ARM7 микроконтролер (LPC2148)

Конфигурация на ПИН базиран на ARM7 микроконтролер (LPC2148)

Pin1- (P0.21 / PWM5CAP1.3 / AD1.6)

  • P0.21 е GPIO щифт (I / O щифт с общо предназначение)
  • AD1.6 може да се получи в микроконтролери LPC2144 / 46/48 само когато AD1.6 означава ADC-1, i / p-6.
  • PWM5 е модулатор с широчина на импулса изход-5.
  • CAP1.3 е Capture i / p за таймер-1, канал-3

Pin2- (P0.22 / CAP0.0 / AD1.7 / MAT0.0 2

  • P0.22 е GPIO цифров щифт
  • ПИН AD1.7 е наличен в LPC2144 / 46/48 само там, където AD1.7 означава ADC-1, вход-7
  • CAP0.0 е входен щифт за улавяне за таймер-0, канал-0.
  • MAT0.0 е съвпадение o / p за Таймер-0, канал-0

Pin3-RTXC1 3

Това е I / p към веригата RTC-осцилатор

ПИН4 - TRACEPKT3 / P1.19

  • TRACEPKT3 е пакет за проследяване, бит-3, стандартен входно / изходен порт от вътрешното изтегляне.
  • P1.19 е GPIO цифров щифт

Pin5-RTXC2

Това е изходен щифт от веригата на RTC осцилатор

Pin6, Pin18, Pin25, Pin42 и Pin50

Тези щифтове са земна референция

Pin7-VDDA

Този щифт е аналогово захранващо напрежение (3.3V) и това напрежение е много полезно за вградения чип аналогово-цифрови преобразуватели и цифрово-аналогови преобразуватели.

ПИН8 - P1.18 / TRACEPKT2

  • P1.18 е GPIO цифров щифт
  • TRACEPKT2 е пакет за проследяване, бит-2, стандартен входно / изходен порт от вътрешното изтегляне.

Pin9- P0.25 / AOUT / AD0.4

  • P0.25 е GPIO цифров щифт I
  • AD0.4 означава ADC-0, вход-4
  • Aout - изходът на ЦАП и който е достъпен само в LPC2142 / LPC2144 / LPC2146 / LPC2148

Pin10- D +

Този щифт е USB двупосочна линия D +

Pin11- D-

Този щифт е USB двупосочна D-линия

Pin12-P1.17 / TRACEPKT1

  • P1.17 е GPIO цифров щифт
  • TRACEPKT1 е пакет за проследяване, бит-1, стандартен входно / изходен порт от вътрешното изтегляне.

Pin13-P0.28 / CAP0.2 / AD0.1 / MAT0.2

  • P0.28 е GPIO цифров щифт
  • AD0.1 означава ADC-0, вход-1
  • CAP0.2 е i / p улавяне за таймер-0, канал-2.
  • MAT0.2 е съвпадение o / p за Таймер-0, канал-2

Pin14-P0.29 / CAP0.3 / AD0.2 / MAT0.3

  • P0.29 е GPIO цифров щифт
  • AD0.2 означава ADC-0, вход-2
  • CAP0.3 е i / p улавяне за таймер-0, канал-3.
  • MAT0.3 е съвпадение o / p за Таймер-0, канал-3

Pin15-P0.30 / EINT3 / AD0.3 / CAP0.0

  • P0.30 е GPIO цифров щифт
  • AD0.3 означава ADC-0, вход-3
  • EINT3 е външен прекъсвач 3-вход.
  • CAP0.3 е i / p улавяне за таймер-0, канал-0.

Pin16- P1.16 / TRACEPKT0

  • P1.16 е GPIO цифров щифт
  • TRACEPKT1 е пакет за проследяване, бит-0, стандартен входно / изходен порт чрез вътрешно изтегляне

Pin17-P0.31 / UP_LED / CONNECT

  • P0.31 е GPIO цифров щифт
  • UP_LED е LED индикатор за добра връзка с USB. Когато устройството е подредено, то е ниско, а когато устройството не е подредено, то е високо.
  • CONNECT - Този сигнал се използва за управление на външен резистор (1,5 kΩ) под контрола на софтуерно управление и се използва от функцията на Soft Connect

Pin19 - P0.0 / PWM / TXD0

  • P0.0 е GPIO цифров щифт
  • TXD0 е предавател o / p за UART0.
  • PWM1 е модулатор с широчина на импулса o / p-1.

Pin20- P1.31 / TRIESTE

  • P1.31 е GPIO цифров щифт
  • TRST е тестово нулиране за JTAG интерфейс.

Pin21-P0.1 / PWM3 / RXD0 / EINT0

  • P0.1 е GPIO цифров щифт
  • RXD0 е приемник i / p за UART0.
  • PWM3 е модулатор с широчина на импулса o / p-3.
  • EINT0 е външен 0-вход за прекъсване

Pin22- P0.2 / CAP0.0 / SCL0

  • P0.2 е GPIO цифров щифт
  • SCL0 е I / O часовник I2C0 I / O и отворен източник o / p
  • CAP0.0 е i / p улавяне за таймер-0, канал-0.

Пин 23, 43 и 51 - VDD

Тези щифтове са захранващо напрежение за I / O портовете, както и за сърцевината.

ПИН24- P1.26 / RTCK

  • P1.26 е GPIO цифров щифт
  • RTCK е върнат тест CLK o / p, допълнителен сигнал, добавен към JTAG-порта. Когато честотата на процесора се промени, това помага за синхронизиране на дебъгер.

Pin26- P0.3 / SDA0 / MAT0.0 / EINT1

  • P0.3 е GPIO цифров щифт
  • SDA0 е I / C данни I / O и отворен отвод o / p за спазване на I2C шина.
  • MAT0.0 съвпада o / p за таймер-0, канал-0.
  • EINT1 е външно прекъсване 1-i / p.

Pin27-P0.4 / CAP0.1 / SCK0 / AD0.6

  • P0.4 е GPIO цифров пинов вход / изход
  • SCK0 е сериен CLK за SPI0 и SPI CLK o / p от master / i / p към slave.
  • CAP0.1 е i / p улавяне за таймер-0, канал-0.
  • IAD0.6 означава ADC-0, вход-6

Pin28-P1.25 / EXTIN0

  • P1.25 е GPIO цифров пинов вход / изход
  • EXTIN0 е външен спусък i / p и стандартен вход / изход с вътрешно изтегляне

Pin29- P0.5 / MAT0.1 / MISO0 / AD0.7

  • P0.5 е GPIO цифров пинов вход / изход
  • MISO0 е главен в изход за SPI0, данни i / p към SPI-master / данни o / p от SPI slave.
  • MAT0.1 е съвпадение o / p за таймер-0, канал-1.
  • AD0.7 означава ADC-0, вход-7.

Pin30-P0.6 / MOSI0 / CAP0.2 / AD1.0

  • P0.6 е GPIO цифров пинов вход / изход
  • MOSI0 е master out slave за SPI0 и данни o / p от SPI master / data i / p към SPI slave.
  • CAP0.2 е i / p улавяне за таймер-0, канал-2.

Pin31-P0.7 / PWM2 / SSEL0 / EINT2

  • P0.7 е GPIO цифров пинов вход / изход
  • SSEL0 е подчинен подбор за SPI0 и избира SPI-интерфейс като подчинен.
  • PWM2 е модулатор с широчина на импулса изход-2.
  • EINT2 е външен прекъсвач 2-вход.

Pin32-P1.24 / TRACECLK

  • P1.24 е GPIO цифров пинов вход / изход.
  • TRACECLK е CLK за проследяване и стандартен входно / изходен порт с вътрешно изтегляне

Pin33-P0.8 / TXD1 / PWM4 / AD1.1

  • P0.8 е GPIO цифров пинов вход / изход
  • TXD1 е предавател o / p за UART1.
  • PWM4 е модулатор с широчина на импулса o / p-4.
  • AD1.1 означава ADC-1, вход-1 и е достъпен само в LPC2144 / 46/48.

Pin34- P0.9 / PWM6 / RXD1 / EINT3

  • P0.9 е GPIO цифров пинов вход / изход
  • RXD1 е приемник i / p за UART1.
  • PWM6 е модулатор с широчина на импулса o / p-6.
  • EINT3 е външен прекъсвач 3-вход

Pin35-P0.10 / RTS1 / CAP1.0 / AD1.2

  • P0.10 е GPIO цифров пинов вход / изход
  • RTS1 иска да изпрати o / p за UART1 и LPC2144 / 46/48.
  • CAP1.0 е i / p улавяне за таймер-1, канал-0.
  • AD1.2 означава ADC-1, вход-2 и е достъпен само в LPC2144 / 46/48

Pin36-P1.23 / PIPESTAT2

  • P1.23 е GPIO цифров пинов вход / изход
  • PIPESTAT2 е състояние на тръбопровод, бит-2., И стандартен вход / изход порт с вътрешно изтегляне

Пин37-P0.11 / CAP1.1 / CTS1 / SCL1

  • P0.11 е GPIO цифров пинов вход / изход
  • CTS1 е ясен за изпращане на i / p за UART1 и те са достъпни само в LPC2144 / 46/48
  • CAP1.1 е улавяне i / p за таймер-1, канал-1.
  • SCL1 - I2C1 CLK I / O и отворен дренаж o / p за спазване на I2C-шината

Pin38-P0.12 / MAT1.0 / AD1.3 / DSR1

  • P0.12 е GPIO цифров пинов вход / изход
  • DSR1 е готов за набор данни от i / p за UART1 и те са достъпни само в LPC2144 / 46/48.
  • MAT1.0 е съвпадение o / p за таймер-1, канал-0.
  • AD1.3 означава ADC вход-3 и е достъпен само в LPC2144 / 46/48.

Пин39-P0.13 / DTR1 / MAT1.1 / AD1.4

  • P0.13 е GPIO цифров пинов вход / изход
  • DTR1 е терминал за данни, готов / о, само за UART1 и LPC2144 / 46/48.
  • MAT1.1 е съвпадение o / p за таймер-1, канал-1.
  • AD1.4 означава ADC вход-4 и те са достъпни само в LPC2144 / 46/48.

Pin40-P1.22 / PIPESTAT1

  • P1.22 е GPIO цифров пинов вход / изход
  • PIPESTAT1 е състояние на тръбопровода, бит-1 и стандартен входно / изходен порт с вътрешно изтегляне

Pin41-P0.14 / DCD1 / EINT1 / SDA1

  • P0.14 е GPIO цифров пинов вход / изход
  • DCD1 е i / p за откриване на носител на данни за UART1, а също и само за LPC2144 / 46/48.
  • EINT1 е външен прекъсвач 1-вход.
  • SDA1 е вход / изход за данни I2C1 и отворен източник o / p за спазване на I2C шина

Pin44: P1.21 / PIPESTAT0 44

  • I / O P1.21 е GPIO цифров пинов I / O
  • PIPESTAT0 е състояние на тръбопровода, бит 0 и стандартен входно / изходен порт от вътрешното изтегляне.

Пин45: P0.15 / EINT2 / RI1 / AD1.5 45

  • I / O P0.15 е GPIO цифров пин I / O
  • RI1 е пръстеновиден указател i / p за UART1 и е достъпен само в LPC2144 / 46/48.
  • EINT2 е външен прекъсвач 2-вход.
  • AD1.5 показва ADC 1, вход-5 и също е достъпен само в LPC2144 / 46/48

Пин46: P0.16 / MAT0.2 / EINT0 / CAP0.2

  • P0.16 е GPIO цифров пинов вход / изход
  • EINT0 е външен вход за прекъсване0.
  • MAT0.2 е съвпадение o / p за Таймер-0, канал -2
  • CAP0.2 е i / p улавяне за таймер-0, канал-2.

Пин47: P0.17 / SCK1 / CAP1.2 / MAT1.2 47

  • P0.17 е GPIO цифров пинов вход / изход
  • CAP1.2 е i / p улавяне за таймер-1, канал-2.
  • SCK1 е сериен CLK за SSP и CLK o / p от главен до подчинен.
  • MAT1.2 е съвпадение o / p за Таймер-1, канал-2.

ПИН48: P1.20 / TRACESYNC

  • P1.20 е GPIO цифров пинов вход / изход
  • TRACESYNC е синхронизация на следи.

ПИН49: VBAT

RTC захранване: Този щифт подава захранване към RTC.

Пин52: P1.30 / TMS

P1.30 е GPIO цифров пинов вход / изход

TMS е тестов режим, избран за свързване на JTAG.

Pin53: P0.18 / CAP1.3 / MISO1 / MAT1.3

  • P0.18 е GPIO цифров пинов вход / изход
  • CAP1.3 е i / p улавяне за таймер 1, канал 3.
  • MISO1 е главен In Slave-out за SSP и данни i / p към SPI-master

Pin54: P0.19 / MOSI1 / MAT1.2 / CAP1.2

  • P0.19 е GPIO цифров пинов вход / изход.
  • MAT1.2 означава съвпадение o / p за таймер 1, канал 2.
  • MOSI1 е master out slave за SSP master.
  • CAP1.2 е i / p улавяне за таймер 1, канал 2.

ПИН 55: P0.20 / SSEL1 / MAT1.3 / EINT3

  • P0.20 е GPIO цифров пинов вход / изход.
  • MAT1.3 е съвпадение o / p за таймер 1, канал 3. I
  • SSEL1 е Slave Select, предназначен за SSP. Тук избира интерфейса на SSP като роб.
  • EINT3 е външен прекъсвач 3-вход.

Pin56: P1.29 / TCK

  • P1.29 е GPIO цифров пинов вход / изход
  • TCK е тестов CLK за интерфейс на JTAG.

Pin57: Вход за външно нулиране

Устройството може да бъде пренаредено с LOW на този щифт, като се осъществяват входни / изходни портове, както и периферни устройства за получаване при условията им по подразбиране, а изпълнението на процесора започва на адрес 0.

ПИН58: P0.23 / VBUS

  • P0.23 е GPIO цифров пинов вход / изход
  • VBUS посочва съществуването на захранване от USB-шина

ПИН59: VSSA

VSSA е аналогово заземяване и това трябва да е подобно напрежение като VSS, въпреки че трябва да бъде разделено, за да се намалят грешките и шума

Pin60: P1.28 / TDI 60

  • P1.28 е GPIO цифров пинов вход / изход
  • TDI щифтът е тестова информация, използвана за свързване на JTAG

ПИН61: XTAL2

XTAL2 е o / p от усилвателя на осцилатора

ПИН62: XTAL1

XTAL1 е i / p към вътрешния генератор на CLK, както и към осцилаторните вериги

Pin63: Справка за VREF-ADC

Този щифт трябва да бъде номинално равен или по-малък от напрежението VDD, въпреки че трябва да бъде отделен за намаляване на грешката, както и на шума.

Pin64: P1.27 / TDO 64

  • P1.27 е GPIO цифров пинов вход / изход
  • TDO е тестова информация, използвана за свързване на JTAG.

По този начин става въпрос за конфигурация на щифта на микроконтролера на базата на ARM 7 LPC2148. За студентите по електронно инженерство тази информация ще даде основни познания за конфигурацията на пиновете, паметта на I / O портовете, както и регистрите. Ето въпрос към вас, какви са приложенията на микроконтролера LPC2148?