0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PFS122 AD调试心得-小电流检测方法分享

应广单片机 来源:应广单片机 2023-09-06 18:21 次阅读

最近调试122检测小电流,有一种遇到鬼打墙的状态,就是看到寄存器的值在数据转移时改动了。要不是亲眼见,还真不会相信。在ADC中写入了这么一小段:

AD_Start=1;//Skip first ADC,candeleteby your select

while(!AD_DONE)

ad_temp$1 = adcrh;

ad_temp$0 = adcrl;

你说要是有问题,你在检测内部1.2V时也有问题,那也更容易查找问题吧。可是在转换以内部1.2V为一路输入电压时又没有问题,而且这个程序,在以前的调试好象也问题。

7e44a608-4c9d-11ee-a25d-92fbcf53809c.png

可是一到转换另外一路小电压的时候,就出现问题了。看吧调试窗口里的数据明明提示ADCRH的值为0x01,ADCRL的值为0x17. 在转移到ad_temp 时,变成了ad_temp$1的值为00x03,ad_temp$0为0x17还是正常的。这个问题,以前也弄出来过,可能是后来把系统时钟改低了,系统时钟跑1mips,当时又正常了,所以就没有怀疑程序的问题了。

后来没有明白问题出在哪里,多弄了一次判断,不想等再读一次,想想虽然操作可笑,但也是一种方法:

AD_Start=1;//Skip first ADC, can delete by your select

while(!AD_DONE)

ad_temp$1 = adcrh;

ad_temp$0 = adcrl;

if(ad_temp$1 != adcrh) ad_temp$1 = adcrh;

ad_temp = ad_temp >> 4;

ad16 += ad_temp ;

这样一改,结果是对了,但是还是没有明白问题出在哪里?

后来想到可能系统时钟跑太快了,读数有问题,所以就在while(!AD_DONE)后面加了两个nop;这样也正常了。后来终于想明白。数据转移出错,确实和系统时钟跑得快有关系,所以在频率较低时,上面的程序不会出问题。其实真正的问题就是出在“while(!AD_DONE)”这里,这里少了一个“;”,编译器没有提示错误,本来也是可以不提示错误的,编译器不知道你等待的时候具体是需要干嘛。因为有“;”时,在等待AD转换完的时间里,编译器会自动增加一条nop指令,而没有“;”时,在等待的时间里是一直在读AD转化的高位,等AD结束后,马上是读取AD转换的低位。所以在等待的过程中,读取的高位,是一个还没有转化完。而低位则是转换结束后的数据,所以读起来不会错了。加上NOP后,再等待的时间强制是执行空指令了,结束完还会执行一个空指令再取高位,所以都不会有问题了。

7eac8250-4c9d-11ee-a25d-92fbcf53809c.png







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5220

    浏览量

    118939
  • 输入电压
    +关注

    关注

    1

    文章

    450

    浏览量

    16421
  • AD转换器
    +关注

    关注

    4

    文章

    247

    浏览量

    41251
  • 系统时钟
    +关注

    关注

    1

    文章

    30

    浏览量

    9221
  • pfs
    pfs
    +关注

    关注

    0

    文章

    5

    浏览量

    5016

原文标题:PFS122 AD调试心得分享---小电流检测

