查看: 3612|回复: 1

[分享] LPC54110学习+按键控制灯

[复制链接]
  • TA的每日心情
    开心
    2018-7-23 21:04
  • 签到天数: 103 天

    连续签到: 1 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    16706
    最后登录
    1970-1-1
    发表于 2017-4-7 11:30:22 | 显示全部楼层 |阅读模式
    接下来练习一下KEY0控制LED0,每次按下一次KEY0,LED0状态取反一次。
    首先查看一下电路,LED0接pio0_15,KEY0接pio1_8。
    QQ截图20170407112531.png

    QQ截图20170407112554.png
    使用配置工具建立工程。
    QQ截图20170407112024.png
    设置引脚。
    QQ截图20170407112123.png
    设置时钟。
    QQ截图20170407112140.png
    完成程序。
    QQ截图20170407112214.png

    1. /**
    2. * This is template for main module created by MCUXpresso Project Generator. Enjoy!
    3. **/

    4. #include "board.h"
    5. #include "pin_mux.h"
    6. #include "clock_config.h"

    7. #include "fsl_gpio.h"

    8. /*!
    9. * @brief Application entry point.
    10. */
    11. int main(void) {
    12.   /* Init board hardware. */
    13.   BOARD_InitBootPins();
    14.   BOARD_InitBootClocks();
    15.   BOARD_InitDebugConsole();
    16. #ifdef SDK_PRIMARY_CORE
    17.   BOARD_StartSecondaryCore();
    18. #endif

    19.   /* Add your code here */
    20.   gpio_pin_config_t led0Config = {
    21.     kGPIO_DigitalOutput,
    22.     0,
    23.   };
    24.   
    25.   gpio_pin_config_t key0Config = {
    26.     kGPIO_DigitalInput,
    27.     0,
    28.   };
    29.   
    30.   CLOCK_EnableClock(kCLOCK_Gpio0);
    31.   CLOCK_EnableClock(kCLOCK_Gpio1);
    32.   
    33.   GPIO_PinInit(BOARD_INITPINS_LED0_GPIO, BOARD_INITPINS_LED0_PORT, BOARD_INITPINS_LED0_GPIO_PIN, &led0Config);
    34.   GPIO_PinInit(BOARD_INITPINS_KEY0_GPIO, BOARD_INITPINS_KEY0_PORT, BOARD_INITPINS_KEY0_GPIO_PIN, &key0Config);

    35.   for(;;) { /* Infinite loop to avoid leaving the main function */
    36. //    __asm("NOP"); /* something to use as a breakpoint stop while looping */
    37.     if ((GPIO_ReadPinsInput(BOARD_INITPINS_KEY0_GPIO, BOARD_INITPINS_KEY0_PORT) & (1U << BOARD_INITPINS_KEY0_GPIO_PIN)) != (1U << BOARD_INITPINS_KEY0_GPIO_PIN))
    38.     {
    39.       GPIO_TogglePinsOutput(BOARD_INITPINS_LED0_GPIO, BOARD_INITPINS_LED0_PORT, 1U << BOARD_INITPINS_LED0_GPIO_PIN);
    40.       do
    41.       {
    42.         ;
    43.       } while ((GPIO_ReadPinsInput(BOARD_INITPINS_KEY0_GPIO, BOARD_INITPINS_KEY0_PORT) & (1U << BOARD_INITPINS_KEY0_GPIO_PIN)) != (1U << BOARD_INITPINS_KEY0_GPIO_PIN));
    44.     }
    45.   }
    46. }
    复制代码
    编译下载,每次按下一次KEY0,LED0状态取反一次。
    QQ截图20170407112259.png

    完整工程:
    KEY0_MCUXpressoIDE_Project_cm4.rar (4.72 MB, 下载次数: 13)
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-10-15 13:16
  • 签到天数: 191 天

    连续签到: 1 天

    [LV.7]常住居民III

    11

    主题

    664

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1722
    最后登录
    2017-10-15
    发表于 2017-4-7 12:00:23 | 显示全部楼层
    赞赞赞                                                        
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-24 00:46 , Processed in 0.081229 second(s), 21 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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