ijlc1314 发表于 2015-1-4 13:37:40

分享KE02(M0+内核)的SysTick例程,基本Kei MDK

本帖最后由 ijlc1314 于 2015-1-4 13:51 编辑

SysTick的使用非常简单,基本与具体使用的芯片没有关系,只要都是M0+内核的芯片应该都是一样的,我使用的是KE02.

初始化设置:
SysTick_Config(10000000);
设置成功返回0,失败返回1。只要设置的值不超出范围就可以,我设置的是系统时钟的一半,也就是0.5秒,系统时钟20MHz

中断程序:(蓝色LED每0.5秒翻转一次)
void SysTick_Handler( void )
{
    bsp_led_blue_toggle();
}

在 isr.h 文件中增加:
#undefVECTOR_015
#define VECTOR_015SysTick_Handler

extern void SysTick_Handler( void );

OK,是不是很简单........


<编辑原因:修改错别字>

holts2 发表于 2015-1-4 13:40:37

看起来很简单,但实际不简单

franki 发表于 2015-1-4 13:40:50

不错 ,坐到沙发啦

Juggernaut 发表于 2015-1-4 13:41:15

good我的KL46也是M0+内核

superrf 发表于 2015-1-4 13:42:45

看到的这部分很简单,功能都封装了

ijlc1314 发表于 2015-1-4 13:52:22

Juggernaut 发表于 2015-1-4 13:41
good我的KL46也是M0+内核

内核一样,这部分的使用应该都是一样的

ijlc1314 发表于 2015-1-4 13:53:26

superrf 发表于 2015-1-4 13:42
看到的这部分很简单,功能都封装了

是的,不用去看数据手册都可以使用

holts2 发表于 2015-1-4 13:58:42

这个systick_config() 最快可以设1吗 ?

franki 发表于 2015-1-4 14:00:08

holts2 发表于 2015-1-4 13:40
看起来很简单,但实际不简单

我以为抢到沙发啦 ,被你抢先了一步{:lol:}

franki 发表于 2015-1-4 14:03:54

建议楼主把MDK的工程贴出来 ,让大家看看基于MDK环境的使用 。

superrf 发表于 2015-1-4 14:11:15

ijlc1314 发表于 2015-1-4 13:53
是的,不用去看数据手册都可以使用

如果自己做板子,原理图不一样了,已经封装的代码还是需要修改,比如说LED接到其他引脚上了

TonyCai 发表于 2015-1-4 14:15:44

看看具体封装库里这部分是怎么写的
搞全一点 理解透一点

tim 发表于 2015-1-4 14:18:16

确实挺简单,因为楼主写得比较明白

子鱼 发表于 2015-1-4 14:43:52

楼主是参考的这个链接么:
【经验分享】基于KE02的systick程序:http://www.amobbs.com/thread-5565884-1-1.html

holts2 发表于 2015-1-4 15:01:33

子鱼 发表于 2015-1-4 14:43
楼主是参考的这个链接么:
【经验分享】基于KE02的systick程序:http://www.amobbs.com/thread-5565884-1-1 ...

这都能被你找到

ijlc1314 发表于 2015-1-4 15:15:35

子鱼 发表于 2015-1-4 14:43
楼主是参考的这个链接么:
【经验分享】基于KE02的systick程序:http://www.amobbs.com/thread-5565884-1-1 ...

不是参考这个帖子的,是参考 core_cm0plus.h 这个头文件的

ijlc1314 发表于 2015-1-4 15:16:37

superrf 发表于 2015-1-4 14:11
如果自己做板子,原理图不一样了,已经封装的代码还是需要修改,比如说LED接到其他引脚上了 ...

是啊,硬件接口改变的时候,软件就需要做出相应的修改,不过最底层的修改一般都比较好改,修改量也比较小

子鱼 发表于 2015-1-4 15:16:54

holts2 发表于 2015-1-4 15:01
这都能被你找到

基于KE02的例程比较少而且看过这个帖子 有点印象

ijlc1314 发表于 2015-1-4 15:17:18

