查看: 4540|回复: 3

[分享] 【LPC54114】学习③——按键+PWM输出实验

[复制链接]
  • TA的每日心情
    开心
    2017-11-15 10:33
  • 签到天数: 79 天

    连续签到: 1 天

    [LV.6]常住居民II

    89

    主题

    2169

    帖子

    3

    金牌会员

    Rank: 6Rank: 6

    积分
    1779
    最后登录
    2020-8-22
    发表于 2017-4-6 15:20:58 | 显示全部楼层 |阅读模式
    本帖最后由 何昌昕 于 2017-4-6 15:27 编辑

    板卡带四个独立按键, QQ截图20170406151205.jpg QQ截图20170406151214.jpg

    1.设置输入
    2.读出按键

        Chip_GPIO_Init(LPC_GPIO);
        Chip_GPIO_SetPinDIR(LPC_GPIO,1, 8, false);
        Chip_GPIO_SetPinDIR(LPC_GPIO,1, 9, false);
        Chip_GPIO_SetPinDIR(LPC_GPIO,1, 10, false);
        Chip_GPIO_SetPinDIR(LPC_GPIO,1, 11, false);

        while (1)
        {
        if((KEY1==0)||(KEY2==0)||(KEY3==0)||(KEY4==0))
            {
                Delay_ms(20);
                if(KEY1==0){printf("按键1按下\r\n");while(!KEY1);}
                if(KEY2==0){printf("按键2按下\r\n");while(!KEY2);}
                if(KEY3==0){printf("按键3按下\r\n");while(!KEY3);}
                if(KEY4==0){printf("按键4按下\r\n");while(!KEY4);}
            }
        }
    串口查看数据即可

    PWM:
        Chip_SCTPWM_Init(LPC_SCT);
        Chip_SCTPWM_SetRate(LPC_SCT, 10000);
       
        Chip_IOCON_PinMuxSet(LPC_IOCON, 1, 1, IOCON_FUNC3| IOCON_MODE_INACT | IOCON_DIGITAL_EN | IOCON_INPFILT_OFF);
        Chip_SCTPWM_SetOutPin(LPC_SCT, 1, 4);   
        Chip_SCTPWM_SetDutyCycle(LPC_SCT, 1, Chip_SCTPWM_PercentageToTicks(LPC_SCT, 20));
       
        Chip_IOCON_PinMuxSet(LPC_IOCON, 1, 2, IOCON_FUNC3| IOCON_MODE_INACT | IOCON_DIGITAL_EN | IOCON_INPFILT_OFF);
        Chip_SCTPWM_SetOutPin(LPC_SCT, 2, 5);   
        Chip_SCTPWM_SetDutyCycle(LPC_SCT, 2, Chip_SCTPWM_PercentageToTicks(LPC_SCT, 40));
       
        Chip_IOCON_PinMuxSet(LPC_IOCON, 1, 3, IOCON_FUNC3| IOCON_MODE_INACT | IOCON_DIGITAL_EN | IOCON_INPFILT_OFF);
        Chip_SCTPWM_SetOutPin(LPC_SCT, 3, 6);   
        Chip_SCTPWM_SetDutyCycle(LPC_SCT, 3, Chip_SCTPWM_PercentageToTicks(LPC_SCT, 60));
       
        Chip_IOCON_PinMuxSet(LPC_IOCON, 1, 4, IOCON_FUNC3| IOCON_MODE_INACT | IOCON_DIGITAL_EN | IOCON_INPFILT_OFF);
        Chip_SCTPWM_SetOutPin(LPC_SCT, 4, 7);   
        Chip_SCTPWM_SetDutyCycle(LPC_SCT, 4, Chip_SCTPWM_PercentageToTicks(LPC_SCT, 80));
       
        Chip_SCTPWM_Start(LPC_SCT);
    用示波器测量A1-A4脚,
    IMG_4445.JPG IMG_4446.JPG IMG_4447.JPG IMG_4448.JPG
    PWM输出.zip (4.17 MB, 下载次数: 73)
    签到
    回复

    使用道具 举报

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

    连续签到: 1 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    16706
    最后登录
    1970-1-1
    发表于 2017-4-6 15:41:07 | 显示全部楼层
    这个示波器好像来一个
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    4

    帖子

    0

    新手上路

    Rank: 1

    积分
    42
    最后登录
    2018-10-29
    发表于 2018-10-29 10:53:45 | 显示全部楼层
    谢谢分享
    回复

    使用道具 举报

  • TA的每日心情

    2021-2-4 09:24
  • 签到天数: 190 天

    连续签到: 1 天

    [LV.7]常住居民III

    38

    主题

    591

    帖子

    28

    金牌会员

    Rank: 6Rank: 6

    积分
    2205
    最后登录
    2025-2-22
    发表于 2018-10-29 11:09:32 | 显示全部楼层
    谢谢分享,这个设备一看就是大户人家
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-23 12:34 , Processed in 0.089379 second(s), 23 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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