查看: 4363|回复: 11

[已解决] 关于KL14在vlps模式下的串口问题(已解决)

[复制链接]

该用户从未签到

6

主题

32

帖子

0

新手上路

Rank: 1

积分
8
最后登录
1970-1-1
发表于 2013-6-20 11:06:51 | 显示全部楼层 |阅读模式
 我的实验是串口接收中断,主函数进入睡眠
主函数代码:
while(1){
 
           enter_vlps();  //进入vlps模式
           out_char(c); //串口接收中断函数把字符赋给c 
}


问题是:只有在连接jlink调试下,串口可以正常收发数据。串口收到数据可以唤醒mcu。


但在断开jlink情况下,不能正常收发数据。
 
我知道答案 目前已有11人回答
回复

使用道具 举报

该用户从未签到

85

主题

790

帖子

0

金牌会员

Rank: 6Rank: 6

积分
2279
最后登录
1970-1-1
发表于 2013-6-20 12:51:18 | 显示全部楼层

RE:关于KL25在vlps模式下的串口问题

你可以首先判断一下,不在VLPS模式,不连J-Link的情况下,你的串口能不能正常收发。
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

32

帖子

0

新手上路

Rank: 1

积分
8
最后登录
1970-1-1
 楼主| 发表于 2013-6-20 14:22:54 | 显示全部楼层

回复:关于KL25在vlps模式下的串口问题

回复第 2 楼 于2013-06-20 12:51:18发表:
你可以首先判断一下,不在VLPS模式,不连J-Link的情况下,你的串口能不能正常收发。
 
不在VLPS模式下,串口是可以正常中断接收数据的,也可以正常发送数据。


我想问在MCU在低功耗模式下,能不能正常接收到串口的数据。


比如MCU处在睡眠模式下,这时候外部通过串口发送数据给MCU,mcu要能正确接收到数据。这个能实现吗?
 
谢谢。
 
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

32

帖子

0

新手上路

Rank: 1

积分
8
最后登录
1970-1-1
 楼主| 发表于 2013-6-20 14:29:08 | 显示全部楼层

回复:关于KL25在vlps模式下的串口问题

回复第 2 楼 于2013-06-20 12:51:18发表:
你可以首先判断一下,不在VLPS模式,不连J-Link的情况下,你的串口能不能正常收发。




mcu 不在VLPS模式下,串口是可以正常中断接收数据的,也可以接收到数据。


mcu处于低功耗状态下能不能接收到串口的数据,即串口唤醒mcu。
 
KL14的手册是这样说的,但是我做了不行,原因出在哪里呢?
 
 
uart stop.jpg
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

32

帖子

0

新手上路

Rank: 1

积分
8
最后登录
1970-1-1
 楼主| 发表于 2013-6-20 14:31:12 | 显示全部楼层

回复:关于KL25在vlps模式下的串口问题

回复第 2 楼 于2013-06-20 12:51:18发表:
你可以首先判断一下,不在VLPS模式,不连J-Link的情况下,你的串口能不能正常收发。
 
 
 
是可以正常收发数据的。
 
KL14的手册这样写道(见图):
 
mcu在低功耗模式下能不能接收到串口的数据?
 
uart stop.jpg
回复 支持 反对

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2013-6-20 14:53:17 | 显示全部楼层

回复:关于KL14在vlps模式下的串口问题

UART是可以在VLPS模式下,运行的。至于你的板子不可以,你可以参考一下的文字,看看自己的UART的时钟是否在VLPS模式下也是enable的。
Capture1.JPG
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

32

帖子

0

新手上路

Rank: 1

积分
8
最后登录
1970-1-1
 楼主| 发表于 2013-6-20 15:23:30 | 显示全部楼层

回复:关于KL14在vlps模式下的串口问题

回复第 6 楼 于2013-06-20 14:53:17发表:
UART是可以在VLPS模式下,运行的。至于你的板子不可以,你可以参考一下的文字,看看自己的UART的时钟是否在VLPS模式下也是enable的。

 

我也注意到这个问题,我使用的是内部晶振,串口的时钟源是FLL,进入VLPS模式时,内部晶振应该有在工作吧,这就说明串口时钟是开着的。

为什么使用jlink在线调试就可以,断开jlink就不行?

 

 
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

30

帖子

0

注册会员

Rank: 2

积分
94
最后登录
1970-1-1
发表于 2013-6-20 16:21:34 | 显示全部楼层

回复:关于KL14在vlps模式下的串口问题

回复第 7 楼 于2013-06-20 15:23:30发表:
回复第 6 楼 于2013-06-20 14:53:17发表:
UART是可以在VLPS模式下,运行的。至于你的板子不可以,你可以参考一下的文字,看看自己的UART的时钟是否在VLPS模式下也是enable的。
 

我也注意到这个问题,我使用的是内部晶振,串口的时钟源是FLL,进入VLPS模式时,内部晶振应该有在工作吧,这就说明串口时钟是开着的。

为什么使用jlink在线调试就可以,断开jlink就不行?

你调试时采用的是RAM运行模式,还是FLASH运行模式? 

 

 
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

32

帖子

0

新手上路

Rank: 1

积分
8
最后登录
1970-1-1
 楼主| 发表于 2013-6-20 16:54:59 | 显示全部楼层

回复:关于KL14在vlps模式下的串口问题

回复第 8 楼 于2013-06-20 16:21:34发表:
回复第 7 楼 于2013-06-20 15:23:30发表:
回复第 6 楼 于2013-06-20 14:53:17发表:
UART是可以在VLPS模式下,运行的。至于你的板子不可以,你可以参考一下的文字,看看自己的UART的时钟是否在VLPS模式下也是enable的。
 

我也注意到这个问题,我使用的是内部晶振,串口的时钟源是FLL,进入VLPS模式时,内部晶振应该有在工作吧,这就说明串口时钟是开着的。

为什么使用jlink在线调试就可以,断开jlink就不行?

你调试时采用的是RAM运行模式,还是FLASH运行模式? 

 

 Flash 模式。谢谢!

 
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

26

帖子

0

新手上路

Rank: 1

积分
37
最后登录
1970-1-1
发表于 2013-6-21 08:45:17 | 显示全部楼层

回复:关于KL14在vlps模式下的串口问题(正解)

1,VLPS模式下,FLL没有输出,所以进入该模式后UART不可以用FLL做时钟.
2,在数据手册上的MDM-AP Status Register部分关于LP有讲到:Usage intended for debug operation in which Run to VLPS is attempted.Per debug definition, the system actually enters the Stop state.所以在连J-Link调试时其实没有进入VLPS模式,而在STOP模式下,FLL是可设置为有输出.
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-9-15 20:33 , Processed in 0.111427 second(s), 31 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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