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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4203|回復: 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在线播放 | 黄色一级免费看 | 欧美专区在线观看 | 成人午夜视频在线观看 | 日日想夜夜操 | 亚洲国产精品成人久久久 | 久久久久久久一区 | 精品一区二区三区在线观看 | 国产成人精品久久二区二区91 | 亚洲精品一区二区 | 国产精品国产精品国产专区不片 | 日本在线一区二区 | 成人影院av | 欧美电影一区 | 欧美日韩一卡二卡 | 亚洲欧美中文日韩在线v日本 | 欧美日韩福利视频 | 国产2区 | 91精品国产91久久久久久 | 本地毛片| 久久久久久久久久影视 | 五月天婷婷久久 | 天天综合网天天综合 | www.久久国产精品 | 日韩在线视频一区 | 韩日一区二区三区 | 亚洲精品第一国产综合野 | 日韩综合在线 | 久久av资源网 | 日韩美女一区二区三区在线观看 | 狠狠夜夜 | 精品自拍视频在线观看 | 久久小视频 | 中文字幕亚洲欧美日韩在线不卡 | 婷婷激情综合 | 欧美亚洲一区二区三区 | 91看片视频|