查看: 6926|回复: 17

[原创] LPC824 Breakout 第一个程序之自摆乌龙

[复制链接]
  • TA的每日心情

    2025-5-29 09:38
  • 签到天数: 632 天

    连续签到: 1 天

    [LV.9]以坛为家II

    94

    主题

    1639

    帖子

    2

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    4470

    热心会员

    最后登录
    2025-6-10
    发表于 2016-10-23 02:01:26 | 显示全部楼层 |阅读模式
    本帖最后由 胤幻1988 于 2016-10-23 02:40 编辑

    LPC824 brrakout板子到手也快一个星期了,无奈最近公司事多,就收到那会上电试了一下,3个LED轮流闪烁,现象正常,就没在意太多。今晚,在网上当了个名叫“LPC824_Example_Code_Bundle_Keil_r1.0.zip”的压缩包 1.png ,解压打开后有好多例程; 2.png
    我就选了最简单的GPIO_interrupt的程序,之前没用过ISP下载方式,我51学后,就直奔STM32了。找到网上关于LPC824 ISP的下载方法:

    通过ISP 方式下载
    使用Flash Magic 作为ISP 下载软件, 软件下载地址http://www.flash
    magictool.com。下载安装后,运行Flash Magic 如图1.40 所示。
    TinyM0+开发工具上没有预留专门的ISP 接口,但用户可以用跳线将外扩引脚与串口设
    备相连来实现。将芯片的UART0 经电平转换后与PC 的串口相连,LPC812M101JDH20 复位后
    默认P0_0 为U0_RXD,P0_4 为U0_TXD,并将P0.12 引脚短接到地(LPC810M021FN8 的ISP
    引脚为P0.1,其它型号的ISP 引脚为P0.12),然后重启系统(重新给系统上电或短接复
    位引脚到地)。此处需要注意开发工具的串口连接无误。在使用FlashMagic 进行ISP 下载
    前需要完成以下几个设置:
    Step1 Communications(通信设置)
    在“Select”中选择您所使用的芯片型号;在“COM Port”中根据实际情况选择串行
    通信端口;在“Baud Rate”选项中设置串口通信波特率;在“Interface”中选择“None
    (ISP)”作为下载方式;在“Oscillator Freq”中设置芯片所使用的系统时钟频率。
    ?注意:推荐串口通信波特率选用9600Hz 或19200Hz,波特率设置过高容易导致ISP 通信出错,若
    ISP 频繁出错,请上调或下调波特率。系统时钟频率设置为与系统晶振值相同或保持空白。
    Step2 Erase(擦除设置)
    下载程序之前需要擦除Flash,Flash Magic 可与选择“Erase all Flash+Code Rd
    Prot”擦除所有的分区或“Erase blocks used by Hex File”擦除Hex 文件使用到的分区。
    若用户无特殊应用,建议选择擦除所有分区。
    Step3 Hex File(Hex 文件路径设置)
    点击【Browse】按钮,选择您需要下载的Hex 文件。
    Step4 Options(其它功能设置)
    “Verify after programming”设置是否在下载后进行效检,用户根据自己需要进行选
    择。
    “Fill unused Flash”设置填充未使用的Flash,无特殊要求无需勾选此项。
    Step5 Start(启动)
    重启系统(重新给系统上电或短接复位引脚)后点击【Start】启动ISP 下载。下载完
    成后断开P0.12 和地,重启系统,运行更新后的程序。

    QQ截图20161023013355.png


    其实对于LPC824breakout也很简单,就是按照上面做完第四步,到第五步时,先一直按着板上的ISP键不放,然后再点按下RESET键松开,这是点击软件上的“start”按钮,然后开始下载,下载完毕后。松开ISP键,再按下RESET键,复位运行程序即可。
    我选取了最简单的GPIO_INTERRUPT这个程序,编译调试一切正常,可是当把PIO0_14引脚接地时(中断),LED始终没反应。(当时我还郁闷,这个板子上面没有中断按键啊,我那个跟线把它们连接了一下)。对于我这个第一次使用ISP下载的菜鸟而言,我就怀疑起自己来。反复做了一次还是一样。
    我想要不编个简单的LED闪烁的程序再看看。经过对关键字的defined,我找到关灯开灯的函数是:   LEDs_Off(RED | BLUE | GREEN)和 LEDs_On(RED | BLUE | GREEN).定义的灯颜色也相符,我就没多心。于是改动下while里面的循环:
      while (1)
    {
        LEDs_Off(RED | BLUE | GREEN);
        delay_ms(2);
        LEDs_On(RED | BLUE | GREEN);
        delay_ms(2);

      }
    中间,我大略看了下(可能没看到)所有的例子,竟发现没有延时函数,直接无语。
    随便写一个先试下:
    void delay_ms(int time)
    {
            int i,j;
            while(time--)
            for(i=0;i<1000;i++)
                for(j=0;j<1000;j++);
    }

    编译后,烧写,发现只有绿灯在闪烁。我去什么鬼。于是查LED灯引脚的定义。发现其定义:
    #define RED    (1<<12)
    #define BLUE   (1<<27)
    #define GREEN  (1<<16)

    而实际电路是:

    QQ截图20161023015700.png
    顿时,一万只草泥马从头上飘过。后改成与之对应的引脚:
    #define RED    (1<<15)
    #define BLUE   (1<<17)
    #define GREEN  (1<<16)

    一切正常: IMG_20161023_011702.jpg
    看来以后再不能粗心了,下的这个程序显然也不是匹配的。希望不要有人重蹈覆辙。不过,貌似也没有像我这么搓的了吧,哈哈!


    哎...今天够累的,签到来了~
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-12 11:35
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    3

    主题

    25

    帖子

    0

    注册会员

    Rank: 2

    积分
    100
    最后登录
    1970-1-1
    发表于 2016-12-12 11:22:50 | 显示全部楼层
    兼容51和功能引脚可以任意重定义很强大
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情

    2025-5-29 09:38
  • 签到天数: 632 天

    连续签到: 1 天

    [LV.9]以坛为家II

    94

    主题

    1639

    帖子

    2

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    4470

    热心会员

    最后登录
    2025-6-10
     楼主| 发表于 2016-10-23 02:12:10 | 显示全部楼层

    。。。。。。。。。。。

    本帖最后由 胤幻1988 于 2016-10-23 02:33 编辑

    。。。。。。。
    哎...今天够累的,签到来了~
    回复

    使用道具 举报

    该用户从未签到

    4

    主题

    132

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    418
    最后登录
    2018-12-14
    发表于 2016-10-23 08:55:13 | 显示全部楼层
    我发现编译工程有问题
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2025-5-29 09:38
  • 签到天数: 632 天

    连续签到: 1 天

    [LV.9]以坛为家II

    94

    主题

    1639

    帖子

    2

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    4470

    热心会员

    最后登录
    2025-6-10
     楼主| 发表于 2016-10-23 09:11:07 | 显示全部楼层
    liu553824989 发表于 2016-10-23 08:55
    我发现编译工程有问题

    没有问题啊。。它这个例程跟其他家的不一样。至少跟ST和新塘的不一样。它里例程里面用到peripherals_lib.lib和utilities_lib.lib两个LIB文件,所以,现编译peripherals_lib和utilities_lib两个文件夹程序生成peripherals_lib.lib和
    utilities_lib.lib文件,下面就可以正常编译了。
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4

    主题

    132

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    418
    最后登录
    2018-12-14
    发表于 2016-10-23 10:46:05 | 显示全部楼层
    胤幻1988 发表于 2016-10-23 09:11
    没有问题啊。。它这个例程跟其他家的不一样。至少跟ST和新塘的不一样。它里例程里面用到peripherals_lib. ...

    是啊,好奇怪,后面这样编译就行了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-11-11 21:48
  • 签到天数: 19 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    0

    主题

    162

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    376
    最后登录
    2016-11-12
    发表于 2016-10-23 11:03:14 | 显示全部楼层
    感谢分享,学习学习
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2023-6-2 13:32
  • 签到天数: 272 天

    连续签到: 1 天

    [LV.8]以坛为家I

    44

    主题

    995

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    4413
    最后登录
    2023-6-2
    发表于 2016-10-23 11:52:49 | 显示全部楼层
    谢谢分享,前天晚上也准备做这个工程的.
    板子上就3个LED,做的时候还在想,能加点其他的什么呢?
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2025-5-29 09:38
  • 签到天数: 632 天

    连续签到: 1 天

    [LV.9]以坛为家II

    94

    主题

    1639

    帖子

    2

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    4470

    热心会员

    最后登录
    2025-6-10
     楼主| 发表于 2016-10-23 12:39:35 | 显示全部楼层
    andrewz 发表于 2016-10-23 11:52
    谢谢分享,前天晚上也准备做这个工程的.
    板子上就3个LED,做的时候还在想,能加点其他的什么呢? ...

    好在引出的针脚兼容8051,可以利用旧的8051开发板用用。。。
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-23 21:04
  • 签到天数: 103 天

    连续签到: 1 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    16702
    最后登录
    1970-1-1
    发表于 2016-10-23 16:54:33 | 显示全部楼层
    多谢分享
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-3-21 22:51
  • 签到天数: 369 天

    连续签到: 1 天

    [LV.9]以坛为家II

    7

    主题

    2716

    帖子

    7

    金牌会员

    Rank: 6Rank: 6

    积分
    1824
    最后登录
    2019-3-21
    发表于 2016-10-23 23:19:42 | 显示全部楼层
    学习了,我的板子也快到了
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 21:18 , Processed in 0.108601 second(s), 31 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表