久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3747|回復(fù): 0
收起左側(cè)

C語(yǔ)言:51+PIC單片機(jī)二合一的1602液晶顯示-歡迎+時(shí)鐘

[復(fù)制鏈接]
ID:103513 發(fā)表于 2016-1-17 00:06 | 顯示全部樓層 |閱讀模式

//-----------------------------------------------------------------------------------------------
//來(lái)個(gè)猛一點(diǎn)的,顯示歡迎界面,之后進(jìn)入當(dāng)前日期,時(shí)鐘顯示
//我前前后后花了10來(lái)天才調(diào)成功,沒(méi)得問(wèn),汗死了,網(wǎng)上又沒(méi)資料供參考
//51+PIC通殺:時(shí)鐘
#define ww
#ifdef ww
#include<reg52.h>
#define uchar unsigned char      
#define uint unsigned int
uchar code table[]="  hello!jasper  ";      
uchar code table1[]="   xm.dabiao    ";        
uchar code aa[]=" 2018-01-04 MON ";      
uchar code bb[]="    09:59:56    ";        
sbit lcden=P3^4; //液晶使能位
sbit lcdrs=P3^5; //液晶RS,數(shù)據(jù)/命令切換選擇位

sbit dula=P2^6;      //數(shù)碼管關(guān)斷
sbit wela=P2^7;
sbit FM=P2^3;
#endif
#ifdef PIC
#include <pic.h>
__CONFIG(0X3B31);
#define uchar unsigned char
#define uint unsigned int
const uchar table[]="  hello! jasper ";   
const uchar table1[]="   xm.dabiao    ";
const uchar aa[]="  2012-01-04 MON ";     
const uchar bb[]="    09:59:56    ";      
#define lcden RA3
#define lcdrs RA5
#define lcdrw RA4
#define P0 PORTD
#define FM RE0
#endif
uchar num,count;
char miao=56,fen=59,shi=9;
void delay(uint z)     
{
  uint x,y;
  for(x=z;x>0;x--)
   for(y=110;y>0;y--);
}
void write_com(uchar com)
{
  lcdrs=0;   
  P0=com;
  delay(5);   
  lcden=1;   
  delay(5);
  lcden=0;
}
void write_data(uchar date)  
{
  lcdrs=1;
  P0=date;
  delay(5);
  lcdrs=1;
#ifdef PIC
  lcdrw=0;
#endif
  lcden=1;  
  delay(5);
  lcden=0;
}
void lcd_enable(void)   
{
lcdrs = 0;      
#ifdef PIC
lcdrw = 0;   
#endif
lcden = 0;      
delay(5);        
lcden = 1;         
}
void delayzd(uint zz)  
{
  uint xz,yz;
  for(xz=zz;xz>0;xz--)
   for(yz=110;yz>0;yz--);
}
void write_comzd(uchar comz)
{
  lcdrs=0;   
  P0=comz;
  delayzd(5);   
  lcden=1;   
  delayzd(5);
  lcden=0;
}
void write_datazd(uchar dataz)
{
  lcdrs=1;
  P0=dataz;
  delayzd(5);
  lcdrs=1;
#ifdef PIC
  lcdrw=0;
#endif
  lcden=1;
  delayzd(5);
  lcden=0;
}
void write_sfm(uchar adda,char datez)   
{                           
  char shi,ge;         
  shi=datez/10;
  ge=datez%10;
  write_comzd(0x80+0x40+adda);
  write_datazd(0x30+shi);     
  write_datazd(0x30+ge);      
}
void lcd_enablezd(void)   
{
lcdrs = 0;                  
#ifdef PIC
lcdrw = 0;                    
#endif
lcden = 0;                     
delayzd(5);                  
lcden = 1;                  
}
void init(void)
{
#ifdef ww
   dula=0;         
  wela=0;
  lcden=0;  
  write_com(0x38);     
  write_com(0x0c);   
  write_com(0x06);   
  write_com(0x01);  
// write_com(0x80);
  write_com(0x80+0x10);
#endif
#ifdef PIC
  TRISA=0x00;PORTA=0XF0;
  TRISD=0x00;PORTD=0XFF;
   ADCON1=0X07;  
  lcd_enable();   
  write_com(0x38);      
  lcd_enable();   
  write_com(0x0e);   
  lcd_enable();  
  write_com(0x06);   
  lcd_enable();   
  write_com(0x01);  
  lcd_enable();   
// write_com(0x80);
  write_com(0x80+0x10);
#endif  
}
void hello(void)
{
  for(num=0;num<16;num++)      
   {
     write_data(table[num]);
     delay(10);
   }
  write_com(0x80+0x51);      
  for(num=0;num<16;num++)     
   {
     write_data(table1[num]);
     delay(10);
   }      
  for(num=0;num<16;num++)
  {
    write_com(0x18);  
    delay(160);  
  }
  delay(1800);
}
void pingxian(void)
{
  uchar num_x;
  delay(500);
  write_com(0x01);
  write_com(0x80);

  for(num_x=0;num_x<16;num_x++)      
   {
     write_data(aa[num_x]);
     delay(20);
   }
  write_com(0x80+0x40);     
  delay(5);
  for(num_x=0;num_x<16;num_x++)     
   {
     write_data(bb[num_x]);
     delay(20);
   }
  delay(300);
}
void zd(void)
{
#ifdef ww
  TMOD=0x01;   
  TH0=(65536-50000)/256;  
  TL0=(65536-50000)%256;
  EA=1;      
  ET0=1;   
  TR0=1;  
#endif
#ifdef PIC
INTCON=0xc0;  
PIE1=0x01;   
T1CON=0x01;   
TMR1L=(65536-50000)%256;
TMR1H=(65536-50000)/256;
#endif
}
void main()
{
  init();
  hello();  
  pingxian();
  zd();
  while(1)
  { }
}
void timego(void)
{
if(count==19)
{
     count=0;
     miao++;
     if(miao==60)
     {
       miao=0;
       fen++;
       if(fen==60)
    {
         fen=0;
         shi++;
         if(shi==24)      
         {
           shi=0;
         }
         write_sfm(4,shi);      
       }
       write_sfm(7,fen);     
     }
     write_sfm(10,miao);         
}
}

#ifdef ww
void timer0() interrupt 1      
{
  TH0=(65536-50000)/256;
  TL0=(65536-50000)%256;
  count++;
  timego();
}
#endif
#ifdef PIC
void interrupt time0(void)
{
  TMR1IF=0;
  TMR1L=(65536-50000)%256;
  TMR1H=(65536-50000)/256;
  count++;
  //if(count==19)P0=0x02;
  timego();         
}
#endif











回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 嫩草最新网址 | 国产999精品久久久久久绿帽 | 成人av免费看 | 亚洲女人的天堂 | 午夜精品 | 四色永久| 中文字幕1区2区3区 亚洲国产成人精品女人久久久 | www.中文字幕av | 成人中文字幕在线观看 | 国产日韩欧美一区 | 亚洲视频中文字幕 | 欧美亚洲视频 | 国产精品久久久久久久免费观看 | 99re国产 | 国产精品久久久久久久久久久免费看 | 国产精品免费一区二区三区四区 | 亚洲三区在线观看 | 一级毛片免费 | 国产一级在线观看 | 成人久久18免费网站 | 蜜桃传媒一区二区 | 日韩播放 | 日本不卡一区 | 在线观看成人小视频 | 超碰精品在线观看 | 搞黄视频免费看 | 午夜精品影院 | 久久久久久久av麻豆果冻 | 日干夜干 | 国色天香成人网 | 成人精品毛片 | 免费黄色的网站 | 一区二区三区四区电影视频在线观看 | 中文字幕在线一区二区三区 | av网站在线看 | 日本视频免费 | 久色网 | 午夜精品一区二区三区在线 | 日本免费一区二区三区视频 | 日韩另类 | 成人在线视频网站 |