• 大小: 21KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-09
  • 语言: 其他
  • 标签: 无刷电调  

资源简介

德国MK无刷电调V0.41代码

资源截图

代码片段和文件信息

/*############################################################################

############################################################################*/

#include “main.h“

//############################################################################
//Init ADC
void ADC_Init(void)
//############################################################################
{
  ADCSRA = 0xA6;  // Free Run & 1MHZ
  ADMUX = 7 | IntRef;      // Kanal 7
  ADCSRA |= 0x40; // Start
}

//############################################################################
//Strom Analogwerte lesen
void AdConvert(void)
//############################################################################
{
 unsigned int i=0;  
 unsigned char sense;
  sense = ADMUX;   // Sense-Kanal merken
  ADMUX  =  0x06 | IntRef;  // Kanal 6
  SFIOR  =  0x00;  // Analog Comperator aus
  ADCSRA =  0xD3;  // Converter ein single
  ADCSRA |= 0x10;  // Ready l?schen
  ADMUX  =  0x06 | IntRef;  // Kanal 6
  ADCSRA |= 0x40;  // Start
  while (((ADCSRA & 0x10) == 0));
  ADMUX = sense;   // zurück auf den Sense-Kanal
  i = ADCW * 4;
//  if(i > 300) i = 300;
  Strom = (i + Strom * 7) / 8; 
  if (Strom_max < Strom) Strom_max = Strom;
  ADCSRA = 0x00;  
  SFIOR = 0x08;  // Analog Comperator ein
}



//############################################################################
//Strom Analogwerte lesen
unsigned int MessAD(unsigned char channel)
//############################################################################
{
 unsigned char sense;
  sense = ADMUX;   // Sense-Kanal merken
  channel |= IntRef;
  ADMUX  =  channel;  // Kanal 6
  SFIOR  =  0x00;  // Analog Comperator aus
  ADCSRA =  0xD3;  // Converter ein single
  ADCSRA |= 0x10;  // Ready l?schen
  ADMUX  =  channel;  // Kanal 6
  ADCSRA |= 0x40;  // Start
  while (((ADCSRA & 0x10) == 0));
  ADMUX = sense;   // zurück auf den Sense-Kanal
  ADCSRA = 0x00;  
  SFIOR = 0x08;  // Analog Comperator ein
return(ADCW);
}

//############################################################################
//Strom Analogwerte lesen
void FastADConvert(void)
//############################################################################
{
 unsigned int i=0;  
  i = MessAD(6) * 4;
//  i = ADCW * 4;
  if(i > 200) i = 200;
  Strom = i;//(i + Strom * 1) / 2; 
  if (Strom_max < Strom) Strom_max = Strom;
  ADCSRA = 0x00;  
  SFIOR = 0x08;  // Analog Comperator ein
}
 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2012-10-30 15:06  MK_V0.14代码\
     文件        2471  2012-10-30 14:55  MK_V0.14代码\analog.c
     文件         126  2012-10-30 14:56  MK_V0.14代码\analog.h
     文件        9339  2012-10-30 14:57  MK_V0.14代码\BLMC.c
     文件        4391  2012-10-30 14:57  MK_V0.14代码\BLMC.h
     文件       25704  2012-10-30 14:58  MK_V0.14代码\main.c
     文件        3947  2012-10-30 15:01  MK_V0.14代码\main.h
     文件         724  2012-10-30 15:02  MK_V0.14代码\old_macros.h
     文件        2410  2012-10-30 15:03  MK_V0.14代码\PPM_Decode.c
     文件        1272  2012-10-30 15:03  MK_V0.14代码\PPM_Decode.h
     文件        1230  2012-10-30 15:04  MK_V0.14代码\timer0.c
     文件         349  2012-10-30 15:04  MK_V0.14代码\timer0.h
     文件        2373  2012-10-30 15:04  MK_V0.14代码\twislave.c
     文件         740  2012-10-30 15:05  MK_V0.14代码\twislave.h
     文件        8977  2012-10-30 15:05  MK_V0.14代码\uart.c
     文件        2288  2012-10-30 15:06  MK_V0.14代码\uart.h

评论

共有 条评论