NXPCortex-M3LPC1768基础教程.pdf
-
资源ID:83357457
资源大小:4.77MB
全文页数:63页
- 资源格式: PDF
下载积分:45金币
快捷下载
![游客一键下载](/images/hot.gif)
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
NXPCortex-M3LPC1768基础教程.pdf
NXP CortexNXP Cortex-M3 LPC1768 基础教程基础教程 活生变改技科生变改技科 好美更活生让子电美更活生让子电 作者作者:天下的人天下的人 时间时间:2010年 9 月 2 日 邮箱邮箱: 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 1 写在前面写在前面 首先说一说为什么写这个教程,转眼间就毕业了,学校的日子还没有过够。就要工作了,由于需要想要搞一搞 ARM M3,很显然芯片选型落在了 STM32 和 NXP 的 LPC17XX 上了。最后选择了 LPC1768 这款型号,买开发板、学习(以前我只用过单片机和一点点 STM32),学习的过程还算顺利,找到了 ZLG 翻译的中文资料和 3 个版本的例程。学习开始了,从 LED 灯、串口、到内部定时器等等。学习的过程夹杂着心酸和喜悦,在学习的过程中发现网络上还没有现成的学习资料。市场上的开发板的一部分不是自己开发的都是参考的 NXP 和 ARM 公司的官方版本,其实这本身并没有什么不好,但是后面的问题出来了,程序注释不详细,除了手册就没有参考资料了。所以在学习的过程中就在想要是把自己学习的过程总结一下,出一点资料,为那些奋斗在学习一线的电子爱好者出一份力,这是一件多么令人高兴的事呀!于是有了今天这个教程的诞生。在这里首先要感谢的是 ZLG 公司为这个系列芯片提供了中文参考资料,其次感谢该公司注释比较详尽的程序,为我的学习和应用提供了不少帮助。关于同是 ARM M3 内核的 STM32 和 LPC17XX 比较,我想大家争论最大的地方是价格。我想说的是 LPC17XX 是 NXP 公司推出的基于 M3 内核比较高端的芯片。应该拿 STM32 中高端芯片和 LPC17XX 比较。我曾经买过几片 stm32f103VET6 是 100 脚 512KB flash、64KB SRAM、72MHz、AD、DA、定时器、USB 从机和 FSMC。而 LPC1768,100 脚、512KB flash、64KB SRAM、100MHz、AD、DA、32 位定时器、USB 主/从/OTG、以太网、电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 2 电机控制 PWM、正交编码器接口等。STM32 有 FSMC 的优势,LPC1768有以太网、USB 主机等优势。可能你要说 stm32F105 和 stm32f107 也有带 USB 主机,以太网的。可是看看价格也差不多,这几个芯片目前的价格都在 40 元左右。还有编程,stm32 有库,而 NXP 没有,但是我觉得 NXP 的寄存器操作也很简单,不信试试就知道了。下面说说本教程的主要内容安排:第一部分主要介绍 LPC1768 的特点。第二部分介绍本教程使用的最小系统版的硬件电路。第三部分是编译环境和下载程序介绍。第四部分是芯片编程介绍,第五部分是实例详解。芯片内部功能和操作详解会柔和在实例的每一个实验中。最后感谢一下辛苦的我自己,没有自己的辛勤劳动就没有这个教程。期待早一点完成这个教程。注意注意:本教程叙述语言力求简洁大方,例程力求通俗易懂,可以不深入追究的东西(如协议内容)就不深入追究。本教程适合的对象是学过或致力于学习单片机或对 ARM7、ARM cortex m3 有所了解的人或想学 LPC17XX 的初学者适用。高手绕行。电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 3 第一部第一部分分 LPC1768 介绍介绍 1.1 简介简介 LPC1768是 NXP 公司推出的基于 ARM Cortex-M3内核的微控制器LPC17XX 系列中的一员。LPC17XX 系列 Cortex-M3 微处理器用于处理要求高度集成和低功耗的嵌入式应用。LPC1700 系列微控制器的操作频率可达100MHz(新推出的LPC1769和LPC1759可达120MHz)。ARM Cortex-M3 CPU 具有 3 级流水线和哈佛结构。LPC17XX 系列微控制器的外设组件包含高达 512KB 的 flash 存储器、64KB 的数据存储器、以太网 MAC、USB 主机/从机/OTG 接口、8 通道 DMA 控制器、4 个 UART、2 条 CAN 通道、2 个 SSP 控制器、SPI 接口、3 个IIC 接口、2 输入和 2 输出的 IIS 接口、8 通道的 12 位 ADC、10位 DAC、电机控制 PWM、正交编码器接口、4 个通用定时器、6 输出的通用 PWM、带有独立电池供电的超低功耗 RTC 和多大 70 个的通用 IO 管脚。1.2 特性(部分)64KB 片内 SRAM 包括:32KB 可供高性能 CPU 通过本地代码/数据总线访问;2 个 16KB SRAM 模块、带独立访问路径、可进行更高吞吐量的操作。这些 SRAM 可用于以太网、USB、DMA 存储器,以及通用指令和数据存储。串行接口:以太网 MAC 带 RMII 接口和相关的 DMA 控制器;电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 4 USB 2.0 全速从机/主机/OTG 控制器,带有用于从机、主机功能的片内 PHY 和相关的 DMA 控制器;4个UART、带小数波特率发生功能、内部FIFO、DMA支持和RS-485支持。1 个 UART 带有 modem 控制 IO 并支持 RS-485,全部的 UART都支持 IrDA;CAN 控制器,带有 2 个通道;SPI 控制器,具有同步、串行、全双工通信和可编程的数据长度;2 个 SSP 控制器,带有 FIFO,可按多种协议进行通信。其中一个可选择用于 SPI,并且和 SPI 公用中断。SSP 接口可以与 GPDMA控制器一起使用。3 个增强型的 IIC 总线接口。IIS 接口,用于数字音频输入和输出,具有小数速率控制功能。IIS 接口可与 GPDMA 一起使用。IIS 接口支持 3 线数据发送和接收或 4 线组合发送和接收连接,以及主机时钟输入输出;其他外设:4 个通用定时/计数器,共有 8 个捕获输入和 10 个比较输出。每个定时器都有一个外部计数输入。一个电机控制 PWM,支持三相的电机控制;通过片内 PLL,没有高频晶振,CPU 页可以以最高频率运转。第二个专用的 PLL 可用于 USB 接口,以允许增加主的灵活性;电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 5 器件选型表:方框图:电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 6 第二部分第二部分 最小板硬件电路最小板硬件电路 2.1 硬件电路简介硬件电路简介 硬件电路基本结构图:微控制器电源IO口LEDUSBJTAGUARTKEYEEPROMRTC 图 1 硬件电路基本结构图 硬件电路原理图:P0.0/RD1/TXD3/SDA146P0.1/TD1/RXD3/SCL147P0.2/TXD0/AD0.798P0.3/RXD0/AD0.699P0.4/I2SRX_CLK/RD2/CAP2.081P0.5/I2SRX_WS/TD2/CAP280P0.6/I2SRX_SDA/SSEL1/MAT2.079P0.7/I2STX_CLK/SCK1/MAT2.178P0.8/I2STX_WS/MISO1/MAT2.277P0.9/I2STX_SDA/MOSI1/MAT2.376P0.10/TXD2/SDA2/MAT3.048P0.11/RXD2/SCL2/MAT3.049P0.15/TXD1/SCK0/SCK62P0.16/RXD1/SSEL0/SSEL63P0.17/CTS1/MISO0/MISO61P0.18/DCD1/MOSI0/MOSI60P0.19/DSR1/SDA159P0.20/DTR1/SCL158P0.21/RI1/RD157P0.22/RTS1/TD156P0.23/AD0.0/I2SRX_CLK/CAP3.09P0.24/AD0.1/I2SRX_WS/CAP3.18P0.25/AD0.2/I2SRX_SDA/TXD37P0.26/AD0.3/AOUT/RXD36P0.27/SDA0/USB_SDA25P0.28/SCL0/USB_SCL24P0.29/USB_D+29P0.30/USB_D-30TDO/SWO1TDI2TMS/SWDIO3TRST4TCK/SWDCLK5RTCK100RSTOUT14RESET17VDDA10VSSA11VREF+12VREF-15VSS_131VSS_241VSS_355VSS_472VSS_597VSS_683VDDIO_128VDDIO_254VDDIO_371VDDIO_496VDDREG_142VDDREG_284XTAL223XTAL122RTCX218RTCX116VBAT19NC13P4.29/TX_MCLK/MAT2.1/RXD385P4.28/RX_MCLK/MAT2.0/TXD382P3.26/STCLK/MAT0.1/PWM1.326P3.25/MAT0.0/PWM1.227P2.13/EINT3/I2STX_SDA50P2.12/EINT2/I2STX_WS51P2.11/EINT1/I2STX_CLK52P2.10/EINT0/NMI53P2.9/USB_CONNECT/RXD264P2.8/TD2/TXD265P2.7/RD2/RTS166P2.6/PCAP1.0/RI1/TRACECLK67P2.5/PWM1.6/DTR1/TRACEDATA068P2.4/PWM1.5/DSR1/TRACEDATA169P2.3/PWM1.4/DCD1/TRACEDATA270P2.2/PWM1.3/CTS1/TRACEDATA373P2.1/PWM1.2/RXD174P2.0/PWM1.1/TXD175P1.31/SCK1/AD0.520P1.30/VBUS/AD0.421P1.29/MC2B/PCAP1.1/MAT0.145P1.28/MC2A1.0/MAT0.044P1.27/CLKOUT/USB_OVRCR/CAP0.143P1.26/MC1B/PWM1.6/CAP0.040P1.25/MC1A/MAT1.139P1.24/MCFB2/PWM1.5/MOSI038P1.23/MCFB1/PWM1.4/MISO037P1.22/MC0B/USB_PWRD/MAT1.036P1.21/MCABORT/PWM1.3/SSEL035P1.20/MCFB0/PWM1.2/SCK034P1.19/MC0A/USB_PPWR/CAP1.133P1.18/USB_UP_LED/PWM1.1/CAP1.032P1.17/ENET_MDIO86P1.16/ENET_MDC87P1.15/ENET_REF_CLK88P1.14/ENET_RX_ER89P1.10/ENET_RXD190P1.9/ENET_RXD091P1.8/ENET_CRS92P1.4/ENET_TX_EN93P1.1/ENET_TXD194P1.0/ENET_TXD095LPC1768U1LPC1768_1P0.23P0.24P0.25P0.26VDDAVSSAVREF+RSTOUTVREF-RESETVBATP1.31P1.30P0.27P0.28P0.26P0.25P0.24P0.23VDDAVSSAVREF+RSTOUTVREF-RESETP1.31P1.30P0.28P0.27P3.26P3.25VDDIO_1P0.29P0.30VSS_1P1.18P1.19P1.20P1.21P1.22P1.23P1.24P1.25P1.26VSS_2VDDREG_1P1.27P1.28P1.29P0.0P0.1P0.10P0.11P2.131234567891011121314151617181920212223242526P11234567891011121314151617181920212223242526P3P3.26P3.25VDDIO_1P0.29P0.30VSS_1P1.18P1.19P1.20P1.21P1.22P1.23P1.24P1.25P1.26VSS_2VDDREG_1P1.27P1.28P1.29P0.0P0.1P0.10P0.11P2.13P2.12P2.11P2.10VDDIO_2VSS_3P0.22P0.21P0.20P0.19P0.18P0.17P0.15P0.16P2.9P2.8P2.7P2.6P2.5P2.4P2.3VDDIO_3VSS_4P2.2P2.1P2.0P0.9P0.8P0.7P0.6P0.5P0.4P4.28P4.29VSS_6VDDREG_2P1.17P1.16P1.15P1.14P1.10P1.9P1.8P1.4P1.1P1.0VDDIO_4VSS_5P0.3P0.2123456789101112131415161718192021222324P2P2.12P2.11P2.10VDDIO_2VSS_3P0.22P0.21P0.20P0.19P0.18P0.17P0.15P0.16P2.9P2.8P2.7P2.6P2.5P2.4P2.3VDDIO_3VSS_4P2.2P2.1P2.0P0.9P0.8P0.7P0.6P0.5P0.4P4.28VSS_6VDDREG_2P4.29P1.17P1.16P1.15P1.14P1.10P1.9P1.8P1.4P1.1P1.0VDDIO_4VSS_5P0.3P0.21234567891011121314P01234567891011121314151617181920JTAG3V3GNDTDOTDITMSTRSTTCKRTCKRTCKTRSTTDITMSTCKTDORESET10KR110KR210KR310KR410KR510KR6GND3V33V33V310uHL110uHL210uHL310uHL4GND0.1uFC11uFC20.1uFC31uFC4VDDAVSSAVREF+VREF-GND1IN3OUT2OUT4U2REG1117-3.3VCCGND3V30.1uFC50.01uFC60.1uFC7220uFC8220uFC9123powerVBUS1D-2D+3GND4J1787780-11 2 3Power_110KR73V30.1uFC10S1SW-PBGNDBT1Battery1 2P_BATTX1X2RX1RX212Y112Y222PFC1122PFC1210PFC1310PFC14GNDGNDRX1RX2X1X2VDDAVSSAVREF+VREF-0.1uFC153V3GND0.1uFC163V3GND0.1uFC173V3GND0.1uFC183V3GND0.1uFC193V3GND0.1uFC203V3GNDD1LED2D2LED2D3LED2D4LED2D5LED23V3680R8GND680R9680R10680R11680R1212PLED3V3P2.0P2.1P2.2P2.310KR13S2SW-PBS3SW-PBS4SW-PB10KR1410KR153V33V33V3GNDGNDGND12INT0P2.10P2.11P2.121310118129147C1+1C2+4GND15C1-3VCC16C2-5V-6V+2U3MAX3232CSE0.1uFC210.1uFC220.1uFC230.1uFC24GND3V33V30.1uFC25GNDP0.10P0.11P0.2P0.31234567891110COMD Connector 9123456S_COMTXD2TXD2RXD2RXD2GND33KR1633KR17Q18050Q28050D6Diode 1N4148D7Diode 1N4148GNDGND10KR183V31234S_dRTSRTSDTRDTRP2.10RESET0.1uFC26GND22R1922R2020pFC2720pFC28GNDGNDP0.30P0.294k7R21P1.30Q3PNP_85501K5R223V310kR232KR24123S_USBGNDP2.9USB_CONNECTUSB_D-USB_D+VUSBISPkey1key2INT0LED_POWERUSB_DEVICEUART&ISPINT0&KEYLEDPOWER_LEDJTAGIO&PINIO&PINIO&PINIO&PINMINA_POWER1,2USB供供2,3供电电电供供3,5;4,6选选选电01,3;2,4选选选电2使使选电0下下下下,1,2;3,4一一一一电LED供电电电供电供电电电2,3直电电电1,2芯芯电电1234ISPP0.2P0.3P2.10RESETA01A12A23WP7VCC8GND4SDA5SCL6U424C02GND4.7KR254.7KR263V3P0.28P0.27POWER_S 图 2 硬件电路原理图 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 7 2.2 电源电路电源电路 3V310uHL110uHL210uHL310uHL4GND0.1uFC11uFC20.1uFC31uFC4VDDAVSSAVREF+VREF-GND1IN3OUT2OUT4U2REG1117-3.3VCCGND3V30.1uFC50.01uFC60.1uFC7220uFC8220uFC9123power1 2 3Power_1MINA_POWER1,2USB供供2,3供电电电供供POWER_S LPC17XX 系列微控制器在电源部分需要五种电压源对其供电,分别是:A、内核和外部通路所需的 3.3V 电源 VDD(3V3);B、内部稳压器所需的 3.3V 电源 VDD(REG)(3V3);C、模拟部分(如片上 ADC 和 DAC)所需的 3.3V 电源;D、模数转换器 ADC 所需的参考电源 VREFP;E、实时时钟 RTC 所需的 3.3V 电源 VBAT;在本设计中电源采用外部 5V 供电,可以是 USB 取电也可以是电源适配器供电。通过 Power_1 短路冒选择,若短路 1、2 则是 USB取电。若短路 2、3 则是电源接口取电!电源进入目标板后首先经过一个开关 POWER_S,控制电源的通断。然和经过 C5、C6、C8 三个电容滤波,输入 1117-3.3 以获得 3.3V 电源。LPC1768 具有独立的模拟电源和 AD 输入参考电压,为了降低噪声和出错几率,模拟电源和数字电源需要隔离,本设计的 L1-L4 就是将数字电源的高频噪声和模拟电源隔离。1117-3.3 是 3.3V 稳压芯片输出电流高达800mA。实时时钟 RTC 部分本部分采用纽扣电池供电,供电管脚连接短路冒,不用时可以取掉。电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 8 2.3 复位电路复位电路 10KR73V30.1uFC10S1SW-PBGND LPC17XX 系列微控制器拥有4个复位源,分别是外部RESET复位,看门狗复位,上电复位(POR)以及掉电检测复位(BOD)。本部分硬件电路完成上电复位和外部复位。本设计中芯片的外部复位和上电复位由按键复位和RC复位电路完成。芯片是低电平复位有效,当复位管脚上的低电平持续一定的时钟周期就会发生芯片复位。上电时复位低电平时间由 RC 的值决定。手动复位时需要按下复位按键 S1,当松开复位按键 S1 后复位发生。2.4 系统时钟电路系统时钟电路 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 9 12Y112Y222PFC1122PFC1210PFC1310PFC14GNDGNDRX1RX2X1X2 LPC17XX 包括 3 个独立的时钟源,分别为主时钟振荡器、RTC 时钟振荡器和内部 RC 振荡器,在 LPC17XX 复位后,LPC17XX 将由内部 RC 振荡器提供时钟直至由软件切换到另外的时钟振荡源为止,这使得系统可以不依懒于外部时钟进行操作,而且使引导加载程序可以在一个确定的频率下进行操作。A、内部 RC 振荡器 内部 RC 振荡器(IRC)可以作为看门狗的时钟源,也可以作为时钟,驱动锁相环(PLL)提供给 CPU。IRC 的精度不足,因此不能用于 USB 接口,通常 IRC 频率是 4MHz,在开机或者芯片复位时,LPC17XX 使用 IRC 作为时钟源,之后可以通过软件切换使用其他的时钟源。B、主晶振 主晶振可以用于使用或者不是用 PLL0 为 CPU 提供时钟,其频率范围是 1-24MHz,这个频率可以通过主 PLL(PLL0)倍频至更高的频率直到 CPU 最大频率。通常把主晶振输出的时钟称为 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 10 OSC_CLK,PLL0 输入引脚上的时钟称为 PLLCLKIN,ARM 处理器时钟频率称为 CCLK,当使用主晶振提供时钟并不激活 PLL 时,PLLCLKIN和 CCLK 的值直接相等。LPC17XX 的板上晶振可以工作在两种模式下:从属模式(一般使用有源晶振的情况)和震荡模式(普通晶振),在从属模式下,输入时钟信号(XTAL1 引脚)与一个 100pF 电容相连,其幅值不得少于 200mV,XTAL2 引脚不连接。在震荡模式下,由于片内集成了反馈电阻,所以主需要在外部连接一个晶振和电容就可以形成基本模式震荡。本设计中使用震荡模式。C、RTC 晶振 RTC 晶振的频率是 32.768KHz,一般用于给 RTC 实时时钟提供时钟源,RTC 时钟源可以提供Hz 给 RTC 并且可以输出 32KHz 的时钟频率,作为 PLL0 和 CPU 或者看门狗定时器使用时钟源。本设计中 Y1 是 RTC 时钟使用 32.768KHz 晶振,Y2 是主晶振使用12MHz 晶振。2.5 JTAG 接口电路 1234567891011121314151617181920JTAG3V3GNDRTCKTRSTTDITMSTCKTDORESET10KR110KR210KR310KR410KR510KR6GND3V33V3JTAG 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 11 采用 ARM 公司提出的标准 20 脚 JTAG 仿真调试接口,JTAG 信号的定义及与 LPC1768 的连接如图。在 RTCK 引脚接一个 4.7K 的下拉电阻,使系统复位后 LPC1768 内部 JTAG 接口使能,这样就可以直接进行 JTAG 仿真调试了。2.6 串口电路串口电路 1310118129147C1+1C2+4GND15C1-3VCC16C2-5V-6V+2U3MAX3232CSE0.1uFC210.1uFC220.1uFC230.1uFC24GND3V33V30.1uFC25GNDP0.10P0.11P0.2P0.31234567891110COMD Connector 9123456S_COMTXD2TXD2RXD2RXD2GNDRTSDTRUART&ISP3,5;4,6选选选电01,3;2,4选选选电21234ISPP0.2P0.3P2.10RESET Max3232 是工作在 3.3V 的 RS232 电平转换芯片,内部有 2 组串口转换电路,本设计中将 LPC1768 的串口 0 和串口 2 引出,通过跳线帽复用一个串口头,当 S_COM 的 1、3,2、4 短路的时候选择串口 2,3、5,4、6 短路的时候选择串口 0。在通过 RS232 串口ISP 编程的时候必须将串口选择在串口 0 上。使用 TTL 电平通过ISP 口进行 ISP 编程的时候没有这个限制。由于在用串口 ISP 编程的时候要使用到串口的 RTS 和 DTR 引脚,所以在进行串口 ISP 编程的时候不能使用 3 线串口。必须使用支持 RTS 和 DTR 的串口。电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 12 2.7 按键电路按键电路 10KR13S2SW-PBS3SW-PBS4SW-PB10KR1410KR153V33V33V3GNDGNDGND12INT0P2.10P2.11P2.12key1key2INT0INT0&KEY LPC1768 最小板上一个设有 3 个通用按键和一个复位按键,其中INT0 既可以做普通按键用也可以做外部中断使用。其余 2 个是普通按键。设计上每一个按键都添加了一个 10K 的上拉电阻。2.8 LED 显示电路显示电路 D1LED2D2LED2D3LED2D4LED2D5LED23V3680R8GND680R9680R10680R11680R1212PLED3V3P2.0P2.1P2.2P2.3LED_POWERLEDPOWER_LEDLED供电电电 LPC1768 最小板上有 4 个通用 LED 灯和一个电源指示灯,通用LED 采用灌电流设计,并且有一个使能短路冒,当拔掉短路冒时LED 电路断电。2.9 EEPROM 电路电路 A01A12A23WP7VCC8GND4SDA5SCL6U424C02GND4.7KR254.7KR263V3P0.28P0.27 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 13 LPC1768 支持 400K 高速模式的硬件 IIC 接口,所以设计了一片24C02 为系统扩展一块电可擦除存储器。用于系统保持掉电需要保护的数据。24C02 操作简便性能稳定,是保存小量数据的不错选择。为了减小总线操作功耗,总线的上拉电阻使用 4.7K。2.10 USB 从机电路从机电路 VBUS1D-2D+3GND4J1787780-10.1uFC26GND22R1922R2020pFC2720pFC28GNDGNDP0.30P0.294k7R21P1.30Q3PNP_85501K5R223V310kR232KR24123S_USBGNDP2.9USB_CONNECTUSB_D-USB_D+VUSBUSB_DEVICE2,3直电电电 为了实现 USB 数据通讯和 USB bootloader 下载程序,LPC1768最小板板载了 USB 从机接口,此电路不但有 USB 总线的基本辅助原件,还有一个 USB 全速配置端口,USB 主机的 D+和 D-总线是有下拉电阻的,当 D+上出现上升沿时说明有一个 USB 全速设备插入,当 D-上上出现上升沿时说明由一个 USB 低速设备插入。LPC1768支持 USB 全速,因此需要在 D+上由一个 1.5K 的上拉电阻。如果S_USB 2,3 脚短接,则 Q3 上电就导通,则无论何时接上 USB 接口都将使 USB 主机认为有一个全速 USB 插入。如果 1,2 短接则受到程序通过 P2.9 号管脚控制。这样可以使系统在做 USB 通讯时才让 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 14 主机认为由一个 USB 全速设备插入。211 LPC1768 芯片芯片 P0.0/RD1/TXD3/SDA146P0.1/TD1/RXD3/SCL147P0.2/TXD0/AD0.798P0.3/RXD0/AD0.699P0.4/I2SRX_CLK/RD2/CAP2.081P0.5/I2SRX_WS/TD2/CAP280P0.6/I2SRX_SDA/SSEL1/MAT2.079P0.7/I2STX_CLK/SCK1/MAT2.178P0.8/I2STX_WS/MISO1/MAT2.277P0.9/I2STX_SDA/MOSI1/MAT2.376P0.10/TXD2/SDA2/MAT3.048P0.11/RXD2/SCL2/MAT3.049P0.15/TXD1/SCK0/SCK62P0.16/RXD1/SSEL0/SSEL63P0.17/CTS1/MISO0/MISO61P0.18/DCD1/MOSI0/MOSI60P0.19/DSR1/SDA159P0.20/DTR1/SCL158P0.21/RI1/RD157P0.22/RTS1/TD156P0.23/AD0.0/I2SRX_CLK/CAP3.09P0.24/AD0.1/I2SRX_WS/CAP3.18P0.25/AD0.2/I2SRX_SDA/TXD37P0.26/AD0.3/AOUT/RXD36P0.27/SDA0/USB_SDA25P0.28/SCL0/USB_SCL24P0.29/USB_D+29P0.30/USB_D-30TDO/SWO1TDI2TMS/SWDIO3TRST4TCK/SWDCLK5RTCK100RSTOUT14RESET17VDDA10VSSA11VREF+12VREF-15VSS_131VSS_241VSS_355VSS_472VSS_597VSS_683VDDIO_128VDDIO_254VDDIO_371VDDIO_496VDDREG_142VDDREG_284XTAL223XTAL122RTCX218RTCX116VBAT19NC13P4.29/TX_MCLK/MAT2.1/RXD385P4.28/RX_MCLK/MAT2.0/TXD382P3.26/STCLK/MAT0.1/PWM1.326P3.25/MAT0.0/PWM1.227P2.13/EINT3/I2STX_SDA50P2.12/EINT2/I2STX_WS51P2.11/EINT1/I2STX_CLK52P2.10/EINT0/NMI53P2.9/USB_CONNECT/RXD264P2.8/TD2/TXD265P2.7/RD2/RTS166P2.6/PCAP1.0/RI1/TRACECLK67P2.5/PWM1.6/DTR1/TRACEDATA068P2.4/PWM1.5/DSR1/TRACEDATA169P2.3/PWM1.4/DCD1/TRACEDATA270P2.2/PWM1.3/CTS1/TRACEDATA373P2.1/PWM1.2/RXD174P2.0/PWM1.1/TXD175P1.31/SCK1/AD0.520P1.30/VBUS/AD0.421P1.29/MC2B/PCAP1.1/MAT0.145P1.28/MC2A1.0/MAT0.044P1.27/CLKOUT/USB_OVRCR/CAP0.143P1.26/MC1B/PWM1.6/CAP0.040P1.25/MC1A/MAT1.139P1.24/MCFB2/PWM1.5/MOSI038P1.23/MCFB1/PWM1.4/MISO037P1.22/MC0B/USB_PWRD/MAT1.036P1.21/MCABORT/PWM1.3/SSEL035P1.20/MCFB0/PWM1.2/SCK034P1.19/MC0A/USB_PPWR/CAP1.133P1.18/USB_UP_LED/PWM1.1/CAP1.032P1.17/ENET_MDIO86P1.16/ENET_MDC87P1.15/ENET_REF_CLK88P1.14/ENET_RX_ER89P1.10/ENET_RXD190P1.9/ENET_RXD091P1.8/ENET_CRS92P1.4/ENET_TX_EN93P1.1/ENET_TXD194P1.0/ENET_TXD095LPC1768U1LPC1768_1P0.23P0.24P0.25P0.26VDDAVSSAVREF+RSTOUTVREF-RESETVBATP1.31P1.30P0.27P0.28P3.26P3.25VDDIO_1P0.29P0.30VSS_1P1.18P1.19P1.20P1.21P1.22P1.23P1.24P1.25P1.26VSS_2VDDREG_1P1.27P1.28P1.29P0.0P0.1P0.10P0.11P2.13P2.12P2.11P2.10VDDIO_2VSS_3P0.22P0.21P0.20P0.19P0.18P0.17P0.15P0.16P2.9P2.8P2.7P2.6P2.5P2.4P2.3VDDIO_3VSS_4P2.2P2.1P2.0P0.9P0.8P0.7P0.6P0.5P0.4P4.28P4.29VSS_6VDDREG_2P1.17P1.16P1.15P1.14P1.10P1.9P1.8P1.4P1.1P1.0VDDIO_4VSS_5P0.3P0.2TDOTDITMSTRSTTCKRTCK10KR73V30.1uFC10S1SW-PBGNDBT1Battery1 2P_BATTX1X2RX1RX2VDDAVSSAVREF+VREF-0.1uFC153V3GND0.1uFC163V3GND0.1uFC173V3GND0.1uFC183V3GND0.1uFC193V3GND0.1uFC203V3GND供电供电电电 上图就是 LPC1768 芯片管脚连接图,在每一对 VDD 和 VSS 之间都有一个 0.1uF 的去耦电容,以保证芯片正常稳定工作。电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 15 第三部分第三部分 编译环境和程序下载编译环境和程序下载编译环境和程序下载 3.1 编译环境编译环境 LPC1768 的编译环境主要有 keil 或称 MDK 和 IAR,目前最新版本 4.12(这里说的 keil 是指 keil 的 ARM 版本,不是指 keil 的51 版本)。这两个编译软件都是比较有名的编译器,其中用过 51的人不会不知道 keil,当然 IAR 也是一个强大的编译器,有良好的C+支持能力。一般入门我们选择 keil,因为 keil 操作简单使用方便。下面就介绍一下如何通过 keil 创建一个 LPC1768 的工程。Keil 软件可以在官方网站上下载到限制版,当然你不喜欢限制版那就找个国内的破解软件吧!Google一下就出来了。然后安装keil软件,一般 keil 被安装在 C:keil 路径下,不要改变其默认路径否则有可能出现编译头文件找不到路径的可能。安装好 keil 后会在桌面上出现快捷方式如图所示:。双击快捷方式将打开keil 软件,如下图所示,一般打开后显示上次关闭时的工程。新建工程步骤:电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 16 A、点击 Project 菜单下的 New uVision Project。如图:B、出现保存工程的界面,保存到我们想要保存的路径下,文件名即为本工程名,注意工程文件众多建议新建一个空文件夹保存。C、选择芯片,在 NXP 列表下选择 LPC1768 芯片。然后点击 OK。接下来出现的对话框选择“是”;电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 17 D、到现在一个工程就创建好了:E、下面新建一个文件,点击或者 File 菜单下的 New。F、然后点击保存,出现保存对话款,输入文件名以.c 为后 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 18 缀名。G、接下来右键点击左侧 Target1 下的 Source Group1 的下拉菜单的 Add File to Group将我们刚刚新建的文件添加到工程。F、出现添加对话框后选择新建的文件或已有的 C 程序源文件,然后点击 Add,点击 Add 后就可以点击 Add 下面的 Close 了。电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 19 接下来就可以编写程序了。编写好程序,点击编译,不过要想生成 hex 文件还要点击配置工程 output。将 Create HEX File 前方框打钩,然后点击 OK。这样工程在编译的时候就会自动生成 HEX 文件了。如果需要使用 jlink 在 keil 环境下调试和下载程序,需要在 Debug 菜单下选择 Use Cortex-M3 J-LINK 然后点击 Seting。在 seting 下的 debug菜单下的 Prot 选择 SW,MAX Clock 选择 3M,在 flash download页面下点击 ADD,选择合适的型号和容量,点 OK 后到 Utilities 电子让生活更美好 天下的人(红豆电子)与贞明电子协同打造 20 菜单下选