是否有用于LPC芯片的标准在线编程连接器?


8

各种LPC微控制器芯片具有引导模式,该模式接受串行通信并将接收到的程序写入Flash。我想用必须在电路中编程的LPC1114LPC1114来制作PCB,而PCB上的接口电路最少。是否有用于提供所需信号(GND,RxD,TxD,复位,BootModeEnable)的标准连接器?


2
有用于JTAG和SWD的标准连接器,但没有用于通过串行连接加载程序的标准连接器。
Leon Heller 2012年

由于缺乏标准,是否经常使用某些连接器?甚至是具有这种连接器的单板?
Wouter van Ooijen

只需使用具有三个引脚的插头即可-Gnd,Tx和Rx。
莱昂·海勒2012年

对于“放手”,需要一个或两个额外的引脚:reset和BootModeEnable(可以结合使用,但要花一些额外的电路)。
Wouter van Ooijen 2012年

Answers:


3

我使用Sparkfun的USB转UART板。我带出UART0,复位并isp到头。我使用跳线将reset和isp接地,然后使用FlashMagic。仅当我也通过USB为设备供电时,这才似乎正常工作,因此这种情况很普遍。

Sparkfun的董事会:

https://www.sparkfun.com/products/718


您无需从USB手中夺取权力就可以建立共同点,将这些地方绑在一起就足够了。
克里斯·斯特拉顿

1

如果将连接器设置为与低压FTDI USB串行电缆的插头版本兼容,则可以选择不需要与定制电缆的制造商签约。

您可以将启动模式从状态行下驱使,并通过一个电容将复位耦合到该模式(想一想,当我用ST部件进行此操作时,我可能将晶体管用作逆变器)。然后取消选择并重新选择启动模式将重置芯片并准备下载。


我考虑过这种方法,但是我宁愿坚持或多或少地采用标准的两握手线方法。这使该选项保持打开状态,以命令执行非引导加载重置,并在目标板上保存了一些组件。
Wouter van Ooijen 2012年

1

由于似乎没有标准,我做出了自己的选择:目标板使用2x4直角排针,而“编程器”板则使用同上的母连接器。编程器具有FT232RL或类似的器件,5V-> 3.3V稳压器和一个开关,用于禁用目标板的电源(在将复位引脚重新用作GPIO时,必须将目标芯片置于编程模式)。

在此处输入图片说明 连接器引脚

在此处输入图片说明

在此处输入图片说明 编程器(dongle)电路图 在此处输入图片说明

编程器,带有最少的LPC1114目标板。

我将lpc21isp用作PC上的编程工具(开放源代码,可以轻松地为Windows或Linux编译),但是我不得不在代码中添加一行,因为下载后它启动应用程序的方式(跳转到代码的开头)不适用于Cortex。


0

我以前没有使用LPC1114,但请看下面的地址。在左侧,您将看到一个原理图文件的链接...

http://www.keil.com/mcb1000/


该板在PCB上具有串行接口硬件(在这种情况下:max232芯片,但可能是FT232RL或其他产品),因此没有连接器承载我要连接的信号。
Wouter van Ooijen 2012年

在第二页上,有JTAG接口。您必须在PC端使用JTAG适配器,但是在PCB上,没有像RS232这样的附加硬件...
Malkocoglu 2012年

我想使用串行接口,而不是JTAG。太复杂,信号线太多。
Wouter van Ooijen 2012年

SWD仅需要两个或三个信号。您可以进行调试,这非常有用。
Leon Heller 2012年

2
的确如此,但是要以PC端更复杂的接口为代价。(即使我有一个可用的调试器,我也很少使用它)
Wouter van Ooijen 2012年

0

我实际上是在用相同的微芯片构建东西。我刚刚从digikey 那里拿到了其中之一:http : //ics.nxp.com/lpcxpresso/,价格约为20美元,切断了电路板的“目标”侧,并在“ LPC链接”侧连接了一个自定义连接器使用我的编程标题。自从基于RedEclipse的环境(我讨厌Eclipse)以来,CodeRed制作的环境令人讨厌,但是它可以在Windows,Linux以及Mac上运行。它们具有所有命令行程序与LPC Link界面一起使用的说明。

我在Linux中设置了一个可以运行的环境make dl,它将通过USB和到LCP1114的SWD连接初始化链接,对其进行编程并启用安全性位。如果您不重用SWD信号之一,则甚至可以用于调试。

它不是您想要的序列号,但它就像一个魅力。


1
我知道lpcexpresso,我有1114、1343、1769和踢脚线。不错的东西(尽管我厌恶放弃了IDE和LPC链接),但不适合我想要的东西。我的PCB最大为20 x 50毫米。
Wouter van Ooijen

@WoutervanOoijen,我使用vim,并已将所有工具设置为通过命令行运行。我的面板更大一点,但是应该可以正常工作。过去,当我完成类似的小项目时,我将编程销钉伸出到较大的焊盘上,然后装配了一个定制夹具,以通过弹簧加载的销钉将其连接并固定在适当的位置。我真的不知道将“通用/标准”连接器连接到PCB的任何现成解决方案。
克里斯·巴恩森

0

如果要使用标准连接器(即RS232)进行串行编程,为什么不通过LPC侧的标准DB9公头实现普通UART(MAX3232等)呢?比起您简单地将延长线(公对母)DB9电缆连接到PC(或者,如果您的PC没有串行端口,则使用串行转USB电缆)。无论如何,将母DB9放在您的PLC板上,就无需制造串行电缆了。不要忘记正确连接引脚,扩展电缆是直的(1-1、2-2,... 9-9)。

如果板上的空间有问题(DB9没有足够的空间),则只能提供2 x 5针接头连接器。

当然,您也可以使用备用的MAX3232电平转换器来迫使您的电路板进入复位/引导模式,就像我在使用Flashmagic的基于NXP / AT89C51Rx2的电路板上所做的那样。同样的原理,Falshmagic通过串行线路控制启动项。

话虽如此,我会选择SWD / JTAG并进行调试。


(评论大约6年后...)我不想使用标准的RS232连接器,那样会浪费电路(两侧)。我希望目标侧的电路最少(基本上为0)。
Wouter van Ooijen
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.