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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

OCMJ5X10b顯示器驅動程序問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:147062 發表于 2016-11-9 17:07 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本人小白,最近利用點業余時間和手頭的一點資源學習一下單片機,過程中遇到點問題,請高手幫忙解決一下。在此先謝謝各位。

硬件:STC89c51RC單片機最小系統,10K電位器,OCMJ5X10b顯示器
程序:(程序是拷貝的網上的,自己改了要顯示的字,問題是只能顯示一個“中”字,后面的不能顯示,修改了XY位置也沒變化)
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define dat P1
sbit busy_ocmj5=P0^1;//忙閑標志
sbit req_ocmj5=P0^0;//使能


unsigned char show[]={0x36,0x30,0x1b,0x0a,0x28,0x2b,0x23,0x51};
int i;
void xesj_ocmj(uchar s)//寫字子程序
{
dat=0xff;
req_ocmj5=0;//初始化使能
busy_ocmj5=1;
while(busy_ocmj5);
dat=s;//發送數據
req_ocmj5=1;//
_nop_();//使能腳延時
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
req_ocmj5=0;

}
void main()
{
xesj_ocmj(0xf4);//清屏指令
xesj_ocmj(0xf0);//顯示漢字指令
xesj_ocmj(0x10);//X坐標
xesj_ocmj(0x10);//Y坐標


  
xesj_ocmj (show[0]);
xesj_ocmj (show[1]);
xesj_ocmj (show[2]);
xesj_ocmj (show[3]);
  _nop_();//
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
xesj_ocmj(0x10);//
  xesj_ocmj(0x10);//
xesj_ocmj (show[4]);
xesj_ocmj (show[5]);
xesj_ocmj (show[6]);
xesj_ocmj (show[7]);
_nop_();//
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  while(1);
//
}
關于OCMJ5X10b的一點介紹:
         OCMJ5X10是160×80點陣的中文圖文液晶圖形顯示器模塊。該模塊的內部由于含有國標一級簡體字庫,使得漢字的顯示異常方便;同時,該模塊與單片機的硬件接口除數據總線外,僅使用了REQ/BUSY兩根握手信號線,簡化了與單片機的硬件接口電路設計。上述特點對軟件、硬件資源均十分緊張的單片機系統來說是十分重要的。OCMJ5X10 中文模塊所有的設置初始化工作都是在上電時自動完成的,實現了“即插即用”;同時,保留了一條專用的復位線供用戶選擇使用,可對工作中的模塊進行軟件或硬件強制復位。規劃整齊的10個用戶接口命令代碼,非常容易記憶。標準用戶硬件接口采用REQ/BUSY 握手協議,簡單可靠。
        OCMJ5X10模塊與CPU的接口除了使用DB0~DB7口8根數據線外,僅使用了REQ和BUSY兩根控制線,構成請求/應答(REQ/BUSY)握手方式,省略了傳統模塊接口方式的片選、讀寫控制、指令/數據選擇、使能控制等控制線,從而使硬件接口及軟件時序變得非常簡單。在硬件資源十分緊張的應用系統中,也可采用REQ單線延時控制方式,從而把硬件資源占用降至最低。接口協議如下:當BUSY線為高電平時(BUSY =1),表示模塊忙于內部處理,不能接收用戶命令;而BUSY為低電平時(BUSY =0),表示模塊空閑,等待接收用戶命令。CPU可在BUSY為低后的任意時刻開始發送命令。首先,把用戶命令的當前字節放到數據線上,接著發送高電平REQ 信號,通知模塊,請求處理當前數據線上的命令或數據。模塊在收到外部的REQ高電平信號后,立即讀取數據線上的命令或數據,同時將應答線BUSY變為高電平,表明模塊已收到數據并正在忙于對此數據的內部處理。此時,用戶對模塊的寫操作已經完成,可以撤消數據線上的信號并可做模塊顯示以外的其它工作,也可不斷地查詢BUSY是否為低。如果BUSY =0,說明模塊對用戶的寫操作已經執行完畢,可以再送下一個數據。如向模塊發出一個完整的顯示漢字的命令,包括顯示坐標及漢字代碼在內共需5個字節,模塊在接收到最后一個字節后,才開始執行整個命令的內部操作;因此,最后一個字節的應答BUSY 高電平(BUSY =1)持續時間較長。  

還請各位大神幫忙看看什么問題導致,再次謝謝各位大神!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 波多野结衣二区 | 日韩精品一区二区三区免费观看 | 国户精品久久久久久久久久久不卡 | 久久新视频 | 午夜精品久久久久久久 | 国产蜜臀 | 精品国产免费一区二区三区演员表 | 欧美日韩在线视频观看 | 日韩伦理一区二区 | 激情网站在线 | 亚洲欧洲精品在线 | 一级一级毛片免费看 | 免费特黄视频 | 91黄在线观看 | 日韩一区二区三区在线看 | 日本视频在线 | 国产免费一区 | 四虎永久免费影院 | 黑人粗黑大躁护士 | 日本精品在线观看 | 国产精品18hdxxxⅹ在线 | а天堂中文最新一区二区三区 | 婷婷不卡 | 午夜影院在线播放 | 伊人久久免费 | 成人国产免费视频 | 国产黄色大片在线观看 | 狠狠干在线 | 国产精品美女久久久免费 | 亚洲综合久久久 | 亚洲国产欧美在线人成 | 97久久精品午夜一区二区 | 99热热热热 | 麻豆av在线 | av日日操 | 国产一区二区三区四区五区3d | 中文字幕一区二区三区乱码在线 | 免费精品视频 | 免费三级av| 亚洲成人一区二区 | 亚洲视频中文字幕 |