⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd._c

📁 mega128+VS1003做的mp3的程序 可以用WINAVR编译
💻 _C
📖 第 1 页 / 共 2 页
字号:
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.year;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 show_lcd(6, ii, 16, 2, &DotTbl16[0],0); //年
 ii += 16;

 temp = timebuf.month;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.month;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 show_lcd(6, ii, 16, 2, &DotTbl16[32],0); //月
 ii += 16;
 
  temp = timebuf.date;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.date;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, 129, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 show_lcd(6, ii, 16, 2, &DotTbl16[2*32],0); //日
}

void show_set_tiem(uchar type)
{
 //ascii
 uchar ii; 
 uint  temp;
 
 show_clear();
 ii = 64;
 
 temp = timebuf.hour;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 0) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.hour;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 0) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ':';
 temp -= 32;
 temp *= 16;
 show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = timebuf.min;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 1) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.min;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 1) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ':';
 temp -= 32;
 temp *= 16;
 show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = timebuf.sec;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
  if(type == 2) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.sec;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
  if(type == 2) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
}
 //下面开始显示年
 void show_set_date(uchar type)
{
 //ascii
 uchar ii; 
 uint  temp;
 
 show_clear();
 ii = 40;
 
 temp = '2';
 temp -= 32;
 temp *= 16;
 if(type == 0) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
  
 temp = '0';
 temp -= 32;
 temp *= 16;
if(type == 0) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = timebuf.year;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
if(type == 0) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.year;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
if(type == 0) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 show_lcd(3, ii, 16, 2, &DotTbl16[0],0); //年
 ii += 16;

 temp = timebuf.month;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
if(type == 1) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.month;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
if(type == 1) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 show_lcd(3, ii, 16, 2, &DotTbl16[32],0); //月
 ii += 17;
 
 temp = timebuf.date;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
if(type == 2) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = timebuf.date;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
if(type == 2) show_lcd(3, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(3, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 show_lcd(3, ii, 16, 2, &DotTbl16[2*32],0); //日
}
//下面开始设置星期
 void show_set_week(void)
{
 //ascii
 uchar ii; 
 uint  temp;
 
 show_clear();
 ii = 64;
 
 show_lcd(3, ii, 16, 2, &DotTbl16[9*32],0);//星期
 ii += 20;
 show_lcd(3, ii, 16, 2, &DotTbl16[10*32],0);//星期
 ii += 20;
 
 if(timebuf.week == 0x07) show_lcd(3, ii, 16, 2, &DotTbl16[2*32],1);//星期
   else{
        temp = timebuf.week;
		temp += 10;
		show_lcd(3, ii, 16, 2, &DotTbl16[temp*32],1);//星期
	   }
}  
 

void show_tiem_out(struct time *ps, uchar page, uchar type)
{
 //ascii
 uchar ii; 
 uint  temp;
 
 ii = 64;
 
 temp = ps->hour;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 0) show_lcd(page, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = ps->hour;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 0) show_lcd(page, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ':';
 temp -= 32;
 temp *= 16;
 show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ps->min;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 1) show_lcd(page, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = ps->min;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
 if(type == 1) show_lcd(page, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ':';
 temp -= 32;
 temp *= 16;
 show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ps->sec;
 temp >>= 4;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
  if(type == 2) show_lcd(page, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = ps->sec;
 temp &= 0x000f;
 temp += '0';
 temp -= 32;
 temp *= 16;
  if(type == 2) show_lcd(page, ii, 8, 2, &nAsciiDot[temp],1);
   else show_lcd(page, ii, 8, 2, &nAsciiDot[temp],0);
}
//录放音时间
void play_record_tiem(uint data)
{
 //ascii
 uchar ii; 
 uchar pp;
 uint  temp;
 uint  time;
 
 ii = 64;
 time = data;
 pp = time/3600;
 time %= 3600;
 
 temp = pp/10;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = pp%10;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ':';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 pp = time/60;
 time %= 60;
 
 temp = pp/10;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = pp%10;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 temp = ':';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;
 
 pp = time;
 temp = pp/10;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
 ii += 8;		 
 
 temp = pp%10;
 temp += '0';
 temp -= 32;
 temp *= 16;
 show_lcd(6, ii, 8, 2, &nAsciiDot[temp],0);
}

⌨️ 快捷键说明

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