打印
[Kinetis]

编写PIT代码碰到的疑问

[复制链接]
685|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
flyriz|  楼主 | 2015-4-17 14:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
大家好,有个问题请教一下:

以上红框中的两条语句,SIM->SCGC6 |= SIM_SCGC6_PIT_MASK 必须放到前面,如果放到

PIT->CHANNEL[HW_PIT_CH0].TCTRL &= ~(PIT_TCTRL_TEN_MASK);
的后面,调试时则会出错,进入HardFault_Handler 。
这是什么原因呢?是因为PIT Clock Gate Control打开之前,不能对PIT的寄存器进行读写操作吗?谢谢!



相关帖子

沙发
FSL_TICS_ZJJ| | 2015-4-17 17:15 | 只看该作者
那是必须的,SIM是打开模块时钟,如果模块时钟不打开就操作相应模块的寄存器就会进入hardfault,这是kinetis的常识。
不仅仅PIT是这样,所有的模块都是这样,都需要先打开时钟,然后再配置寄存器。

使用特权

评论回复
板凳
flyriz|  楼主 | 2015-4-18 17:37 | 只看该作者
FSL_TICS_ZJJ 发表于 2015-4-17 17:15
那是必须的,SIM是打开模块时钟,如果模块时钟不打开就操作相应模块的寄存器就会进入hardfault,这是kineti ...

哦,多谢

使用特权

评论回复
地板
FSL_TICS_ZJJ| | 2015-4-20 14:45 | 只看该作者

   非常感谢你关于Kinetis的技术问题。如果你没有其他问题,我们将此帖默认为已解决.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

100

主题

439

帖子

7

粉丝