你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM8L151G4的串口设置问题?

[复制链接]
windy2007 提问时间:2011-6-13 16:12 /
我用的是STM8L151G4,仿真用ST-LINK,编译器用COSMIC CxSTM8 32K,现在遇到的问题是在设置串口寄存器的时候通过观察窗口发现并所设的寄存器并没有出现期望的值,而设置GPIO的寄存器则可以设置成功.此时如果选择模拟仿真则可以成功设置USART1的寄存器值.这是为什么呢?希望各位大侠能指点一下.
如当执行
USART1->CR2=0x0c;
但执行后通过观察发现USART1->CR2的值是零,跟执行前并没有区别. 
收藏 评论6 发布时间:2011-6-13 16:12

举报

6个回答
废鱼 回答时间:2011-6-14 09:29:01

RE:STM8L151G4的串口设置问题?

这个要在仿真的时候,当程序走过USART设置以后,才会看到寄存器的值改变。而未执行以前,系统的值都是默认的。
windy2007 回答时间:2011-6-14 09:41:28

RE:STM8L151G4的串口设置问题?

谢谢你的回答,我现在遇到的情况就是执行之后的值没有发生改变啊,就只是对USART1的寄存器赋值不成功,对其它寄存器则可以.但模拟仿真则全部都可以.这是不是IC出问题了还是仿真器没有设置好呢?
废鱼 回答时间:2011-6-14 14:45:22

RE:STM8L151G4的串口设置问题?

可能是程序没有运行配置USART1的函数,你可以仿真到这个地方,然后通过单步运行来看USART1的寄存器的值是否能够改变。
windy2007 回答时间:2011-6-15 10:09:16

RE:STM8L151G4的串口设置问题?

这些代码是有执行到了的,我看了它编译之后的汇编代码,汇编代码没有错,但执行后寄存器的值就是没有改变,同样地对GPIO的寄存器进行操作则可能成功地改变GPIO寄存器的值,真是搞不懂是什么原因.
windy2007 回答时间:2011-6-30 11:17:27

RE:STM8L151G4的串口设置问题?

通过ST的技术支持问题已得到解决.存在的问题是STM8L151G4由于是低功耗产品,所以上电后各功能模块都是被屏闭的,只有通过CLK寄存器给对应的模块配置了时钟才能配置相应的模块,否则是没办法对各模块的寄存器进行操作.
ylde 回答时间:2012-8-12 20:06:23

回复:STM8L151G4的串口设置问题?

回复第 6 楼 于2011-06-30 11:17:27发表:
通过ST的技术支持问题已得到解决.存在的问题是STM8L151G4由于是低功耗产品,所以上电后各功能模块都是被屏闭的,只有通过CLK寄存器给对应的模块配置了时钟才能配置相应的模块,否则是没办法对各模块的寄存器进行操作. 

为什么我用串口接收数据通过调试的工具能看到DR寄存器值是有正确的变化   而如果是发送某个数据时DR寄存器一点变化都没有
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版