• 大小: 39KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-09
  • 语言: 其他
  • 标签: C8051f410  AD  检测  1602  

资源简介

利用C8051f410内部的12位A/D转换器进行开关电源电压电流检测并在1602液晶显示

资源截图

代码片段和文件信息

//文件名:	ADC.c
//
//编写人: LD
//
//编写时间:2009/08/24
//
//目标器件: C8051F410
//
//编译工具: Keil
//
//程序说明: 此程序通过I/O口P1^3P1^4和P1^5调节数字电位器X9C102/103/104的阻值通过I/O口P1^0和
// P1^1分别监测输出电压和流过采样电阻的平均电流并通过1602液晶显示当前输出电压实际值
// 和流过采样电阻的电流值
//
//硬件接口:电压采样=P1^0; 电流采样=P1^1;
// X9C103_CS=P1^3; X9C103_INC=P1^4; X9C103_UD=P1^5;
//------------------------------------------------------------------------------------
// Includes
//------------------------------------------------------------------------------------
#include                     // SFR declarations
#include 
sbit voltage=P1^0;
sbit current=P1^1;
sbit X9C103_CS=P1^3;
sbit X9C103_INC=P1^4;
sbit X9C103_UD=P1^5;
sbit s1=P2^0;
sbit s2=P2^1;
sbit s3=P2^2;
sbit s4=P2^3;
sbit lcden=P2^4;
sbit lcdrs=P2^5;
sbit sdi=P2^6;
sbit clk=P2^7;
bit AD=1;
bit VI=0;
unsigned char code table1[]=“OBS V:00.0 I:2.68“;
unsigned char code table2[]=“DES V:36.0 I:2.68“;
unsigned int ab;
unsigned char qianbaishi;

//------------------------------------------------------------------------------------
// Function PROTOTYPES
//------------------------------------------------------------------------------------
void PORT_Init (void);
void Oscillator_Init();
void up(unsigned char command);
void down(unsigned char command);
void write_595(unsigned char da);
void lcd_init(void);
void write_com(unsigned char com);
void write_data(unsigned char da);
void delay(unsigned int z);
void Interrupts_Init();
void ad_v_display(void);
void ad_i_display(void);
/***************************************************************************************
函数名称: void sleep_ms(WORD count)
功能描述: 延时
输入: WORD count(所要延时的长度)
输出: 无
全局变量: 无
调用模块: _nop_()
***************************************************************************************/
/*
void sleep_ms(unsigned char count)
{
  unsigned char iijj;
  for(ii=0;ii    {
      for(jj=0;jj<250;jj++)
  _nop_();
    }
}   */
void ADC_Init()
{
    ADC0MX    = 0x00;
    ADC0CN    = 0x80;
}

void Voltage_Reference_Init()
{
    REF0CN    = 0x18;
}

//------------------------------------------------------------------------------------
// MAIN Routine
//------------------------------------------------------------------------------------
void main()
{
PCA0MD    &= ~0x40; //禁止看门狗
Oscillator_Init(); //时钟初始化
PORT_Init(); //I/O初始化
lcd_init();
ADC_Init();
Voltage_Reference_Init();
Interrupts_Init();
while(1)
{
lcdrs=0;
if(s1==0)
{
delay(10);
if(s1==0)
{
while(s1==0);
down(5);
}
}
delay(250);
if(s2==0)
{
delay(10);
if(s2==0)
{
while(s2==0);
up(5);
}
}
// AD0BUSY=1; //启动A/D转换
if(AD)
{
AD=0;
if(VI)
ad_v_display(); //转换完成则显示
else
ad_i_display(); //转换完成则显示
AD0BUSY=1; //启动A/D转换
}
}
}
/***********************************************

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       6376  2007-09-11 14:50  Flyback2\STARTUP.A51

     文件        618  2009-08-26 14:54  Flyback2\flyback.plg

     文件       8217  2009-08-22 17:46  Flyback2\flyback.c

     文件      14062  2009-08-26 14:53  Flyback2\STARTUP.LST

     文件         58  2009-08-26 14:53  Flyback2\flyback.lnp

     文件      20394  2009-08-26 14:53  Flyback2\flyback.M51

     文件         19  2009-08-26 09:15  Flyback2\ExtDll.iex

     文件      17062  2009-08-26 14:53  Flyback2\adc.OBJ

     文件      11208  2009-08-26 14:54  Flyback2\adc.c

     文件        749  2009-08-26 14:53  Flyback2\STARTUP.OBJ

     文件      22926  2009-08-26 14:53  Flyback2\adc.LST

     文件      16450  2009-08-26 14:53  Flyback2\flyback

     文件      16470  2009-08-22 17:46  Flyback2\flyback.LST

     文件      11698  2009-08-22 17:46  Flyback2\flyback.OBJ

     文件       1313  2009-08-26 14:54  Flyback2\flyback.Opt

     文件       1314  2009-08-26 14:52  Flyback2\flyback_Opt.Bak

     文件       2248  2009-08-24 17:08  Flyback2\flyback_Uv2.Bak

     文件       2248  2009-08-24 20:58  Flyback2\flyback.Uv2

     目录          0  2009-08-30 23:07  Flyback2

----------- ---------  ---------- -----  ----

               153430                    19


评论

共有 条评论