12
返回列表 发新帖
楼主: xionghua235

[已解决] 使用MKE04Z128VLK4芯片,只要开启外设就产生 hard fault 中断

[复制链接]

该用户从未签到

2

主题

9

帖子

0

新手上路

Rank: 1

积分
26
最后登录
2016-11-11
 楼主| 发表于 2016-10-13 10:50:03 | 显示全部楼层
小恩GG 发表于 2016-10-13 09:39
楼主你好!
再进一步测试下:
void PIT_Init(uint8_t u8Channel_No, PIT_ConfigType *pConfig)

感谢小恩GG。还真的是SIM->SCGC |= SIM_SCGC_PIT_MASK;     /*!< enable clock to PIT */运行之后没有使能时钟,都怪我太相信库函数了,库函数的定义如下:
/** SIM - Register Layout Typedef */
typedef struct {
  __I  uint32_t SRSID;                             /**< System Reset Status and ID Register, offset: 0x0 */
  __IO uint32_t SOPT;                              /**< System Options Register, offset: 0x4 */

  __IO uint32_t PINSEL;                            /**< Pin Selection Register, offset: 0x8 */

  __IO uint32_t SCGC;                              /**< System Clock Gating Control Register, offset: 0xC */
  __I  uint32_t UUIDL;                             /**< Universally Unique Identifier Low Register, offset: 0x10 */
  __I  uint32_t UUIDH;                             /**< Universally Unique Identifier Middle Low Register, offset: 0x14 */
  __I  uint32_t UUIDMH;                            /**< Universally Unique Identifier Middle High Register, offset: 0x18 */
  __IO uint32_t CLKDIV;                            /**< Clock Divider Register, offset: 0x1C */
} SIM_Type;
查阅规格书后发现SCGC的地址不对,太郁闷了,我使用的头文件的名字就是MKE04Z4.h。但是给它补上了地址之后又产生了新的问题,烧写一次程序之后再也不能烧写或者仿真了,解决的办法是用别的工程烧一下,我怀疑是SWD时钟被关掉的问题或者相关引脚没使能的问题,现在还在确认中,为什么库函数会有这样的错误?
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24856
最后登录
2025-7-17
发表于 2016-10-13 11:06:35 | 显示全部楼层
xionghua235 发表于 2016-10-13 10:50
感谢小恩GG。还真的是SIM->SCGC |= SIM_SCGC_PIT_MASK;     /*!< enable clock to PIT */运行之后没有使 ...

楼主你好!
你用的是PKE04Z8VFK4的驱动。
这个芯片和你的MKE04Z128VLK4还是有区别的,它们使用reference manual 都不一样。
18.jpg
看下,做吧的是你芯片的,右边是你驱动的芯片的。
这个寄存器本身的map就有区别,所以你需要注意下。
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24856
最后登录
2025-7-17
发表于 2016-10-13 11:14:38 | 显示全部楼层
xionghua235 发表于 2016-10-13 10:50
感谢小恩GG。还真的是SIM->SCGC |= SIM_SCGC_PIT_MASK;     /*!< enable clock to PIT */运行之后没有使 ...

你的头文件要换成KE04Z128VLK4的,否则不行的。
我附件添加一个IAR根目录下面的相关头文件供你参考:
MKE04Z1284.rar (25.88 KB, 下载次数: 12)
回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

9

帖子

0

新手上路

Rank: 1

积分
26
最后登录
2016-11-11
 楼主| 发表于 2016-10-13 11:29:49 | 显示全部楼层
小恩GG 发表于 2016-10-13 11:06
楼主你好!
你用的是PKE04Z8VFK4的驱动。
这个芯片和你的MKE04Z128VLK4还是有区别的,它们使用reference  ...

奇怪,我就是使用的官网上下载的demo文件,为什么是错的,正确的头文件在哪里呢?
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24856
最后登录
2025-7-17
发表于 2016-10-13 12:16:36 | 显示全部楼层
xionghua235 发表于 2016-10-13 11:29
奇怪,我就是使用的官网上下载的demo文件,为什么是错的,正确的头文件在哪里呢? ...

网上下的不是错的,只不过网上的demo是针对PKE04Z8VFK4芯片的,和你的MKE04Z128VLK4是有区别的。
不是同一款芯片。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-7-18 10:04 , Processed in 0.094817 second(s), 25 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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