智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1874|回复: 6
打印 上一主题 下一主题

火哥,调试问题求解

[复制链接]

5

主题

56

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4199
威望
2412
贡献
949
兑换币
1408
注册时间
2012-8-24
在线时间
419 小时
跳转到指定楼层
1#
发表于 2013-9-14 17:25:31 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我已经按照三天入门的教程做了一个工程,已经define了simulator,但是还是会卡死在while (!(LPTMR0_CSR & LPTMR_CSR_TCF_MASK));这句话中,怎么回事呢?

8

主题

96

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1594
威望
776
贡献
472
兑换币
489
注册时间
2013-8-6
在线时间
173 小时
7#
发表于 2013-11-21 20:12:48 | 只看该作者
野火 发表于 2013-9-14 20:04
感觉你用的是比较旧的代码

我想用那个预分频怎么设置完了没法应啊  就改了这一个
// LPTMR0_PSR = LPTMR_PSR_PCS(1)|LPTMR_PSR_PBYP_MASK;
  LPTMR0_PSR = 0x78;

回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
6#
发表于 2013-9-15 00:11:34 | 只看该作者
15123as 发表于 2013-9-14 23:02
谢谢,可以提供一下新代码的下载链接吗

http://www.znczz.com/home.php?mod=space&uid=89016&do=blog&id=376
回复 支持 反对

使用道具 举报

5

主题

56

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4199
威望
2412
贡献
949
兑换币
1408
注册时间
2012-8-24
在线时间
419 小时
5#
 楼主| 发表于 2013-9-14 23:02:54 | 只看该作者
野火 发表于 2013-9-14 20:04
感觉你用的是比较旧的代码

谢谢,可以提供一下新代码的下载链接吗
回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
4#
发表于 2013-9-14 20:04:36 | 只看该作者
感觉你用的是比较旧的代码
回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
3#
发表于 2013-9-14 20:04:03 | 只看该作者
试下替换一下,用下面的函数:
  1. void time_delay_ms(uint32 ms)
  2. {
  3.     /* Make sure the clock to the LPTMR is enabled */
  4.     SIM_SCGC5 |= SIM_SCGC5_LPTIMER_MASK;

  5.     /* Set the compare value to the number of ms to delay */
  6.     LPTMR0_CMR = ms;

  7.     /* Set up LPTMR to use 1kHz LPO with no prescaler as its clock source */
  8.     LPTMR0_PSR = LPTMR_PSR_PCS(1) | LPTMR_PSR_PBYP_MASK;

  9.     /* Start the timer */
  10.     LPTMR0_CSR = LPTMR_CSR_TEN_MASK;

  11.     /* Wait for counter to reach compare value */
  12.     while (!(LPTMR0_CSR & LPTMR_CSR_TCF_MASK));

  13.     /* Clear Timer Compare Flag */
  14.     LPTMR0_CSR &= ~LPTMR_CSR_TEN_MASK;

  15.     return;
  16. }
复制代码
回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
2#
发表于 2013-9-14 20:02:42 | 只看该作者
试下替换一下,用下面的函数:
  1. void time_delay_ms(uint32 ms)
  2. {
  3.     /* Make sure the clock to the LPTMR is enabled */
  4.     SIM_SCGC5 |= SIM_SCGC5_LPTIMER_MASK;

  5.     /* Set the compare value to the number of ms to delay */
  6.     LPTMR0_CMR = ms;

  7.     /* Set up LPTMR to use 1kHz LPO with no prescaler as its clock source */
  8.     LPTMR0_PSR = LPTMR_PSR_PCS(1) | LPTMR_PSR_PBYP_MASK;

  9.     /* Start the timer */
  10.     LPTMR0_CSR = LPTMR_CSR_TEN_MASK;

  11.     /* Wait for counter to reach compare value */
  12.     while (!(LPTMR0_CSR & LPTMR_CSR_TCF_MASK));

  13.     /* Clear Timer Compare Flag */
  14.     LPTMR0_CSR &= ~LPTMR_CSR_TEN_MASK;

  15.     return;
  16. }
复制代码
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-21 21:45 , Processed in 0.076365 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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