查看: 3262|回复: 1

[原创] 【我眼中的LPC】学习Systick之小白以为

[复制链接]
  • TA的每日心情

    2020-10-28 18:00
  • 签到天数: 24 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    24

    主题

    526

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3300
    最后登录
    2021-10-14
    发表于 2016-11-23 21:52:56 | 显示全部楼层 |阅读模式
    本帖最后由 瓦系新手 于 2016-11-23 21:54 编辑

    铛铛当当,晚上抽空来把systick部分来讲解一些,哈哈,有点小激动啊,首先,我突然发现我自己写的GPIO库里居然没有翻转电平的函数,这怎么能行呢?真是败笔啊,于是,今晚给添加上了,下面就简单说说:
    1.jpg

    上面是我今晚加的翻转IO的函数,其实,我觉得一些简单的配置,还是操作寄存器让我更觉得方便,你看是不是?你要问我为什么知道这么写?下面ingwo细细到来,首先根据数据手册的GPIO寄存器来看:

    2.jpg

    我们根据这个NOT0寄存器的说明知道,给这个寄存器的bit write 1,那么相应的bit的电平就会翻转,看看我们的GPIO这个结构体:

    3.jpg

    所以,哈哈,大家明白了吧?

    下面是Systick的个人见解啊,第一个就是systick的控制寄存器,第二个是重载值寄存器,第三个是计数读取寄存器,所以我们只要负责配置好他们就可以了,具体打击啊可以试着看看这些寄存器,试着操作它们,它们很可爱的。

    4.jpg

    下面是我的程序,记得重载寄存器是24位的,所以满值是0xffffff哦:

    5.jpg 6.jpg

    我是自己写的软件延时,如果要使用中断,可以用m0自带的SysTick_Config函数,然后自己编写个systickHandle函数,记得SysTick_Config输入参数是tick,看看它的函数里写了-1所以是0xffffff最大哦,千万别超了,这是我当时写的时候的错误,希望大家别犯哦,我用config.h里的SYSTICKISR来控制我是否使用systick中断,和是否编译中断函数的判断。以上就是我对systick的愚见,如果有错误,还请老司机们提出来哦。
    LPC824_Systick.rar (386.2 KB, 下载次数: 11)
    回复

    使用道具 举报

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

    连续签到: 1 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    16702
    最后登录
    1970-1-1
    发表于 2016-11-23 23:03:14 | 显示全部楼层
    学习了
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-21 10:14 , Processed in 0.091991 second(s), 23 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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