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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3326|回復: 0
打印 上一主題 下一主題
收起左側

12864液晶程序(書上的—我改了一下我的實驗板才可以用)

[復制鏈接]
跳轉到指定樓層
樓主
ID:76556 發表于 2015-4-10 01:53 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <reg51.h>
#include <intrins.h>
#include <stdlib.h>       
#define uchar unsigned char
#define uint  unsigned int
/* 端口定義*/
#define LCD_data  P0             //數據口
sbit LCD_RS  =  P1^0;            //寄存器選擇輸入
sbit LCD_RW  =  P1^1;            //液晶讀/寫控制
sbit LCD_EN  =  P1^5;            //液晶使能控制
sbit LCD_PSB =  P3^7;            //串/并方式控制
sbit wela    =  P2^6;
sbit dula    =  P2^7;
uchar dis1[10];
uchar code dis2[] = {"www*txmcu*com"};
uchar code dis3[] = {"天祥電子"};
uchar code dis4[] = {"--------"};
void delay_1ms(uint x)
{
uint i,j;
for(j=0;j<x;j++)  
        for(i=0;i<110;i++);
}               
/*******************************************************************/
/*                                                                 */
/*寫指令數據到LCD                                                  */
/*RS=L,RW=L,E=高脈沖,D0-D7=指令碼。                             */
/*                                                                 */
/*******************************************************************/
void write_cmd(uchar cmd)
{                          
    LCD_RS = 0;
    LCD_RW = 0;
    LCD_EN = 0;
    P0 = cmd;
        delay_1ms(5);
    LCD_EN = 1;
        delay_1ms(5);
    LCD_EN = 0;  
}
/*******************************************************************/
/*                                                                 */
/*寫顯示數據到LCD                                                  */
/*RS=H,RW=L,E=高脈沖,D0-D7=數據。                               */
/*                                                                 */
/*******************************************************************/
void write_dat(uchar dat)
{                          
    LCD_RS = 1;
    LCD_RW = 0;
    LCD_EN = 0;
    P0 = dat;
        delay_1ms(5);
    LCD_EN = 1;
        delay_1ms(5);
    LCD_EN = 0;  
}
/*********************************************************/
/*                                                       */
/* 設定顯示位置                                          */
/*                                                       */
/*********************************************************/
void lcd_pos(uchar X,uchar Y)
{                          
   uchar  pos;
   if (X==0)
     {X=0x80;}
   else if (X==1)
     {X=0x90;}
   else if (X==2)
     {X=0x88;}
   else if (X==3)
     {X=0x98;}
   pos = X+Y ;  
   write_cmd(pos);     //顯示地址
}
void makerand()
{
        uint ran;
        ran=rand();
        dis1[0]=ran/10000+0x30;       
        dis1[1]=ran%10000/1000+0x30;
        dis1[2]=ran%1000/100+0x30;
        dis1[3]=ran%100/10+0x30;
        dis1[4]=ran%10+0x30;
        ran=rand();
        dis1[5]=ran/10000+0x30;       
        dis1[6]=ran%10000/1000+0x30;
        dis1[7]=ran%1000/100+0x30;
        dis1[8]=ran%100/10+0x30;
        dis1[9]=ran%10+0x30;

}
/*******************************************************************/
/*                                                                 */
/*  LCD初始化設定                                                  */
/*                                                                 */
/*******************************************************************/
void lcd_init()
{
    LCD_PSB = 1;         //并口方式  
    write_cmd(0x30);      //基本指令操作
    delay_1ms(5);
    write_cmd(0x0C);      //顯示開,關光標
    delay_1ms(5);
    write_cmd(0x01);      //清除LCD的顯示內容
    delay_1ms(5);
}
/*********************************************************/
/*                                                                                                                 */
/* 主程序                                                                                    */
/*                                                       */
/*********************************************************/
main()
{
    uchar i;
    wela=0;
        dula=0;
    delay_1ms(10);                 //延時
    lcd_init();                 //初始化LCD            
    lcd_pos(1,0);             //設置顯示位置為第二行的第1個字符
    i = 0;
    while(dis2[i] != '\0')
    {
       write_dat(dis2[i]);      //顯示字符
       i++;
    }
        lcd_pos(2,0);             //設置顯示位置為第三行的第1個字符
    i = 0;
    while(dis3[i] != '\0')
    {
       write_dat(dis3[i]);      //顯示字符
       i++;
    }
        lcd_pos(3,0);             //設置顯示位置為第四行的第1個字符
    i = 0;
    while(dis4[i] != '\0')
    {
       write_dat(dis4[i]);      //顯示字符
       i++;
    }
    while(1)
        {
                lcd_pos(0,0);   //設置顯示位置為第一行的第1個字符
                makerand();
                for(i=0;i<10;i++)
                {
                    write_dat(dis1[i]);
                }
        }
}



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一级片在线免费播放 | 国产成人福利在线观看 | 羞羞的视频免费观看 | 国产日韩欧美 | 99一区二区| 日韩欧美国产一区二区三区 | 欧美日韩精品 | 久久免费小视频 | 国产一级视频在线播放 | 亚洲国产精品成人无久久精品 | 欧美视频一区二区三区 | 国产一区二区三区四区在线观看 | 美女视频h | 亚洲免费婷婷 | 亚洲天天干 | 久久久久久久久久久久久久av | 黄色在线免费网站 | 天天干夜夜拍 | www.成人.com| 美日韩免费视频 | 成人精品| 欧美日韩一区二区三区四区 | 久久精品久久久久久 | 一区二区三区四区在线视频 | 一区二区三区四区免费视频 | 一区二区免费在线 | 99福利在线观看 | 久久久亚洲 | 国产资源在线视频 | 成人精品一区亚洲午夜久久久 | 久久久精品综合 | 免费福利视频一区二区三区 | 国产精品视频不卡 | 日韩欧美专区 | 精品久久久久国产 | 国产成人99久久亚洲综合精品 | 日本三级在线网站 | 成人在线免费视频 | 日韩aⅴ片 | 久草视频在线播放 | 小川阿佐美pgd-606在线 |