数控直流电流源(D题)(3)

2020-02-22 14:05

三、 单片机程序

#include \#include \chardata_display[10]; #define y 800 floatres,ADCresult,df; void PWM(void) {

WDTCTL= WDTPW + WDTHOLD; TACTL = TASSEL_2 +TACLR+MC_1; CCR0=1800;

res=CCR0-(y-5.0793)/1.614; CCR1=res; CCTL1=OUTMOD_3; P1SEL |=BIT6; P1DIR |=BIT6; }

voidBCS_Init(void) { }

void main(void) {

float dat3;

if(CALBC1_16MHZ ==0xFF) { }

DCOCTL = 0;

BCSCTL1 = CALBC1_16MHZ; DCOCTL = CALDCO_16MHZ; __delay_cycles(100);

while(1);

double x,dat2;

BCS_Init();

PWM();

F-11

Lcd_Init(); Lcd_Clear();

StrDisplay(\Lcd_Clear();

while(1) {

ADC10CTL0 = ADC10SHT_2 + ADC10ON +REFON + REF2_5V + ADC10IE

+SREF_1;

ADC10CTL1 |= INCH_7; ADC10AE0 |= BIT7;

ADC10CTL0 |=ENC+ADC10SC; _EINT();

dat3=(float)100*(CCR0-CCR1)/CCR0; x=(double)(CCR0-CCR1); dat2=(double)(1.614)*x+5.0793; StrDisplay(\组 2\

StrDisplay(\占空比:\StrDisplay(\理论值:\StrDisplay(\实际值:\StrDisplay(\StrDisplay(\StrDisplay(\floatTochar(y,data_display,2); StrDisplay(data_display,1,7,0); floatTochar(data2,data_display,2); StrDisplay(data_display,2,7,0); floatTochar(ADCresult,data_display,2); StrDisplay(data_display,3,7,0); __delay_cycles(30000000); } }

#pragma vector=ADC10_VECTOR __interrupt void ADC10_ISR(void) { }

F-12

df=ADC10MEM;

ADCresult=df*1000*2.5/(1023.0);


数控直流电流源(D题)(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:酸雾废气处理方法的介绍和应用

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: