幻瞑梦貘 幻瞑梦貘
关注数: 1 粉丝数: 99 发帖数: 4,375 关注贴吧数: 13
刚回来就看到有人发C,我也发个,目测吧里看得懂的不超过3个 #include <msp430x44x.h> #include <math.h> unsigned int lcdfigure; unsigned int V_out[18]; unsigned int V_in[18]; unsigned int V_temp[18]; unsigned int V_cur[18]; unsigned char adc_index; unsigned int sumVcur,Iout_temp,N_LCD=65530; unsigned char lcd_flag=1; unsigned int n=0,Iout,sumV_cur,minute,key,Voset=3000,key1,i,Vsuplus,Kp,Ki; const char digit[10] = { 0xAF, /* "0" */ 0x06, /* "1" */ 0x6D, /* "2" */ 0x4F, /* "3" */ 0xC6, /* "4" */ 0xCB, /* "5" */ 0xEB, /* "6" */ 0x0E, /* "7" */ 0xEF, /* "8" */ 0xCF /* "9" */ }; void delay_1ms(void) { __delay_cycles(8000); } void delay_nms(unsigned int n) { unsigned int i; for(i=0;i<n;i++) delay_1ms(); } void init_io(void) { P2OUT &=~0X02; P2SEL &=0XFC; P2DIR |=0X03; P2OUT &=0XFC; } void lcd_init(void) { LCDCTL = LCDP1 + LCD4MUX + LCDON; BTCTL = BT_fLCD_DIV64; P5SEL |= 0xFC; } void lcd_display_all(void) { unsigned int i; for (i=0; i<21; ++i) LCDMEM[i] = 0XFF; } void lcd_clear_all(void) { unsigned int i; for (i=0; i<21; ++i) LCDMEM[i] = 0X00; } void lcd_display_figure() { unsigned char tmp; tmp=digit[lcdfigure%10]+0x10; LCDMEM[4]&=tmp; tmp &=0xef; LCDMEM[4]|=tmp; tmp=digit[lcdfigure/10]+0x10; LCDMEM[5]&=tmp; tmp &=0xef; LCDMEM[5]|=tmp; } void DCO_8M(void) { FLL_CTL0 |= DCOPLUS + XCAP18PF; SCFI0 |= FN_4; SCFQCTL = 121; FLL_CTL0 |= XCAP18PF; } void PWMOUT_IOP22_INIT(void) { P2DIR |= 0x04; P2SEL |= 0x04; } void PWM_FREQUENCY_23K_USETIMEB(void) { TBCCTL0 = CCIE; TBCCR0 = 400; TBCCTL1 = OUTMOD_7; } void PWMSTART(void) { TBCTL = TBSSEL_2 + MC_1; } void adc12_init() { P6SEL = 0x0F; ADC12CTL0 = ADC12ON+MSC+SHT0_2+REF2_5V+REFON; ADC12CTL1 = SHP+CONSEQ_1; ADC12MCTL0 = SREF_1+INCH_0; ADC12MCTL1 = SREF_1+INCH_1; ADC12MCTL2 =SREF_1+ INCH_2; ADC12MCTL3 =SREF_1+ INCH_3+EOS; ADC12IE = 0x08; ADC12CTL0 |= ENC; _EINT(); } void adc12_start_convert() { ADC12CTL0 |= ADC12SC; } void key_init(void) { P1DIR=0X00; P1SEL=0X00; P1IE=0X3e; P1IES=0X3e; } unsigned int sum_V_out(void) { unsigned char i; unsigned int sum; for(i=0;i<16;i++) { sum+=V_out[i]; } sum>>=4; return(sum); } unsigned int sum_V_in(void)
首页 1 2 3 4 5 下一页