查看: 2110|回复: 6

[分享] FRDM-KL25Z 3、USB键盘输出时间

[复制链接]
  • TA的每日心情
    奋斗
    2017-5-3 11:19
  • 签到天数: 10 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    50

    主题

    1万

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    14090
    最后登录
    2024-4-19
    发表于 2015-4-28 08:18:27 | 显示全部楼层 |阅读模式
    本帖最后由 党国特派员 于 2015-4-28 09:32 编辑

    前面我们使用KL25Z的USB鼠标实现了写字功能,今天我们要实现KL25Z的键盘功能,实现键盘功能其实很简单,已经有人给出了代码。今天我们其实要实现的是让键盘能自动输出时间,实现思想就是使用KL25Z的RTC功能,RTC不用外接晶振的实现可以参考贴子:https://www.nxpic.org.cn/module/forum/thread-598712-1-1.html
    注意PTC1和PTC3短接哦!!!!
    好了废话不多说了,上代码:
    1. #include "mbed.h"
    2. #include "USBKeyboard.h"
    3. #include "PeripheralPins.h"

    4. USBKeyboard keyboard;
    5. DigitalOut led1(PTB18);

    6. //输出日期
    7. void PrintDate()
    8. {
    9.     time_t seconds = time(NULL);
    10.     keyboard.printf("Time as a basic string = %s \n", ctime(&seconds));
    11. }

    12. void _init(void) {
    13.    
    14.     MCG->C1 |= MCG_C1_IRCLKEN_MASK; //Enable internal reference clock
    15.     MCG->C2 &= ~(MCG_C2_IRCS_MASK); //Internal Reference Clock -->Slow
    16.    
    17.     //**RTC_CLKIN**//
    18.     PORTC->PCR[1] |= PORT_PCR_MUX(0x1);       //PTC1 as RTC_CLKIN
    19.     SIM->SOPT1 |= SIM_SOPT1_OSC32KSEL(0x02);  //32 Khz clock source for RTC
    20.    
    21.     //**32KHz Frequency**//
    22.     SIM->SOPT2 |= SIM_SOPT2_CLKOUTSEL(0x04); //Clockout pin --> 32 KHz
    23.     PORTC->PCR[3] |= PORT_PCR_MUX(0x5);       //PTC3 as CLKOUT
    24.    
    25. }

    26. void _rtc_init(void) {
    27.     _init();
    28.    
    29.     // enable RTC clock
    30.     SIM->SCGC6 |= SIM_SCGC6_RTC_MASK;
    31.    
    32.     //Configure the TSR. default value: 1
    33.     RTC->TSR = 1;
    34.    
    35.     // enable counter
    36.     RTC->SR |= RTC_SR_TCE_MASK;
    37.    
    38. }

    39. int main()
    40. {
    41.     tm t;
    42.     t.tm_sec = 55;
    43.     t.tm_min = 03;
    44.     t.tm_hour = 8;
    45.     t.tm_mday = 27;
    46.     t.tm_mon = 3;
    47.     t.tm_year = 115;
    48.    
    49.     set_time(mktime(&t));
    50.    
    51.     _rtc_init();
    52.    
    53.    
    54.    
    55.     while(1)
    56.     {
    57.         led1 = !led1;
    58.         PrintDate();
    59.         wait(1.0);
    60.     }   
    61. }
    复制代码
    以上代码每隔1秒会在记事本输出一下当前时间。
    视频:
    效果图:
    QQ图片20150428081652.jpg


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

    使用道具 举报

    该用户从未签到

    24

    主题

    410

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1203
    最后登录
    2018-6-27
    发表于 2015-4-28 08:51:01 | 显示全部楼层
    不错,楼主加油,都是好帖
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-1-24 09:50
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    654

    主题

    3262

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    13278
    最后登录
    2019-1-27
    发表于 2015-4-30 14:41:46 | 显示全部楼层
    支持楼主
    回复

    使用道具 举报

    该用户从未签到

    124

    主题

    3600

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5781
    最后登录
    1970-1-1
    发表于 2015-5-14 10:02:15 | 显示全部楼层
    非常感谢你关于Kinetis的经验分享!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    124

    主题

    3600

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5781
    最后登录
    1970-1-1
    发表于 2015-5-14 10:04:06 | 显示全部楼层
       非常感谢你关于Kinetis的经验分享!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2025-5-7 09:07
  • 签到天数: 353 天

    连续签到: 1 天

    [LV.8]以坛为家I

    141

    主题

    8056

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5788
    最后登录
    2025-5-7
    发表于 2015-5-16 10:58:27 | 显示全部楼层
    不错的分享,对MBED很熟,都是mbed
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-5-3 11:19
  • 签到天数: 10 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    50

    主题

    1万

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    14090
    最后登录
    2024-4-19
     楼主| 发表于 2015-5-16 13:02:57 | 显示全部楼层
    wambob 发表于 2015-5-16 10:58
    不错的分享,对MBED很熟,都是mbed

    MBED简单,基本一两天就学会使用了。 nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-9-15 12:15 , Processed in 0.098721 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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