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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于STC89C52的無字庫LCD12864不顯示,大神幫忙看看什么問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:387860 發表于 2018-8-25 10:38 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
網上下了好多測試程序,都顯示不了,無字庫的12864,分屏的,大神給幫忙看看,程序如下:#include <reg52.h>
#include"intrins.h"
#define  uchar unsigned char
#define  uint  unsigned  int
#define databus P0 //數據口
sbit RS=P2^6;  //寫指令/數據
sbit RW=P2^5; //讀/寫
sbit EN=P2^7;  //使能
sbit CS1=P3^2;//片選1,控制左半屏,高電平有效
sbit CS2=P3^3;//片選1,控制右半屏,高電平有效
void delay(uchar  ms)  //延遲
{
   uchar   i;
   uchar   j;
   for(i=0;i<100;i++)
   for(j=0;j<ms;j++);
}

void busy()        //忙檢查
{
   P0=0x00;
   RS=0;
   RW=1;
   EN=1;
   while(P0&0x80);
   EN=0;
}
void write_cmd(uchar value)//寫指令
{
   busy();
   RS=0;
   RW=0;
   EN=1;
   databus=value;
   EN=1;
   delay(5);
   EN=0;

}
void write_data(uchar value)//寫數據
{
   busy();
   RS=1;
   RW=0;
   EN=1;
   databus=value;
   EN=1;
   delay(5);
   EN=0;

}
void set_page(uchar page)//設置頁
{
   page=0xb8||page;
   write_cmd(page);

}
void set_line(uchar startline)//設置行
{
   startline=0xc0|startline;
   write_cmd(startline);

}
void set_column(uchar column)//設置列
{
   column=column&0x3f;
   column=0x40|column;
   write_cmd(column);

}

void set_onoff(uchar onoff)//開關顯示
{
   onoff=0x3e|onoff;
   write_cmd(onoff);

}

void slectscreen(uchar screen)//選擇屏幕
{
   switch(screen)
   {
    case 0:CS1=0;CS2=0;break;
    case 1:CS1=0;CS2=1;break;
    case 2:CS1=1;CS2=0;break;
    default:break;
   }

}

void clearscreen(uchar screen) //清屏
{
   uchar i,j;
   slectscreen(screen);
   for(i=0;i<8;i++)
   {
    set_page(i);
    set_column(0);
    for(j=0;j<64;j++)
    {
     write_cmd(0x00);
    }
   }

}

void init()        //初始化
{
   busy();
   slectscreen(0);
   set_onoff(0);
   slectscreen(0);
   set_onoff(1);
   clearscreen(0);
   set_line(0);

}

void display(uchar ss,uchar page,uchar column,uchar *p)        //顯示函數
{
   uchar i;
   slectscreen(ss);
   set_page(page);
   set_column(column);
   for(i=0;i<16;i++)
   {
    write_data(p[i]);
   }
   set_page(page+1);
   set_column(column);
   for(i=0;i<16;i++)
   {
    write_data(p[i+16]);
   }
}
uchar code  huan[]=
{0x00,0x08,0x18,0x28,0x08,0x08,0xE8,0x0F,0x18,0x20,0x1C,0x64,0x84,0x44,0x24,0x14,
0x00,0x20,0x60,0x30,0x18,0x06,0x03,0x0C,0x10,0x20,0x2C,0x43,0x43,0x4C,0x10,0x20,
};
uchar code  ying[]=
{0x00,0x00,0xFC,0x04,0x04,0x04,0xFC,0x02,0x02,0x04,0xFC,0x00,0x04,0xCE,0x41,0x40,
0x00,0x40,0x43,0x44,0x42,0x40,0x5F,0x40,0x41,0x42,0x47,0x40,0x20,0x1F,0x20,0x40,
};
void main()        //主函數
{
init();
clearscreen(0);
while(1)
{
set_line(1);
display(1,0,2*16,huan);
display(1,0,3*16,ying);
}
}



QQ圖片20180825100659.jpg (41.29 KB, 下載次數: 106)

接線圖

接線圖

webwxgetmsgimg (5).jpg (302.64 KB, 下載次數: 103)

12864

12864

webwxgetmsgimg (6).jpg (214.57 KB, 下載次數: 132)

實際顯示

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

使用道具 舉報

沙發
ID:387860 發表于 2018-8-25 15:50 | 只看該作者
第一次發帖,沒人回復啊,是需要懸賞?
回復

使用道具 舉報

板凳
ID:97554 發表于 2018-8-25 16:20 | 只看該作者
3腳V0對地接個電阻調下對比度。另外LCD不同廠家生產的時序不一定一樣。

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:97554 發表于 2018-8-25 16:35 | 只看該作者

