TI中文支持网
TI专业的中文技术问题搜集分享网站

28335例程中ADC_cal()移位的问题请教?谢谢

专家你好!

ADC_cal

   MOVW  DP,   #ADCREFSEL_LOC >> 6

   MOV   @28,  #0xAAAA            ; actual value may not be 0xAAAA

   MOV   @29,  #0xBBBB             ; actual value may not be 0xBBBB

   LRETR

第一条指令移位6位?ad不是12位精度么 16位的数据不是移位4位么?呵呵 那个ADCREFSEL_LOC看不懂 主要是  麻烦解释下 谢了0…0可以的话把后面两句指令也解释下 呵呵

yong mao:

额 专家上面还有一条语句是这样的 看不懂

.def _ADC_cal

.asg "0x711C",   ADCREFSEL_LOC

专家你好!

ADC_cal

   MOVW  DP,   #ADCREFSEL_LOC >> 6

   MOV   @28,  #0xAAAA            ; actual value may not be 0xAAAA

   MOV   @29,  #0xBBBB             ; actual value may not be 0xBBBB

   LRETR

第一条指令移位6位?ad不是12位精度么 16位的数据不是移位4位么?呵呵 那个ADCREFSEL_LOC看不懂 主要是  麻烦解释下 谢了0…0可以的话把后面两句指令也解释下 呵呵

shen lee:

回复 秋之初:

MOVW  DP,   #ADCREFSEL_LOC >> 6  /* 右移动6bit 获得 数据段首地址 */

/* 此时, DP = 0x7100 */

怎么理解 右移6位 又没有移回去啊?

0xAAAA

0xBBBB

怎么理解啊

谢谢

专家你好!

ADC_cal

   MOVW  DP,   #ADCREFSEL_LOC >> 6

   MOV   @28,  #0xAAAA            ; actual value may not be 0xAAAA

   MOV   @29,  #0xBBBB             ; actual value may not be 0xBBBB

   LRETR

第一条指令移位6位?ad不是12位精度么 16位的数据不是移位4位么?呵呵 那个ADCREFSEL_LOC看不懂 主要是  麻烦解释下 谢了0…0可以的话把后面两句指令也解释下 呵呵

Xiaolong Yang:

回复 秋之初:

这是通过BOOT 模式中,经由ADC_cal进行引导,再进入main()函数代码吧?

专家你好!

ADC_cal

   MOVW  DP,   #ADCREFSEL_LOC >> 6

   MOV   @28,  #0xAAAA            ; actual value may not be 0xAAAA

   MOV   @29,  #0xBBBB             ; actual value may not be 0xBBBB

   LRETR

第一条指令移位6位?ad不是12位精度么 16位的数据不是移位4位么?呵呵 那个ADCREFSEL_LOC看不懂 主要是  麻烦解释下 谢了0…0可以的话把后面两句指令也解释下 呵呵

Bruce_旋:

回复 秋之初:

秋之初你好,想请教你几个问你。

1、根据的的学习理解,对ADC矫正应该是根据下面的图进行,通过精准电源求得偏移然后对采样修正。而adc_cal函数的矫正原理是什么呢?

2、手册说adc_cal函数是对ADCFEFSEL和ADCOFFTRIM寄存器初始化,但是ADCFEFSEL寄存器是参考电压选择,怎么是矫正呢?

3、另外,该代码的最后两句的意思是什么呢,是向ADCREFSEL 写0xAAAA ,向ADCOFFTRIM 写 0xBBBB吗?

4、如果ADC_cal函数可以起到矫正作用,请问在实际操作中是不是应该自己再对其代码进行一些修改,还是直接调用呢?

赞(0)
未经允许不得转载:TI中文支持网 » 28335例程中ADC_cal()移位的问题请教?谢谢
分享到: 更多 (0)