📄 untitled.c
字号:
int main(void){
unsigned long int adctemp,adctemp1,adctemp2,adctemp1_quick,adctemp2_quick;
unsigned long int temperture=0;unsigned char aa[30];
unsigned char abcd[93]={" Hello! 陈羽旻/n"};///n Good to see you/n cym-try@tom.com/nQQ:104420700,/?|"};
main_init();
//温度计
while (1){// Place your code here
unsigned int i,temp;
//unsigned char r,g,b,input;//int temp1=1;
//int num_temp;
LCD_init();
delay5ms();
LCD_ClearScreen(0);delay5ms_times(2);
//for(i=0;i<10;i++){
//LCD_WritePixel_pic(7,10,gImage_test,2);LCD_WritePixel_pic(52,10,gImage_test,1);
//delay5ms_times(20);
//LCD_WritePixel_pic(7,10,gImage_test,0);LCD_WritePixel_pic(52,10,gImage_test,1);
//delay5ms_times(20);
//LCD_WritePixel_pic(7,10,gImage_test,1);LCD_WritePixel_pic(52,10,gImage_test,2);
//delay5ms_times(20);
//}
LCD_ClearScreen(0x0f);
//LCD_WritePixel_pic(33,10,gImage_test,1);delay5ms_times(500);
LCD_ClearScreen(0);delay5ms_times(2);
//x_LCD_WriteNumber=30;y_LCD_WriteNumber=9;
//LCD_WriteNumberS(99,6,0,15,15,15);
//LCD_WritePixel_pic(5,5,gImage_test,0);//"温度"
//LCD_WriteGB(27,24,GBK[2],15,15,15);
//temp=(unsigned int)array[0]<<8;
//temp=temp|array[1];
//array[3]={"温"};
//LCD_WriteNumberS(temp,6,0,15,15,15,6,0);
//void Find_GB(char *s,unsigned char x, unsigned char y,unsigned char R,unsigned char G,unsigned char B){
Num2String(-12354321,aa,6,3);
//LCD_Write(aa,10,20,15,15,15);
Flash_Words(abcd,1,10,0,255);
//LCD_WriteASC(10, 30,&(ASCII[0][1]),15,15,15);
while(1);}//test
/* LCD_WriteGB(19,4,GB_du,0,9,15);
LCD_WriteGB(7,17,GB_can,3,6,15);
LCD_WriteGB(19,17,GB_kao,3,4,12);
LCD_WriteGB(31,17,GB_dian,2,2,8);
LCD_WriteGB(43,17,GB_ya,2,0,7);
LCD_WriteGB(7,30,GB_chuan,15,6,8);
LCD_WriteGB(19,30,GB_gan,12,6,1);
LCD_WriteGB(31,30,GB_qi,10,4,2);
LCD_WriteGB(43,30,GB_dian,8,2,5);
LCD_WriteGB(55,30,GB_ya,6,1,3);
*/
/*
x_LCD_WriteNumber=33;y_LCD_WriteNumber=6;
LCD_WriteNumber(19,4,0,15,15,15);
x_LCD_WriteNumber=56;y_LCD_WriteNumber=19;
LCD_WriteNumber(19,4,0,15,15,15);
x_LCD_WriteNumber=68;y_LCD_WriteNumber=32;
LCD_WriteNumber(19,4,0,15,15,15);
// LCD_WritePixel(5,5,GB_wen,15,15,15,12,16);
while(1) {
//adctemp=read_adc(1);
//adctemp1=47000*1023/11095*10000/read_adc_times(3,100);
adctemp1=adctemp1_quick;
adctemp2=adctemp2_quick;
//adctemp=adctemp2*adctemp1/1023/100;
adctemp=adctemp2*47000/adctemp1*1023/11095*10000/1023/100;
adctemp1=47000*1023/11095*10000/adctemp1;
//adctemp2=adctemp2/100;
//temperture=(adctemp-660)*589/10+7500+(102300-adctemp)*1500/102300;//m C
//temperture=*(TempABC+0);
for (i=0;i<TempABCAAA*2;i+=2)
{
//if(i>2){ //<Vmax
if(adctemp<*(TempABC+i+1)){
//(Tmax-Tmin)
temperture=*(TempABC+i) - *(TempABC+i-2);
// *(Vnow-Vmin)
temperture=temperture*(adctemp2*adctemp1 - *(TempABC+i-1)*100*1023) ;
// (Vmax-Vmin)
temperture=temperture*10/1023/(*(TempABC+i+1)-*(TempABC+i-1)) +*(TempABC+i-2)*1000;break;
}
//}
}
//adctemp=read_adc(1);
adctemp2=adctemp2/100;
//adctemp=adctemp;
temperture=temperture/10;
x_LCD_WriteNumber=60;y_LCD_WriteNumber=48;
LCD_WriteNumberS((unsigned int)adctemp,6,0,5,15,0,4,4);LCD_WriteNumber(15,6,0,15,15,15);//V_target
x_LCD_WriteNumber=5;y_LCD_WriteNumber=48;
LCD_WriteNumber(17,7,0,15,15,15);LCD_WriteNumber(18,7,0,15,15,15);LCD_WriteNumber(19,7,0,15,15,15);//"AD:"
LCD_WriteNumberS((unsigned int)adctemp2,6,0,15,0,15,4,0);//AD_target
x_LCD_WriteNumber=60;y_LCD_WriteNumber=19;
LCD_WriteNumberS((unsigned int)adctemp1,6,0,0,10,10,4,4);LCD_WriteNumber(15,6,0,15,15,15);//V_ref
x_LCD_WriteNumber=40;y_LCD_WriteNumber=6;
LCD_WriteNumberS(temperture,6,0,15,15,0,4,3);LCD_WriteNumber(16,6,0,15,15,15);//temperture
LCD_Temperture_Pic((unsigned int)temperture);///200);
adctemp1_quick=read_adc_times(3,1000)/10;
adctemp2_quick=read_adc_times(1,1000)/10;
x_LCD_WriteNumber=60;y_LCD_WriteNumber=48;
LCD_WriteNumberS((unsigned int)adctemp,6,0,0,0,0,4,4);//V_target
x_LCD_WriteNumber=5;y_LCD_WriteNumber=48;
LCD_WriteNumber(17,7,0,15,15,15);LCD_WriteNumber(18,7,0,15,15,15);LCD_WriteNumber(19,7,0,15,15,15);//"AD:"
LCD_WriteNumberS((unsigned int)adctemp2,6,0,0,0,0,4,0);//AD_target
x_LCD_WriteNumber=60;y_LCD_WriteNumber=19;
LCD_WriteNumberS((unsigned int)adctemp1,6,0,0,0,0,4,4);//V_ref
x_LCD_WriteNumber=40;y_LCD_WriteNumber=6;
LCD_WriteNumberS(temperture,6,0,0,0,0,4,3);//temperture
}
return 0;
};
*/
/*
while(1){unsigned char i,j,k=0,rise=1;
LCD_init();
delay5ms();
LCD_ClearScreen(255);//delay5ms_times(2);
LCD_ClearScreen(0);//delay5ms_times(2);
while(1) {//k++;if(k==3)k=1;
//for(j=128;j>0;j-=3){
// for(i=0;i<3;i++){
//LCD_WritePixel_pic(40*i+j,10,39+40*i+j,51,gImage_test,i);
LCD_WritePixel_pic(12,4,gImage_test,1);
delay5ms_times(200);
// }
//}
}
while(1){}
}
*/
return 1;
}
/*
void Led_test(void){
static long int showtime=1;static unsigned char showtime_b=0;
DDRD=0xff;DDRC=0xFF;
if(showtime_b==0){
if(showtime==0x10000){showtime_b=1;}else{showtime=showtime<<1;}
}
else if(showtime_b==1){
if(showtime==0x01){showtime_b=0;}else{showtime=showtime>>1;}
}
PORTD=showtime/512;
PORTC=(showtime & 0x01F8)>>3;
PORTB=(PORTB & 0x1F) | ((showtime & 0x0007)<<5);
}
unsigned char Get_AD_Key(void){
unsigned char Key=255,Keys,input;//temp_ad,;
for(input=0;input<8;input++){
if(read_adc(input)>500){
if(Key==255){Key=0;}
Key+=input;
Keys++;
}
}
Key=Key/Keys;
return Key;
}
*/
/*void temp_shuzu(unsigned char R,unsigned char G,unsigned char B){
unsigned char a[3][3];
unsigned char *p;unsigned char i,j;unsigned char ii=4,jj=4;
p=a[0]; //原代码中p初始化错误【已修改】
for (i=0;i<ii; i++)
for (j=0; j<jj; j++) //原代码中多了一个分号【已修改】
*(p+i*jj+j)=i*jj+j;
for(i=0;i<ii;i++){
for (j=0; j<jj;j++){
if(j==0){y_LCD_WriteNumber+=10;}
LCD_WriteNumberS(*(p+i*jj+j),8,0,R,G,B);
}
x_LCD_WriteNumber=0;
}
//x_LCD_WriteNumber=3*8;
if(y_LCD_WriteNumber>67){y_LCD_WriteNumber=0;}
if(x_LCD_WriteNumber>98){x_LCD_WriteNumber=0;}
}
*/
unsigned int read_adc(unsigned char adc_input){
ADMUX=adc_input|ADC_VREF_TYPE;
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}
unsigned long int read_adc_times(unsigned char adc_input,unsigned int adc_times) {
unsigned long int temp=0;unsigned int times;
for (times=0;times<adc_times;times++){
temp+=read_adc(adc_input);
}
return temp;
}
void LCD_Temperture_Pic(unsigned int Tempertur){
unsigned int x,y;
unsigned int Temp_pic;
if(Tempertur<5001)
{
Temp_pic=(unsigned long int)Tempertur*98/5000;
for(y = 60; y < 65; y ++){
for(x = 0; x < Temp_pic; x ++){
LCD_DrawPoint(x,y,1,3+(65-y)*2,0+(65-y)*3);
}
for(x = Temp_pic+1; x < 98; x ++){
LCD_DrawPoint(x,y,0,0,0);
}
}
}
else if((Tempertur>5001)&&(Tempertur<10001))
{
Temp_pic=(unsigned long int)Tempertur*98/10000;
for(y = 60; y < 65; y ++){
for(x = 0; x < Temp_pic; x ++){
LCD_DrawPoint(x,y,1,3+(65-y)*2,0+(65-y)*3);
}
for(x = Temp_pic+1; x < 98; x ++){
LCD_DrawPoint(x,y,0,0,0);
}
}
}
else{;}
}
/*void WRITE_AD9850_div_p(unsigned long int freq,unsigned char phase){
unsigned char i;
Con_FQ_UD_Low();
data_OUT=phase & 0xF8;
Con_W_CLK_High();
Con_W_CLK_Low();
Con_FQ_UD_High();
for(i=32;i>0;i-=8){
data_OUT=(freq>>i) & 0x000000ff; //
Con_W_CLK_High();
Con_W_CLK_Low();
}
Con_FQ_UD_High(); //
Con_FQ_UD_Low();
}*/
void WRITE_AD9850(void){
unsigned char i;
Con_FQ_UD_Low();
//CON_word[0]=CON_word[0]&0xFC; //
for(i=0;i<5;i++){
data_OUT=CON_word[i]; //
Con_W_CLK_High();
Con_W_CLK_Low();
}
Con_FQ_UD_High(); //
}
/*
Num2String(100000,aa,6,3);
LCD_Write_Text(aa,30,16,15,15,15);
Num2String(2500,aa,4,4);
LCD_Write_Text(aa,30,29,15,15,15);
Num2String(450,aa,3,2);
LCD_Write_Text(aa,30,42,15,15,15);
LCD_Write_Text(sanjiaowave,5,54,15,15,8);
LCD_Write_Text(sanjiaowave,25,54,15,15,8);
delay_Long(50);
LCD_PaintPixel (10,0,36,14,0,0,0); //白色底
LCD_Write_Text(zhengxian,11,1,2,8,5);//重写“正弦”
delay_Long(5);
LCD_PaintPixel (36,0,62,14,8,3,4);//转位置,底色
LCD_Write_Text(fangbo,37,1,2,8,10);//重写“方波”
*/
if(code[3]==~code[2]){
if(code[2]==REMOTE_CODE_ENTITY_DOWN ||code[2]==REMOTE_CODE_PPC_DOWN)
{i-=(21475*k);WRITE_AD9850_div_s(i,0);}//down
else if(code[2]==REMOTE_CODE_ENTITY_UP ||code[2]==REMOTE_CODE_PPC_UP)
{i+=(21475*k);WRITE_AD9850_div_s(i,0);}//up
else if(code[2]==REMOTE_CODE_ENTITY_LEFT||code[2]==REMOTE_CODE_PPC_LEFT)
{k/=10;}//left
else if(code[2]==REMOTE_CODE_ENTITY_RIGHT||code[2]==REMOTE_CODE_PPC_RIGHT)
{k*=10;}//right
else{PORTB=code[2];delay_ms(1000);PORTB=0;delay_ms(1000);}
code[2]=0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -