查看: 1797|回复: 1

[求助] 请问KSDK_1.2.0有KL02Z系列内部时钟设置的代码吗?

[复制链接]

该用户从未签到

5

主题

19

帖子

0

注册会员

Rank: 2

积分
73
最后登录
2016-4-5
发表于 2016-3-4 19:15:31 | 显示全部楼层 |阅读模式
KSDK_1.2.0
现在在用MKL02Z32VFM4开发产品,一FAE提供了一个设置内部4M时钟的代码
  1. MCG_C2 |= MCG_C2_IRCS_MASK;
  2.         //MCG_C2 &= ~MCG_C2_IRCS_MASK;

  3.         MCG_C1 |= MCG_C1_IRCLKEN_MASK | MCG_C1_IREFSTEN_MASK;
  4.         MCG_SC &= ~MCG_SC_FCRDIV_MASK;
  5.         MCG_SC |= MCG_SC_FCRDIV(0);
复制代码

  1. /* uart init */
  2.     lpsci_state_t lpsciState;

  3.     // Fill in lpsci config data
  4.     lpsci_user_config_t lpsciConfig = {
  5.                 .clockSource     =kClockLpsciSrcMcgIrClk,
  6.         .bitCountPerChar = kLpsci8BitsPerChar,
  7.         .parityMode      = kLpsciParityDisabled,
  8.         .stopBitCount    = kLpsciOneStopBit,
  9.         .baudRate        = BOARD_DEBUG_UART_BAUD  /* 9600 */
  10.     };
复制代码


使用后做了1K左右的板子,有9块板子的LPSCI打印数据异常,后用示波器查看发送的波形,发现每个位只有92uS,理论上每个位应为104uS(正常的板子测试也是104uS)。发邮件问FAE,FAE说可能是时钟使用有问题,现在想用SDK中的使用内部时钟的代码,但一直未找到。有知道的吗?


我知道答案 目前已有1人回答
回复

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
发表于 2016-3-7 11:05:12 | 显示全部楼层
楼主你好!
其实内部时钟并没有那么精确,是有一定误差范围的,就拿快速时钟4M来讲,从datasheet中,你可以看到,最大误差范围可以达到正负3%。
所以,如果用通信的话,建议你还是使用外部晶振比较保险!
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-7-22 12:52 , Processed in 0.083268 second(s), 22 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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