franki 发表于 2015-1-4 14:03
建议楼主把MDK的工程贴出来 ,让大家看看基于MDK环境的使用 。

自己动手试一下岂不是更好?

子鱼 发表于 2015-1-4 15:17:52

ijlc1314 发表于 2015-1-4 15:15
不是参考这个帖子的,是参考 core_cm0plus.h 这个头文件的

可以进行一下对比那个帖子是飞思卡尔的FAE写的

ijlc1314 发表于 2015-1-4 15:18:36

TonyCai 发表于 2015-1-4 14:15
看看具体封装库里这部分是怎么写的
搞全一点 理解透一点

代码来了,摘自 core_cm0plus.h

__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)
{
if ((ticks - 1) > SysTick_LOAD_RELOAD_Msk)return (1);      /* Reload value impossible */

SysTick->LOAD= ticks - 1;                                  /* set reload register */
NVIC_SetPriority (SysTick_IRQn, (1<<__NVIC_PRIO_BITS) - 1);/* set Priority for Systick Interrupt */
SysTick->VAL   = 0;                                          /* Load the SysTick Counter Value */
SysTick->CTRL= SysTick_CTRL_CLKSOURCE_Msk |
                   SysTick_CTRL_TICKINT_Msk   |
                   SysTick_CTRL_ENABLE_Msk;                  /* Enable SysTick IRQ and SysTick Timer */
return (0);                                                /* Function successful */
}

ijlc1314 发表于 2015-1-4 15:20:09

子鱼 发表于 2015-1-4 15:17
可以进行一下对比那个帖子是飞思卡尔的FAE写的

那个他是 采用codewarrior 10.x 的PE,我没装这个软件

彼岸花开@ 发表于 2015-1-4 15:28:30

看看内核。。写写代码。也不错。。

sblpp 发表于 2015-1-4 15:40:19

谢谢分享。

sblpp 发表于 2015-1-4 16:09:22

谢谢分享。

franki 发表于 2015-1-4 17:22:21

子鱼 发表于 2015-1-4 14:43
楼主是参考的这个链接么:
【经验分享】基于KE02的systick程序:http://www.amobbs.com/thread-5565884-1-1 ...

这个编译环境是CW ,楼主的编译环境是MDK 。

jinyi7016 发表于 2015-1-4 19:39:15

还没有试这个,马上试试,感谢分享

ijlc1314 发表于 2015-1-5 19:22:59

彼岸花开@ 发表于 2015-1-4 15:28
看看内核。。写写代码。也不错。。

其实更依赖于库,没心思去慢慢研究底层

Ray______ 发表于 2015-1-6 11:30:25

嗯,有个时候不够时间开发库

bbsview 发表于 2015-1-6 12:31:59

不错,这样移植起来比较方便,谢楼主分享

qs6361036 发表于 2015-1-10 23:39:07

基于MDK环境的例子 ,学习啦 !

lzl000 发表于 2015-1-11 01:08:11

的确简单,楼主也简单的搞到了很多飞币啊

ijlc1314 发表于 2015-1-11 08:38:14

lzl000 发表于 2015-1-11 01:08
的确简单,楼主也简单的搞到了很多飞币啊

哈哈,为了KL46,再带走几个飞币

holts2 发表于 2015-1-11 09:32:36

ijlc1314 发表于 2015-1-11 08:38
哈哈,为了KL46,再带走几个飞币

能贴代码都是好样的

powerk6 发表于 2015-1-11 11:24:56

systick最快能到多少?

ijlc1314 发表于 2015-1-11 19:43:33

powerk6 发表于 2015-1-11 11:24
systick最快能到多少?

跟芯片主频一样

wangkangming 发表于 2015-1-11 19:46:53

哈哈,学习了。

ijlc1314 发表于 2015-1-11 23:37:14

wangkangming 发表于 2015-1-11 19:46
哈哈,学习了。

希望对您有用,然后我再带走几个飞币
页: [1]
查看完整版本: 分享KE02(M0+内核)的SysTick例程,基本Kei MDK