资源简介
大功率壁挂式风光互补控制器,与原理图一起可以直接出产品!
代码片段和文件信息
#define ADC_C
#include “includes.h“
/*-----------------------ADC转换初始化----------------------------------------*/
//ADC initialize
// Conversion time: 26uS
unsigned char adc_datahadc_datal;
void adc_init(void)
{
ADCSRA = 0x00; //disable adc
ADMUX = 0x00; //select adc input 0
/*--REFS1---REFS0---ADLAR---0--------------参考电源选择------对齐方式--------*/
/*--0000-- 0001-- 0010-- 0011-- 0100-- 0101-- 0110-- 0111-- 1110--- --1111---*/
/*--通道0--通道1--通道2--通道3--通道4--通道5--通道6-通道7--1.23V(VBG)-0V(GND)*/
ACSR = 0xC0; //模拟比较器控制和状态寄存器 ACSR
//ACD置1使模拟比较器禁用
/*--ACD--ACBG--ACO--ACI---ACIE---ACIC---ACIS1---ACIS0------------------------*/
/*-模拟比较起禁用--模拟比较器的能隙基准源--模拟比较起输出--模拟比较器中断标志*/
/*-模拟比较器中断使能--模拟比较器输入捕捉使能--模拟比较器中断模式选择--------*/
ADCSRA = 0x86;//模拟比较起控制和状态寄存器
/*-----------ADEN---ADSC---ADFR---ADIF---ADIE---ADPS2---ADPS1---ADPS0--------*/
//使能模数转换 ADC开始转换 ADC连续转换 ADC中断使能 128分频
}
/*-----------------------ADC转换中断程序--------------------------------------*/
#pragma interrupt_handler adc_isr:iv_ADC
void adc_isr(void)
{
//conversion complete read value (int) using...
adc_datal = ADCL; //Read 8 low bits first (important)
adc_datah =ADCH; //read 2 high bits and shift into top byte
}
//***********************************
/*void adc_convert0(void)
{
unsigned char ijk;
ADMUX = 0xC0; //选择通道0
ADCSRA |=(1< delay_nms(1);
}*/
//********************************************
/******************************************************
函数名称:int adc_convert(unsigned char channel)
函数功能:进行一次ADC
入口参数:unsigned char channel:需要进行ADC的通道
返回参数:adc_temp: ADC装换完成的值
*******************************************************/
int adc_convert(unsigned char channel)
{
int adc_temp=0;
ADMUX=channel;
ADCSRA|=(1< delay_nus(200);
adc_temp=ADC;
return adc_temp;
}
/******************************************************
函数名称:currentcal(unsigned char *value int adcdata)
函数功能:将ADC采样数值转换为LCD电流显示值
入口参数:unsigned char *value:LCD 显示缓存区
int adcdata: ADC 采样所得的值
返回参数:无
*******************************************************/
void voltcal(unsigned char* value int adcdata)
{
#ifdef _UP72
{
int i;
//unsigned int count;
count = (int)((Vref*1010.00/1023.00)*adcdata);
if(count>=1000)//大于100V
{ for(i=3; i>2; i--)
{
value[i] = count%10 + 0x30;
count /=10;
}
value[3] =0x2e;
for(i=2; i>=0; i--)
{
value[i] = count%10 + 0x30;
count /=10;
}
delay_nms(10);
voltage_100=0x01;
}
else//小于100V
{for(i=3; i>2; i--)
{
value[i] = count%10 + 0x30;
count /=10;
}
value[2] =0x2e;
for(i=1; i>=0; i--)
{
value[i] = count%10 + 0x30;
count /=10;
}
delay_nms(10);
voltage_100=0x00;
}
return;
}
#else
{
int i;
unsigned int count;
count = (int)((Vref*313/1023.00)*adcdata);
for(i=3; i>2; i--)
{
value[i] = count%1
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-11-15 16:13 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\
目录 0 2013-11-15 16:13 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\
文件 12274 2013-09-22 10:36 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\eeprom._c
文件 12273 2013-09-22 10:29 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\eeprom.c.130922102944
文件 3069 2013-09-22 13:52 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\main._c
文件 3071 2013-09-22 11:55 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\main.c.130922115502
文件 3071 2013-09-22 11:56 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\main.c.130922115654
文件 3980 2013-09-22 15:40 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\mydata._h
文件 3980 2013-09-22 11:04 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\mydata.h.130922110410
文件 3980 2013-09-22 13:44 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\mydata.h.130922134420
文件 48381 2013-09-22 16:38 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\state._c
文件 48381 2013-09-22 15:29 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\state.c.130922152944
文件 48381 2013-09-22 15:31 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\state.c.130922153142
文件 2854 2013-09-22 10:08 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\time._c
文件 2901 2013-09-22 09:50 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\BACKUP\time.c.130922095010
文件 223 2013-12-17 15:47 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.SRC
文件 56245 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.cof
文件 45189 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.dbg
文件 3109 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.eep
文件 57661 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.hex
文件 77 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.lk
文件 400741 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.lst
文件 3098 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.mak
文件 10438 2013-09-30 14:11 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\MASTER.mp
文件 5421 2012-10-30 15:14 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\adc.c
文件 1020 2012-06-22 13:31 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\adc.h
文件 28197 2013-09-30 14:10 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\adc.lis
文件 6786 2013-09-30 14:10 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\adc.o
文件 838 2012-05-04 19:10 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\delay.c
文件 589 2011-01-10 15:51 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\delay.h
文件 7413 2013-09-30 14:10 高端风光互补程序(显示风机电流和太阳能电流)(新PCB)\delay.lis
............此处省略33个文件信息
- 上一篇:光伏MPPT控制器程序
- 下一篇:noi2019冬令营 快速傅里叶变换 宋新波
评论
共有 条评论