请选择 进入手机版 | 继续访问电脑版
查看: 4160|回复: 2

[S08P-Lite体验]四.按键输入

[复制链接]
  • TA的每日心情
    开心
    2021-6-16 07:43
  • 签到天数: 155 天

    连续签到: 1 天

    [LV.7]常住居民III

    9

    主题

    519

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1152
    最后登录
    2024-5-13
    发表于 2021-1-22 23:04:26 | 显示全部楼层 |阅读模式
    本帖最后由 alicekuonji 于 2021-1-23 00:57 编辑

    学会点灯之后,我们就可以学习如何按键来控制LED。
    所谓按键,也就是按下之后单片机输入了一个信号,可以通过设置引脚为输入模式来读取,也可以通过设置中断来读取。

    查看原理图,我们可以得知按键的两个引脚分别是PTD4和PTD5。
    根据手册,我们可以设置PORT_PTDIE,也就是Port D Input Enable Register 来设置,然后通过PORT_PTDD来读取引脚状态

    1. void Button_Init(void) {        
    2.         /* Button Initial */
    3.         PORT_PTDIE |= 0x30;
    4. }
    复制代码
    1. void main(void) {
    2.         
    3.     EnableInterrupts;
    4.     LED_Init();
    5.     Button_Init();
    6.     while(1) {
    7.             
    8.             if(!(PORT_PTDD & 0x10)) {
    9.                     LED0 = 0;
    10.             }
    11.             else {
    12.                     LED0 = 1;
    13.             }
    14.             if(!(PORT_PTDD & 0x20)) {
    15.                     LED1 = 0;
    16.             }
    17.             else {
    18.                     LED1 = 1;
    19.             }
    20.             delay_ms(1);
    21.     }
    22. }
    复制代码

    当我们按下按键的时候,对应的LED就会被点亮,松开即灭。
    中断待写


    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 19:37
  • 签到天数: 1481 天

    连续签到: 1 天

    [LV.10]以坛为家III

    97

    主题

    4638

    帖子

    12

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    9968
    最后登录
    2025-4-26
    发表于 2021-1-23 14:21:19 | 显示全部楼层
    坚持才是胜利
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    前天 16:46
  • 签到天数: 872 天

    连续签到: 19 天

    [LV.10]以坛为家III

    1

    主题

    2682

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    8501
    最后登录
    2025-4-25
    发表于 2021-6-8 18:36:34 | 显示全部楼层

    坚持才是胜利
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-4-27 18:42 , Processed in 0.112026 second(s), 20 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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