![利用SED1520實現點陣顯示_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/6838cf00-f28e-4b99-a85a-e228495305bd/6838cf00-f28e-4b99-a85a-e228495305bd1.gif)
![利用SED1520實現點陣顯示_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/6838cf00-f28e-4b99-a85a-e228495305bd/6838cf00-f28e-4b99-a85a-e228495305bd2.gif)
![利用SED1520實現點陣顯示_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/6838cf00-f28e-4b99-a85a-e228495305bd/6838cf00-f28e-4b99-a85a-e228495305bd3.gif)
![利用SED1520實現點陣顯示_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/6838cf00-f28e-4b99-a85a-e228495305bd/6838cf00-f28e-4b99-a85a-e228495305bd4.gif)
![利用SED1520實現點陣顯示_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/6838cf00-f28e-4b99-a85a-e228495305bd/6838cf00-f28e-4b99-a85a-e228495305bd5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、/ 函數聲明 #include"stdio.h"#include"absacc.h"#include"reg51.h"/LCD接口管腳聲明sbit A0=P3A0;/寄存器選擇信號sbit RW=P3A1; /讀/寫選擇信號sbit E1=P3A2; /使能信號 E1sbit E2=P3A3; / 使能信號 E2#define DATA_IO P1#define LCD_DISPLAYON 0xaf#define LCD_DISPLAYOFF 0xae#define LCD_DRIVERON 0xa5#define LCD_DRIVE
2、ROFF 0xa4#define LCD_DUTY16 0xa8#define LCD_DUTY32 0xa9#define LCD_END 0xee#define LCD_RESET 0xe2#define LCD_RWMODE 0xe0#define LCD_STARTLINE0 0xc0#define LCD_PAGE0 0xb8#define LCD_COLUMNADDR0 0x00#define LCD_ON() LCD_Command(LCD_DISPLAYON)#define LCD_OFF() LCD_Command(LCD_DISPLAYOFF)#define LCD_Sta
3、ticON() LCD_Command(LCD_DRIVERON)#define LCD_StaticOFF() LCD_Command(LCD_DRIVEROFF)#define LCD_Select16() LCD_Command(LCD_DUTY16)#define LCD_Select32() LCD_Command(LCD_DUTY32)#define LCD_StartRW() LCD_Command(LCD_RWMODE)#define LCD_EndRW() LCD_Command(LCD_END)#define LCD_Reset() LCD_Command(LCD_RESE
4、T)#define LCD_SetStartLine(i) LCD_Command(LCD_STARTLINE0+i)#define LCD_SetPage(i) LCD_Command(LCD_PAGE0+i)#define LCD_SetColumn(i) LCD_Command(LCD_COLUMNADDR0+i)/ / 函數名稱: LCD_Command1/ 入口參數: nCommand 命令字/ 函數功能: 寫指令代碼子程序 (SED1520-1)/ void LCD_Command1(unsigned char nCommand)unsigned char state_temp;A
5、0=0;RW=1; while(state_temp&0x80=1) / 判"忙"標志為 "0" 否, 否再讀DATA_IO=0xFF ; /P1 口置 "1" E1=1;state_temp=DATA_IO; / 設置讀狀態(tài)字地址 E1=0;RW=0;E1=1; DATA_IO=nCommand; / 寫指令代碼E1=1;E1=0;/ / 函數名稱: WRITE_showDATA1/ 入口參數: show_DATA 寫入 SED1520-1 內部顯示 RAM 的數據/ 函數功能: 寫顯示數據子程序 (SED1520-1)/
6、void WRITE_showDATA1(unsigned char show_DATA) unsigned char state_temp;A0=0;RW=1;while(state_temp&0x80=1) / 判"忙 "標志為 "0" 否, 否再讀 DATA_IO=0xFF ; /P1 口置 "1" E1=1;state_temp=DATA_IO; / 設置讀狀態(tài)字地址 E1=0;A0=1;RW=0;E1=1; DATA_IO=show_DATA; / 寫指令代碼E1=1;E1=0;/ / 函數名稱: READ_show
7、DATA1/ 入口參數: show_DATA 讀出 SED1520-1 內部顯示 RAM 的數據/ 函數功能: 讀顯示數據子程序 (SED1520-1)/ unsigned char READ_showDATA1()unsigned char show_DATA; unsigned char state_temp;A0=0;RW=1;while(state_temp&0x80=1) / 判"忙 "標志為 "0" 否, 否再讀DATA_IO=0xFF ;E1=1;state_temp=DATA_IO;E1=0;A0=1;DATA_IO=0xFF ;
8、E1=1;show_DATA=DATA_IO;E1=0;return(show_DATA);/P1 口置 "1"/ 設置讀狀態(tài)字地址/P1 口置 "1"/ 讀數據/ 返回顯示區(qū)數據/ / 函數名稱: LCD_Command2/ 入口參數: nCommand 命令字/ 函數功能: 寫指令代碼子程序 (SED1520-2)/ void LCD_Command2(unsigned char nCommand)unsigned char state_temp;A0=0;RW=1;while(state_temp&0x80=1) / 判"忙&qu
9、ot;標志為 "0" 否, 否再讀 DATA_IO=0xFF ; /P1 口置 "1" E2=1;state_temp=DATA_IO; / 設置讀狀態(tài)字地址 E2=0;RW=0;/ 寫指令代碼E2=1;DATA_IO=nCommand;E2=1;E2=0;/ / 函數名稱: WRITE_showDATA2/ 入口參數: show_DATA 寫入 SED1520-2 內部顯示 RAM 的數據/ 函數功能: 寫顯示數據子程序 (SED1520-2)/ void WRITE_showDATA2(unsigned char show_DATA) unsigne
10、d char state_temp; A0=0;RW=1; while(state_temp&0x80=1) / 判"忙 "標志為 "0" 否, 否再讀 DATA_IO=0xFF ; /P1 口置 "1" E2=1;state_temp=DATA_IO; / 設置讀狀態(tài)字地址 E2=0;A0=1;RW=0;E2=1;DATA_IO=show_DATA; / 寫指令代碼E2=1;E2=0;/ / 函數名稱: READ_showDATA2/ 入口參數: show_DATA 讀出 SED1520-2 內部顯示 RAM 的數據/ 函數
11、功能: 讀顯示數據子程序 (SED1520-2)/ unsigned char READ_showDATA2()unsigned char show_DATA; unsigned char state_temp;A0=0;RW=1; while(state_temp&0x80=1) / 判"忙 "標志為 "0" 否, 否再讀 DATA_IO=0xFF ;/P1 口置 "1"E2=1;state_temp=DATA_IO; / 設置讀狀態(tài)字地址 E2=0;A0=1;DATA_IO=0xFF ;/ P1 口置 "1&qu
12、ot;E2=1; show_DATA=DATA_IO; / 讀數據 E2=0;return(show_DATA); / 返回顯示區(qū)數據 / 函數聲明#include"stdio.h"#include"absacc.h"#include"reg51.h"/ 定義地址#define CWADD1 XBYTE0x8000 / 寫指令代碼地址 (E1)#define CRADD1 XBYTE0x8200 / 讀狀態(tài)字地址 (E1)#define DWADD1 XBYTE0x8100 / 寫顯示數據地址 (E1)#define DRADD1 X
13、BYTE0x8300 / 讀顯示數據地址 (E1)#define CWADD2 XBYTE0x4000 / 寫指令代碼地址 (E2)#define CRADD2 XBYTE0x4200 / 讀狀態(tài)字地址 (E2)#define DWADD2 XBYTE0x4100 / 寫顯示數據地址 (E2)#define DRADD2 XBYTE0x4300 / 讀顯示數據地址 (E2)/ 定義各命令字 #define LCD_DISPLAYON 0xaf#define LCD_DISPLAYOFF 0xae#define LCD_DRIVERON 0xa5#define LCD_DRIVEROFF 0xa
14、4#define LCD_DUTY16 0xa8#define LCD_DUTY32 0xa9#define LCD_END 0xee#define LCD_RESET 0xe2#define LCD_RWMODE 0xe0#define LCD_STARTLINE0 0xc0#define LCD_PAGE0 0xb8#define LCD_COLUMNADDR0 0x00/ 定義各命令操作 #define LCD_ON() LCD_Command(LCD_DISPLAYON)#define LCD_OFF() LCD_Command(LCD_DISPLAYOFF)#define LCD_S
15、taticON() LCD_Command(LCD_DRIVERON)#define LCD_StaticOFF() LCD_Command(LCD_DRIVEROFF)#define LCD_Select16() LCD_Command(LCD_DUTY16)#define LCD_Select32() LCD_Command(LCD_DUTY32)#define LCD_StartRW() LCD_Command(LCD_RWMODE)#define LCD_EndRW() LCD_Command(LCD_END)#define LCD_Reset() LCD_Command(LCD_RE
16、SET)#define LCD_SetStartLine(i) LCD_Command(LCD_STARTLINE0+i)#define LCD_SetPage(i) LCD_Command(LCD_PAGE0+i)#define LCD_SetColumn(i) LCD_Command(LCD_COLUMNADDR0+i)/*ASCII字體,大小6X8上到下D0D7,左到右*/unsigned char code ASCII6=0x00,0x7e,0x21,0x21,0x21,0x7e,/*A*/0x00,0x7f,0x49,0x49,0x49,0x36,/*B*/0x00,0x3e,0x4
17、1,0x41,0x41,0x22,/*C*/0x00,0x7f,0x41,0x41,0x22,0x1c,/*D*/0x00,0x7f,0x49,0x49,0x49,0x49,/*E*/0x00,0x7f,0x09,0x09,0x09,0x01,/*F*/0x00,0x3e,0x41,0x49,0x49,0x7a,/*G*/0x00,0x7f,0x08,0x08,0x08,0x7f,/*H*/0x00,0x41,0x7f,0x41,0x00,0x00,/*I*/0x00,0x20,0x40,0x41,0x3f,0x01,/*J*/0x00,0x7f,0x08,0x14,0x22,0x41,/*K
18、*/0x00,0x7f,0x40,0x40,0x40,0x40,/*L*/0x00,0x7f,0x02,0x0c,0x02,0x7f,/*M*/0x00,0x7f,0x04,0x08,0x10,0x7f,/*N*/0x00,0x3e,0x41,0x41,0x41,0x3e,/*O*/0x00,0x7f,0x09,0x09,0x09,0x06,/*P*/ 0x00,0x3e,0x41,0x41,0x41,0x3e,/*Q*/0x00,0x7f,0x09,0x19,0x29,0x46,/*R*/ 0x00,0x46,0x49,0x49,0x49,0x31,/*S*/0x00,0x01,0x01,0
19、x7f,0x01,0x01,/*T*/0x00,0x3f,0x40,0x40,0x40,0x3f,/*U*/0x00,0x1f,0x20,0x40,0x20,0x1f,/*V*/0x00,0x3f,0x40,0x38,0x40,0x3f,/*W*/0x00,0x63,0x14,0x08,0x14,0x63,/*X*/0x00,0x07,0x08,0x70,0x08,0x07,/*Y*/0x00,0x61,0x51,0x49,0x45,0x43,/*Z*/;/ / 函數名稱: LCD_Command1/ 入口參數: nCommand 命令字/ 函數功能: 寫指令代碼子程序 (SED1520-1)
20、/ void LCD_Command1(unsigned char nCommand)unsigned char state_temp; while(state_temp&0x80=1) / 判 "忙 "標志為 "0" 否 , 否再讀 state_temp=CRADD1; / 設置讀狀態(tài)字地址 CRADD1=nCommand; / 寫指令代碼/ / 函數名稱: WRITE_showDATA1/ 入口參數: show_DATA 寫入 SED1520-1 內部顯示 RAM 的數據 / 函數功能: 寫顯示數據子程序 (SED1520-1)/ void
21、WRITE_showDATA1(unsigned char show_DATA)unsigned char state_temp; while(state_temp&0x80=1) / 判 "忙 "標志為 "0" 否 , 否再讀 state_temp=CRADD1; / 設置讀狀態(tài)字地址 DRADD1=show_DATA; / 寫指令代碼/ / 函數名稱: READ_showDATA1/ 入口參數: show_DATA 讀出 SED1520-1 內部顯示 RAM 的數據/ 函數功能: 讀顯示數據子程序 (SED1520-1)/ unsigned
22、char READ_showDATA1() unsigned char show_DATA;unsigned char state_temp;while(state_temp&0x80=1) / 判 "忙 "標志為 "0" 否 , 否再讀 unsigned char show_DATA;state_temp=CRADD1; show_DATA=DRADD1; return(show_DATA);/ 設置讀狀態(tài)字地址/ 讀數據/ 返回顯示區(qū)數據/ / 函數名稱: LCD_Command2/ 入口參數: nCommand 命令字/ 函數功能: 寫指令
23、代碼子程序 (SED1520-2)/ void LCD_Command2(unsigned char nCommand)unsigned char state_temp;while(state_temp&0x80=1) / 判 "忙 "標志為 "0" 否 , 否再讀 state_temp=CRADD2; / 設置讀狀態(tài)字地址CRADD2=nCommand; / 寫指令代碼/ / 函數名稱: WRITE_showDATA2/ 入口參數: show_DATA 寫入 SED1520-2 內部顯示 RAM 的數據/ 函數功能: 寫顯示數據子程序 (SED
24、1520-2)/ void WRITE_showDATA2(unsigned char show_DATA) unsigned char state_temp; while(state_temp&0x80=1) / 判 "忙 "標志為 "0" 否 , 否再讀 state_temp=CRADD2;/ 設置讀狀態(tài)字地址DRADD2=show_DATA; / 寫指令代碼 / / 函數名稱: READ_showDATA2/ 入口參數: show_DATA 讀出 SED1520-2 內部顯示 RAM 的數據/ 函數功能: 讀顯示數據子程序 (SED1520
25、-2)/ unsigned char READ_showDATA2() unsigned char state_temp;while(state_temp&0x80=1) / 判 "忙 "標志為 "0" 否 , 否再讀 state_temp=CRADD2; / 設置讀狀態(tài)字地址 show_DATA=DRADD2; / 讀數據 return(show_DATA); / 返回顯示區(qū)數據/ / 函數名稱: LCD_Command/ 入口參數: nCommand 命令字/ 函數功能: 把命令字寫入兩個 SED1520/ void LCD_Command(
26、unsigned char nCommand)LCD_Command1(nCommand);LCD_Command1(nCommand);/ /函數名稱:LCD_SetRam/入口參數:bChip2, ndata/bChip2 用于選擇控制器bChip2=0 選擇 SED1520-1/bChip2=1 選擇 SED1520-2/; ndata 是要寫入的數據/函數功能:把顯示數據寫入其中一個SED1520/ void LCD_SetRam(bit bChip2,unsigned char ndata)if(!bChip2)WRITE_showDATA1(ndata);elseWRITE_sho
27、wDATA2(ndata);/ / 函數名稱: LCD_Write/ 入口參數: npage, ncolumn , ndata/ npage 取值 07;當取 03 時在 SED1520-1;/ 當取 41 時在 SED1520-2;/ ncolumn 取 060/; ndata 是要寫入的數據/ 函數功能: 把顯示數據寫入指定的位置/ void LCD_Write(unsigned char npage,unsigned char ncolumn,unsigned char ndata) LCD_SetPage(npage%4);LCD_SetColumn(ncolumn); LCD_Set
28、Ram(npage>3,ndata);/ / 函數名稱: LCD_PageWrite/ 入口參數: npage ,*ndata/npage 取值 07;當取 03 時在 SED1520-1;/當取 41 時在 SED1520-2;/ *ndata 是要寫入的數據的地址指針/ 函數功能: 把顯示數據寫入指定的位置/ void LCD_PageWrite(unsigned char npage,unsigned char idata *ndata)unsigned char i;bit bChip2=npage>3;LCD_SetPage(npage%4);LCD_SetColumn(
29、0); for(i=0;i<61;i+)LCD_SetRam(bChip2,ndatai);/ / 函數名稱: LCD_Init/ 函數功能: 初始化 SED1520/ void LCD_Init()LCD_Command(LCD_RESET); LCD_Command(0xa0);LCD_Command(LCD_DUTY32); LCD_Command(0xa4);/ /函數名稱:GetIndex/入口參數:szText/szText表示要顯示的子符/返回值:GetIndex/要顯示的字符在字摩存儲區(qū)的位置(第幾個子模)/函數功能:查詢字符在字模存儲區(qū)的位置/ unsigned cha
30、r GetIndex(unsigned char szText) unsigned char code TAB100= 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q' ,'R','S','T','U','V','W',
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶文化教育在小學商業(yè)素養(yǎng)培養(yǎng)中的作用
- 董海霞二年級語文《葡萄溝》教學設計新
- DB4415T 48-2025茶角胸葉甲綜合防控技術規(guī)程
- LED廣告屏幕安裝與維護合同模板
- 個人消費貸款合同范例
- 二手住宅買賣合同正規(guī)范本
- 二手房分期付款合同書
- 不履行購銷合同糾紛案解析
- 專利權轉讓及合作協議合同書
- 專項企業(yè)產(股)權托管合同文本
- 2025年中國黃芪提取物市場調查研究報告
- 安徽省定遠重點中學2024-2025學年第一學期高二物理期末考試(含答案)
- 教育教學質量經驗交流會上校長講話:聚焦課堂關注個體全面提升教育教學質量
- 2024人教新目標(Go for it)八年級英語上冊【第1-10單元】全冊 知識點總結
- 北京市北師大附中2024-2025學年高一上學期期末考試數學試卷(含答案)
- 企業(yè)新員工培訓師帶徒方案
- 美容美發(fā)行業(yè)衛(wèi)生管理規(guī)范
- 年終總結總經理講話
- 2024-2025學年北師大版數學八年級上冊期末綜合測試卷
- 培訓機構校區(qū)管理規(guī)劃
- 七年級英語閱讀理解55篇(含答案)
評論
0/150
提交評論