查看: 2379|回复: 0

【赚周年币】技术帖Week3-Day5——LPC824之18、模拟比较器

[复制链接]
  • TA的每日心情
    开心
    6 小时前
  • 签到天数: 3751 天

    连续签到: 77 天

    [LV.Master]伴坛终老

    发表于 2017-1-19 03:02:56 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 toofree 于 2017-1-19 03:24 编辑

            【赚周年币】技术帖Week3-Day5——LPC824之18、模拟比较器

            LPC824内部集成了模拟比较器,好像其它cortex-m0系列的也有模拟比较器,知道有,但是从来没用过,那么今天就来试试。
           今天以工程“LPC824_Example_Code_Bundle_Keil_r1.0\Keil_Projects\Example_Analog_Comparator\Example_Analog_Comparator.uvoptx”模板来学习。
           傲游截图20170119024117.jpg

           本测试不用任何连线,因为是在模拟比较器内部模拟梯度与内部电压的比较。
           样例程序中,主要用到两个文件“Example_Analog_Comparator.c”和“Example_Analog_Comparator_ISR.c”,其它文件在别的工程要类似,这里不必做解释。其中两个文件中,又各一个函数,主函数main()和中断处理函数CMP_IRQHandler()。

            主函数,初始化调试串口,开启模拟比较器上电,并开比较器和IO时钟,复位比较器。
             傲游截图20170119024640.jpg

            这两句是最关键的。设置模拟比较器负极为BANDGAP(即内部0.9V参考电源),正极为模拟梯度输出(即LADDER OUT),检测方式为双沿(即大于和小于的瞬间都检测)。模拟梯度参考电压为电源电压(3.3V),梯度初始值为0,使能梯度。
             傲游截图20170119024815.jpg
            那么比较用户手册“UM10800.pdf”,以上设置实质就是下图。
           傲游截图20170119025955.jpg

            清除沿检测状态,模拟比较器开中断。初始化LED,并点亮红灯。
             傲游截图20170119024824.jpg

            从调试串口输入不大于1F的16进制数,把读取的数赋更新到模拟梯度寄存器。因为模拟梯度是5位的,避免出现大于1F的数,做了位与0x1f操作。
             傲游截图20170119024841.jpg

            中断处理函数中,判断比较结果,结果为1,点亮绿灯;结果为0点亮红灯。那么怎么判断呢,3.3V分为31份,那么每一份步进值为0.10645V,步进值乘以梯度,即为比较器正极电压;比较器负极电压为0.9V。0.10645*8=0.851V, 0.10645*9=0.958V,那么显然,梯度小于等于8的时候,比较器结果输出为0;梯度大于等于9的时候,比较器结果输出为1。
             傲游截图20170119024852.jpg

            实际可比较的源有很多,可以为ICMP_I1、ICMP_I2、ICMP_I3、ICMP_I4、bandgap、ADC0、VSS、LADDER OUT,其中任意两者的组合,也就是8x7 = 56种。

            最后一天,收工。

            

            
          

    评分

    参与人数 1 +75 收起 理由
    EEboard爱板网 + 75 3周发帖养成记 奖励

    查看全部评分

    回复

    使用道具 举报

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

    本版积分规则

    关闭

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



    手机版|小黑屋|与非网

    GMT+8, 2024-4-26 06:32 , Processed in 0.125196 second(s), 19 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.