這個是官網找的PDF,上邊有例程,供參考

DS12864-10說明書V11.pdf

1.03 MB, 下載次數: 56

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

5#
ID:384109 發表于 2018-8-25 17:42 | 只看該作者
需要調節對比度的,要看你的學習板的電路該如何和12864連接,學習板的電路要和12864對應上

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

6#
ID:96682 發表于 2018-8-26 00:35 | 只看該作者
明顯是開發板端口設置問題,這時液晶屏并未與單片機有關聯,只是背光得電發光而已

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

7#
ID:387860 發表于 2018-8-29 21:34 | 只看該作者
多謝大家了,端口也檢查了,電位器也加了,還是不行,直接換了帶字庫的屏,沒有片選的,新手入門,帶片選的太難了

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

8#
ID:527430 發表于 2019-5-5 10:07 | 只看該作者
這個問題我剛剛好知道,在接口正確的情況下,在LCD屏的接口第1、3、18腳接一顆5.1K電位器。就是說電位器1腳接GND,2腳接V0,3腳接VOUT;原理就是LCD需要一個負電壓才能點亮,而屏不需要直接給負壓,給個電位器就行了。
回復

使用道具 舉報

9#
ID:535176 發表于 2019-8-6 14:17 | 只看該作者
yekai_yh 發表于 2018-8-29 21:34
多謝大家了,端口也檢查了,電位器也加了,還是不行,直接換了帶字庫的屏,沒有片選的,新手入門,帶片選的 ...

帶字庫的怎么弄啊。求解
回復

使用道具 舉報

10#
ID:535176 發表于 2019-8-6 14:55 | 只看該作者
yekai_yh 發表于 2018-8-25 15:50
第一次發帖,沒人回復啊,是需要懸賞?

咱倆情況一樣哎
回復

使用道具 舉報

11#
ID:959867 發表于 2021-9-4 08:40 | 只看該作者
今天遇到了同樣的問題,在stc90c51上能跑通的程序,換上stc89c51就跑不通,通過排除法發現卡在12864初始化清屏這一塊,直接卡死了?反正后續程序不跑了,把這一段屏蔽掉后續就能跑.....
回復

使用道具 舉報

12#
ID:420213 發表于 2021-9-4 09:26 | 只看該作者
不關你片不片選的事,你要寫好字庫取模,沒字庫的他不會內置取模好的字庫給你,要自己做模,然后跟程序一并燒錄進單片機的flash里面才行的。
回復

使用道具 舉報

13#
ID:959867 發表于 2021-9-4 09:33 | 只看該作者
elic885 發表于 2021-9-4 08:40
今天遇到了同樣的問題,在stc90c51上能跑通的程序,換上stc89c51就跑不通,通過排除法發現卡在12864初始化 ...

更新進展:應該是程序存儲器空間不足了,刪減一些不必要的函數定義就好了。挺奇怪的,存儲空間不足也能寫進去?
回復

使用道具 舉報

14#
ID:646535 發表于 2023-3-23 22:29 | 只看該作者
好奇心強 發表于 2019-5-5 10:07
這個問題我剛剛好知道,在接口正確的情況下,在LCD屏的接口第1、3、18腳接一顆5.1K電位器。就是說電位器1腳 ...

謝謝,解決了我的問題
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产免费自拍 | 成人欧美一区二区三区在线播放 | 天天搞天天操 | 午夜视频大全 | 天天爽天天干 | 四虎永久免费黄色影片 | 久久久久久久av麻豆果冻 | 夜夜爽99久久国产综合精品女不卡 | 一区二区三区四区在线 | 国产成人福利 | 欧美一区二区三区精品 | 亚洲黄色av网站 | 喷水毛片| 风间由美一区二区三区在线观看 | 国产精品99免费视频 | 国产精品国产精品国产专区不蜜 | 黄 色 毛片免费 | 亚洲乱码国产乱码精品精98午夜 | 日韩欧美在线观看 | 999国产精品视频免费 | 日韩精品免费 | 午夜不卡一区二区 | 精品免费国产一区二区三区 | 国产日韩欧美激情 | 四虎影院在线观看av | 日韩免费毛片视频 | 91精品久久久久久久久久小网站 | 国产精品观看 | 国产精品视频一区二区三区不卡 | 97久久超碰 | 欧美性生交大片免费 | 羞羞的视频网站 | 国产成人综合一区二区三区 | 自拍偷拍小视频 | 99在线免费观看 | 一区中文字幕 | 一区二区三区中文字幕 | 精品国模一区二区三区欧美 | 免费成人午夜 | 1区2区视频 | 免费成人国产 |