zoukankan      html  css  js  c++  java
  • atmega8 例程: 查询方式AD采集

    /*********************************************************** 
    * 函数库说明:ATMEGE8 AD模数转换
    * 版本: v1.0
    * 修改: 庞辉
    * 修改日期: 2011年08月05日
    *
    * 说明: 查询方式AD采集
    *
    * 版本更新: 详见readme.txt
    *
    ************************************************************
    *注意: res PC5
    * CE PB0
    * RST PB1
    * DC PB2
    * SDIN PB3
    * SCLK PB4
    **********************************************************
    */


    #include "includes.h"

    /***********************************************************
    ** 名 称:void AD_Init(void)
    ** 功 能:AD初始化
    ** 入口参数:无
    ** 出口参数:无
    ** 使用说明:无
    *********************************************************
    */
    void AD_Init(void)
    {
    //参考电压AREF,左对齐,ADC5单端输入
    ADMUX |= (1 << ADLAR) | (1 << MUX2) | (1 << MUX0);
    //AD使能, 连续转换,中断关闭,32分频, 6M / 32 = 187.5khz
    ADCSRA |= (1 << ADEN) | (1 << ADFR) | (1 << ADPS2) | (1 << ADPS0);
    //AD开始转换
    ADCSRA |= (1 << ADSC);
    }

    int main(void)
    {
    int result = 0;
    char buf[] = "5.00V";

    LCD_Init();
    AD_Init();
    LCD_Write_Chinese_String(0, 0, 12, 5, Chinese_Font, 0, 0);


    while(1)
    {
    while((ADCSRA & (1 << ADIF)) == 0);
    //读取转换值
    result = ADCH;
    result = result * 500.0 / 255;

    //数据更新
    buf[0] = result / 100 + '0';
    buf[2] = result / 10 % 10 + '0';
    buf[3] = result % 10 + '0';

    //数据显示
    LCD_Write_English_String(0, 3, buf);
    }

    return 0;
    }
  • 相关阅读:
    什么是内卷?
    iphone与PC端如何传BUG截图
    java应用服务占用cpu过高,如何优化
    性能测试常见问题FAQ
    性能测试工程师能力进阶三部曲
    jmeter分布式压测试部署
    了解token及分类
    常见端口号及其服务
    2714
    python
  • 原文地址:https://www.cnblogs.com/pang123hui/p/2312368.html
Copyright © 2011-2022 走看看