开关稳压电源.txt

来自「电子设计大赛开关稳压电源总程序」· 文本 代码 · 共 98 行

TXT
98
字号
程序代码:

//AD采集,光敏电阻控制LED的亮蔑

#include<pic.h>

unsigned char  shuzi[]={    0x3f,0x06,0x5B,0x4F,0x66,0x6D,0x7d,0x07,0x7F,0x6F,0x80};
unsigned char  dongtai[]={0x01,0x02,0x04,0x08};
unsigned char k[4];

  void delay1()
   { 
unsigned char i,j; 
   for(i=0;i<20;i++)
   for(j=0;j<10;j++);
   }
unsigned char delay2(unsigned char t)
{ 
unsigned char i,j;
for(i=0;i<40;i++)
for(j=500;j>=0;j--)
while(t--);
}
void delay(void)
{
unsigned int i;
for(i=30;i>0;i--)
{}
}

void delay4us(void)
{
unsigned int i;
for(i=4;i>0;i--)
{}
}

void display(void)
{ 
unsigned int i;
unsigned long VALUE;
VALUE = ADRESH*5000/255;
k[0] = VALUE/1000;
k[1] = VALUE/100%10;
k[2] = VALUE/10%10;
k[3] = VALUE%10;
for(i=0;i<4;i++)
{
delay1();
PORTB=dongtai[3-i];
PORTC=shuzi[k[i]];
if(i==3)PORTC+=0X80;
}
delay4us;
//ADGO=1; 
}

main()
{  
unsigned int i;
unsigned long VALUE;
TRISD = 0X00;
TRISB = 0X00;
TRISC = 0X00;
TRISA1=1;
TRISA2=1;
TRISB4 = 1;
TRISB5 = 1;
ADCON1=0X04;
TRISD=0X00;
delay();
ADGO=1;
while(1)
{
if(RB4 == 0)
{
ADCON0=0X49;
delay(); 
ADGO=1;
wait1: if(ADGO == 0)		
display();
else goto wait1;
delay4us();
}
if(RB5 == 0)
{
ADCON0=0X51;
delay();
ADGO=1;
wait2: if(ADGO == 0)	
display();
else goto wait2;
delay4us();	
	
}	
}		
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?