文章出处:【微信号:应广单片机,微信公众号:应广单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何烧录PFS122-MSOP10的封装

    应广有好几个型号都封装了MSOP10的封装形式,比如PMS132B, PFS122-MSOP10等。MSOP10的官方封装引脚,用烧录座在烧录器上无法直接烧录,需要转接。
    的头像 发表于12-07 11:43 2684次阅读
    如何烧录<b class='flag-5'>PFS122</b>-MSOP10的封装

    ADC中NFS和PFS指的是什么?

    ADC 中NFS和 PFS指的是什么
    发表于12-14 06:52

    无功电流检测方法对比分析

    无功 电流 检测 方法对比分析 摘要:基于瞬时无功功率理论,建立了谐波及无功 电流 检测系统闭环、开环的统一模型,揭
    发表于11-23 11:22 1702次阅读

    DDS调试心得

    本站提供DDS 调试 心得的资料,希望能够帮你学习。
    发表于05-25 15:53 43次下载
    DDS <b class='flag-5'>调试</b><b class='flag-5'>心得</b>

    图解JLINK在ADS下调试心得

    文章是对LPC2148而写的,但是对三星的44B0芯片同样适用,只需要在选择时将相应的CPU选择的S3C44B0就可以了。 JLINK在ADS下 调试 心得前两天一个客户用jlink在ADS来 调试LPC2148总报错,这个错误我之
    发表于04-09 09:41 4426次阅读
    图解JLINK在ADS下<b class='flag-5'>调试</b><b class='flag-5'>心得</b>

    CAT-PFS0002 压电电缆

    德赢Vwin官网 网为你提供TE(ti)CAT- PFS0002相关产品参数、数据手册,更有CAT- PFS0002的引脚图、接线图、封装手册、中文资料、英文资料,CAT- PFS0002真值表,CAT- P
    发表于12-16 00:00
    CAT-<b class='flag-5'>PFS</b>0002 压电电缆

    CAT-PFS0002 TE 压电电缆

    德赢Vwin官网 网为你提供TE(ti)CAT- PFS0002 TE相关产品参数、数据手册,更有CAT- PFS0002 TE的引脚图、接线图、封装手册、中文资料、英文资料,CAT- PFS0002 TE真值表,CAT-
    发表于06-28 14:00

    开关电源电流检测方法汇总

    开关电源 电流 检测 方法汇总
    发表于10-15 09:41 174次下载

    PFS122检测VDD及IO口的AD电压方法

    PFS122是应广推出的一颗,可以多次烧录的2K程序空间的带数字12位AD转换的单片机。目前以高性价比重新获得用户的喜爱,其价格优势明显,比九齐的062E的价格,可能还更具有优势。
    的头像 发表于11-29 09:20 2575次阅读

    开关模式电源电流检测电流检测方法

    开关模式电源常用的三种 电流 检测 方法是:使用 检测电阻,使用 MOSFET RDS(ON)并使用电感器的直流电阻 (DCR)。每种 方法都有优点和
    的头像 发表于01-05 11:52 3655次阅读
    开关模式电源<b class='flag-5'>电流</b><b class='flag-5'>检测</b>:<b class='flag-5'>电流</b><b class='flag-5'>检测</b><b class='flag-5'>方法</b>

    PFS122检测VDD及IO口的AD电压方法

    PFS122是应广推出的一颗,可以多次烧录的2K程序空间的带数字12位AD转换的单片机。目前以高性价比重新获得用户的喜爱,其价格优势明显,比九齐的062E的价格,可能还更具有优势。
    发表于05-19 10:09 2472次阅读
    <b class='flag-5'>PFS122</b><b class='flag-5'>检测</b>VDD及IO口的AD电压<b class='flag-5'>方法</b>

    何谓电流传感器电流检测方法

    何谓 电流传感器? 电流传感器是指 检测电路中流动的 电流值的传感器。 电流检测
    的头像 发表于06-30 10:14 1645次阅读
    何谓<b class='flag-5'>电流</b>传感器 <b class='flag-5'>电流</b>的<b class='flag-5'>检测</b><b class='flag-5'>方法</b>

    电流探头用于调试电机的测试方法和操作步骤

    导言 电机是现代社会中广泛应用的一种设备,用于驱动各种各样的机械系统。为了确保电机的正常运行和性能优化, 调试和测试是非常关键的步骤。而其中, 电流探头是一种常用的工具,用于 检测和监测电机运行时的
    的头像 发表于08-03 09:36 691次阅读
    <b class='flag-5'>电流</b>探头用于<b class='flag-5'>调试</b>电机的测试<b class='flag-5'>方法</b>和操作步骤

    HK32MCU应用笔记(六)| HK32MCU芯片调试心得

    HK32MCU应用笔记(六)| HK32MCU芯片 调试 心得
    的头像 发表于09-18 10:59 621次阅读
    HK32MCU应用笔记(六)| HK32MCU芯片<b class='flag-5'>调试</b><b class='flag-5'>心得</b>

    PFS122B和PFS122MCU的主要区别

    PFS122只能由VDD做参考更改为还可以用内部其他的参考电压来做AD转换的参考。有了这样的设计后,使得在没有LDO的情况下,也更方便的可以做IO口的AD 检测
    的头像 发表于12-22 10:03 1066次阅读
    <b class='flag-5'>PFS122</b>B和<b class='flag-5'>PFS122</b> MCU的主要区别