查看: 3111|回复: 0

[原创] [LPC1768]HeartBeat灯的闪烁

[复制链接]
  • TA的每日心情
    开心
    2025-6-10 23:03
  • 签到天数: 1502 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    97

    主题

    4688

    帖子

    12

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    10080
    最后登录
    2025-7-2
    发表于 2019-2-19 23:01:14 | 显示全部楼层 |阅读模式
    [LPC1768]HeartBeat灯的闪烁
        从原理图可以简单得知,对于HeartBeat灯的控制主要使用P0.7引脚的GPIO功能,即引脚输出为高,则对应的LED灯亮,引脚输出为低,则对应的LED灯灭。本次实验的目的也就是配置LPC1768引脚的普通GPIO功能。
        LPC1768的手册上面关于GPIO引脚的配置主要以下几个寄存器:FIODIR,FIOSET,FIOMASK,FIOPIN,FIOCLR等五个寄存器。其实,对于功能引脚的配置,由于GPIO为默认功能,所以在本次实验中,我们略过。
        平时我们操作GPIO输出为高时,只需要配置FIOSET寄存器,同样,操作GPIO输出为低时,只需要配置FIOCLR寄存器。在回读的时候,使用FIOPIN寄存器。下面我贴出来本次使用的测试代码:
    1. #define GPIO_PIN_7    (0x80)

    2. #define heartBeatOn()       (LPC_GPIO0->FIOCLR0 = GPIO_PIN_7)
    3. #define heartBeatOff()      (LPC_GPIO0->FIOSET0 = GPIO_PIN_7)
    4. #define heartBeatToggle()   (LPC_GPIO0->FIOPIN0 ^= GPIO_PIN_7)

    5. /**
    6.   * @brief  PIN0.7 pusll-push no PU/PD resistance, default = 0;
    7.   * @param
    8.   * @retval
    9.   * @date   2019-02-18   23:36
    10.   * @note
    11.   */

    12. void heartPinInit(void)
    13. {
    14.     LPC_GPIO0->FIOMASK0 = ~GPIO_PIN_7;
    15.     LPC_GPIO0->FIODIR0 = GPIO_PIN_7;
    16.     LPC_GPIO0->FIOCLR0 = GPIO_PIN_7;
    17. }

    18. void main(void)
    19. {
    20.     uint8_t i = 0;
    21.     setXtalToMax();
    22.     heartPinInit();
    23.     SysTick_Config(100000);
    24.     while(1)
    25.     {
    26.         if(gCnt <= 0)
    27.         {
    28.        gCnt = 500;
    29.            heartBeatToggle();
    30.         }
    31.     }
    32. }


    33. void SysTick_Handler(void)
    34. {
    35.     if(gCnt > 0)
    36.     {
    37.         gCnt--;
    38.     }
    39. }
    复制代码


        编译后,下载到LPC1768开发板里后就可以看到右下角的LED灯在那里每秒闪烁一次了。
        TO BE CONTINUED.
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-21 03:00 , Processed in 0.077304 second(s), 19 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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