新闻  |   论坛  |   博客  |   在线研讨会
LPC1700应用笔记-----前言
flyforyou85 | 2012-10-18 18:04:20    阅读:989   发布文章

写在前面的话 最早接触到的单片机是C8051F系列,那是觉得比在学校接触的80C51的单片机要强N倍。外设很丰富,功耗也很低,算的上真正的“单片机”,现在想想学校学的AT89C51应该只是个“核”而已。 09年在《电子产品世界》上偶然看到STM32的广告,朦胧之中感觉那才是我想要的。如是从他的关网上下了一堆资料看,看了好久基本是一头雾水,也没坚持看了。后来索性从网上买了一个MINI-STM32的开发板来玩,一直玩到现在。 后来工作中要选MCU,当时毫不犹豫的选了STM32的,后来由于供货以及可靠性还有STM32的小小“问题”,最中选择了LPC1766,就是今天教程的主角。从开始到现在,产品已经开始成形,一路走来,发现他的确很强悍,也很“倔强”,走了不少弯路,有好多的问题,当时也没有资料可以参考,毕竟用的人少。唯一参考的就是ZLG的那份尽是广告的中文DS和KEIL的例程,在摸索中学习,所以积累了些心得,这里所写的,全当是自己的学习笔记吧,能拿出来和大家分享也是件很快乐的事情。 STM32和LPC1766各自都有各自的优点和缺点,想想这和各自的市场定位和行业背景应该有着不少关系。今天STM32大行其道,粉丝铺天盖地,足见ST的功力啊!我也在ourdev上写过一篇帖子,对二者做了一些浅显的对比。 教程中所写的,很多肯定存在错误,个人的经验和能力的不足,请大家不吝啬指正,我也表示感谢和欢迎。cometomeliyu@163.com这是我的邮箱 LPC1700基本介绍 LPC1700系列处理器为cortex-M3的内核,采用3及流水线和哈佛结构,带有独立的本例指令和数据总线以及用于外设的高性能的第三条总线,并集成了分支预测机构,单周期乘法,硬件除法等强大的功能。 NVIC是cortex-M3的一大特色,所以LPC1700也具有出色的中断处理能力。其他的就多说了,到处就在说,说说实际应用到的,能感觉到的关键特性。 1. CPU可到达100MHZ。这在M3系列中是最高的。 2. 存储器保护单元。这个这个防止代码错误运行以及非法Copy行为。 3. 集成了USB Host/OTG/device,CAN,I2S. 4. 用于电机控制的PWM输出和正交编码器接口,适合工业控制。 5. 集成了硬件时钟日历的RTC.这个用起来比较方便,无需软件计算年月日。 6. 4种模式的低功耗的电源管理。睡眠—深度睡眠—掉电---深度掉电,可以通过RTC中断,以太网和CAN活动中断等来唤醒CPU。 7. 多层次得AHB总线矩阵,且具有8个通道的DMA控制器,结合SSP,I2S,UART,ADC,DAC,定时器和GPIO一起使用。这块我个人认为相对复杂 注意点:LPC1700的ADC与电源的参考电压和layout有着很重要的关系。我认为相对STM32来说,用的时候要小心。稍不注意,采集的数据精度和误差就会很差。 实际应用中的一点感受。 1. 管脚的定义与NXP的ARM7保持兼容,这是市场策略上的一种考虑,我没有用过ARM7,全当新东西使用,功能负用还是很方便的。但是将uart和AD放在一个脚上,我很想骂人。STM32的管脚映射也不错。 2. 使用“国人生产”的ULINK2作为调试器,速度很快,而且很稳定,这比我用JLINK V8要好些。2M的速度是很稳定的。 3. UART和I2C这块一直没出什么问题,速度快也是很稳定的,比STM32的要好。我四个UART我全都用上了。哈哈 4. CAN模块用起来还是较容易的,没我想想的那么复杂。500K的通信速度很稳定。 5. 低功耗模式下功耗还是不错的,最低可达nA级别的。不过,全速狂奔的时候,有80ma的电流哦! 6. 高温高湿基本上没问题,-40---+85c没吹牛,可正常运行,但是超过85c,就会不断重启,不过不会死机,静电方面,8K做好防护,硬件设计好也没问题。 7. RTC精度不算特别高,不过也可以满足基本要求,24小时会误差8分钟吧。 8. 还是ADC要注意,参考电压的纹波要尽可能的小,AD的输入端要远离干扰,数字地和模拟地要隔离好,这些没做好,采集数据误差会很大,后面会有专题记录这一块的 9.最后比较感慨的是该芯片的数据处理能力真的很强悍,6个通道ADC一直在转换,4个串口一直有数据要处理,包括GPS协议分析,CAN每隔20ms就有数据要分析,还有响应好几个外部中断,I2C也时不时的要通信下。我自己觉得负载很重了,但是整体的响应还是很快的,而且长期以来没出现看门狗溢出现象!

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客