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

查看: 8453|回复: 11

关于STM8数据对齐的左对齐右对齐问题

[复制链接]

5

主题

26

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
发表于 2012-6-16 09:48:08 | 显示全部楼层 |阅读模式
        请教大虾们:我在取10位ADC结果之前设置了右对齐数据方式,即ALIGIN=1  ,但是又用到模拟看门狗寄存器上下限阈值设定,它却是左对齐的格式。而我在RAM中定义一个16位的字之后,对其算术运算都是以右对齐的方式。现在的问题是模拟看门狗只能是左对齐的,所以我想统一全部用左对齐方式,请问如何把我在RAM中要定义的字也设为左对齐的方式进行算术运算?或者说是不是把ALIGIN位设为0,系统就全部认为数据是左对齐的了?或者有没有简洁的办法将一个左对齐的数据转换为右对齐?烦那,例如将一个8位的右对齐字改为左对齐的我都手工改,这对常量还好说,对变量来说就是个恶梦了。
回复

使用道具 举报

5

主题

26

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
 楼主| 发表于 2012-6-16 10:09:33 | 显示全部楼层

RE:关于STM8数据对齐的左对齐右对齐问题

木有人注意到这个细节问题?
回复 支持 反对

使用道具 举报

5

主题

26

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
 楼主| 发表于 2012-6-16 10:24:28 | 显示全部楼层

RE:关于STM8数据对齐的左对齐右对齐问题

举例一,我要用一个右对齐的自定义字和一个左对齐的ADC_HTR进行相加,结果存入x,要不要转换成统一对齐方式,还是默认自动按某个方式处理?
   举例二,我要装X的内容直接写入ADC_HTR,是如何操作的?
回复 支持 反对

使用道具 举报

134

主题

4489

回帖

239

蝴蝶豆

版主

最后登录
2020-12-9
发表于 2012-6-16 10:31:39 | 显示全部楼层

RE:关于STM8数据对齐的左对齐右对齐问题

我的理解是,AD采集的时候,对于左对齐,是从左开始舒10位,而对于右对齐,是从右开始数10位。左对齐,就要把值友谊6位,为右对齐就不用移位了。不知道,我理解的对不对。
回复 支持 反对

使用道具 举报

5

主题

26

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
 楼主| 发表于 2012-6-16 10:31:49 | 显示全部楼层

RE:关于STM8数据对齐的左对齐右对齐问题

我在想是不是用16位左移指令将右对齐格式的字先左移6位,再用8位右移指令将低8位右移6位,这样觉得有点雷人啊。虽然结果正确,但我很不情愿这么做。
回复 支持 反对

使用道具 举报

134

主题

4489

回帖

239

蝴蝶豆

版主

最后登录
2020-12-9
发表于 2012-6-16 10:39:10 | 显示全部楼层

RE:关于STM8数据对齐的左对齐右对齐问题

默认都是右对齐的,对于左对齐的设置,你可以看看手册,有没有地方设置。好像只有AD用到这个对齐方式了吧。
回复 支持 反对

使用道具 举报

2

主题

9

回帖

0

蝴蝶豆

新手上路

最后登录
2019-8-20
发表于 2012-6-16 10:42:38 | 显示全部楼层

RE:关于STM8数据对齐的左对齐右对齐问题

俺挣个分,顺便帮你顶一下。
回复 支持 反对

使用道具 举报

5

主题

26

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
 楼主| 发表于 2012-6-16 10:43:20 | 显示全部楼层

回复:关于STM8数据对齐的左对齐右对齐问题

回复第 4 楼 于2012-06-16 10:31:39发表:
我的理解是,AD采集的时候,对于左对齐,是从左开始舒10位,而对于右对齐,是从右开始数10位。左对齐,就要把值友谊6位,为右对齐就不用移位了。不知道,我理解的对不对。 

10位左对齐的格式是:低两位仍然存放在R0R1位,你理解的是低两位跟着存放到R6R7了。所以还要将低两位移回到R0R1。整个转换过程需要2*6+4*6=36指令周期,这不是个好办法。
回复 支持 反对

使用道具 举报

5

主题

26

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
 楼主| 发表于 2012-6-16 11:09:00 | 显示全部楼层

回复:关于STM8数据对齐的左对齐右对齐问题

回复第 6 楼 于2012-06-16 10:39:10发表:
默认都是右对齐的,对于左对齐的设置,你可以看看手册,有没有地方设置。好像只有AD用到这个对齐方式了吧。 

好像是吧,我不了解所有模块设置。中文数据手册中那个模拟看门狗的阈值寄存器是右对齐的,开始我还很庆幸,不用考虑这个问题了,但发现运行结果出错,才怀疑到这个问题,查看英文手册,果然原版是左对齐的。不知道哪个混蛋XX翻译的。
回复 支持 反对

使用道具 举报

134

主题

4489

回帖

239

蝴蝶豆

版主

最后登录
2020-12-9
发表于 2012-6-16 11:50:20 | 显示全部楼层

RE:关于STM8数据对齐的左对齐右对齐问题

好的。我看看手册。
回复 支持 反对

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版