久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
無字庫12864單片機程序(縱向取模,字節(jié)倒序)帶仿真
[打印本頁]
作者:
top潮流
時間:
2017-11-30 09:28
標(biāo)題:
無字庫12864單片機程序(縱向取模,字節(jié)倒序)帶仿真
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png
(14.9 KB, 下載次數(shù): 83)
下載附件
2017-12-1 01:56 上傳
0.png
(3.67 KB, 下載次數(shù): 73)
下載附件
2017-12-1 01:56 上傳
單片機源程序如下:
/***********************************************************************
內(nèi)容:無字庫12864測試程序(縱向取模。字節(jié)倒序)
***********************************************************************/
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
#define Disp_On 0x3f //顯示命令
#define Disp_Off 0x3e //關(guān)閉命令
#define Col_Add 0x40 //起始列地址
#define Page_Add 0xb8 //起始頁地址
#define Start_Line 0xc0 //起始行地址
#define Lcd_Bus P0 //MCU P0<---> LCM
sbit RS = P2^0; //RS=1時為數(shù)據(jù)操作,RS=0時為命令操作
sbit RW = P2^1; //RW=1時為讀選通,RW=0時為寫選通
sbit E = P2^2; //E下降沿時,數(shù)據(jù)寫入驅(qū)動器,E為高電平時,數(shù)據(jù)被讀出
sbit Mcs = P2^3; //Master chip E,右半屏-CS2
sbit Scs = P2^4; //Slave chip E,左半屏-CS1
sbit RST = P2^5; //液晶模塊復(fù)位控制管腳
char code ce[] = {
/*-- 文字: 測 --*/
/*-- 宋體12; 此字體下對應(yīng)的點陣為:寬x高=16x16 --*/
0x08, 0x31, 0x86, 0x60, 0x00, 0xFE, 0x02, 0xF2, 0x02, 0xFE, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00,
0x04, 0xFC, 0x03, 0x00, 0x80, 0x47, 0x30, 0x0F, 0x10, 0x67, 0x00, 0x07, 0x40, 0x80, 0x7F, 0x00
};
char code shi[] = {
/*-- 文字: 試 --*/
/*-- 宋體12; 此字體下對應(yīng)的點陣為:寬x高=16x16 --*/
…………限于本文篇幅 余下代碼請從51黑下載附件…………
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
/*---------------------延時子程序----------------------------*/
void delay(unsigned int t)
{
unsigned int i, j;
for (i = 0;i < t;i++)
for (j = 0;j < 10;j++)
{
;
}
}
/*--------------------讀忙碌子程序---------------------------*/
void Read_busy()
{
P0 = 0x00;
RS = 0;
RW = 1;
E = 1;
while(P0&0x80);
E = 0;
}
/*--------------------寫命令到LCD----------------------------*/
void write_com(unsigned char cmdcode)
{
Read_busy(); //每次讀寫都要判斷是否忙碌
RS = 0;
RW = 0;
Lcd_Bus = cmdcode;
delay(0);
E = 1;
delay(0);
E = 0;
}
/*-------------------寫數(shù)據(jù)到LCD----------------------------*/
void write_data(unsigned char Dispdata)
{
Read_busy(); //每次讀寫都要判斷是否忙碌
RS = 1;
RW = 0;
Lcd_Bus = Dispdata;
delay(0);
E = 1;
delay(0);
E = 0;
}
/*------------------顯示邊框-------------------------------*/
void frame()
{
unsigned char i;
Mcs = 0; //兩個屏幕
Scs = 0;
/*********************************************************************/
write_com(Page_Add + 0); //上面橫線
write_com(Col_Add + 0);
for (i = 0;i < 64;i++) write_data(0x01);
/*********************************************************************/
write_com(Page_Add + 7); //下面橫線
write_com(Col_Add + 0);
for (i = 0;i < 64;i++) write_data(0x80);
/*********************************************************************/
for (i = 0;i < 8;i++)
{
Mcs = 0; //右半屏
Scs = 1;
write_com(Page_Add + i); //共8頁
write_com(Col_Add + 63); //最后一列
write_data(0xff); //ff表示每頁的8行全亮
Mcs = 1; //左半屏與右半屏類似
Scs = 0;
write_com(Page_Add + i);
write_com(Col_Add + 0);
write_data(0xff);
}
}
/*---------------------------清除內(nèi)存--------------------------------*/
void Clr_Scr()
{
unsigned char j, k;
for (k=0;k<8;k++)
{
Mcs = 1;Scs = 0;delay(10); //左半屏清屏
write_com(Page_Add + k);
write_com(Col_Add + 0);
for (j = 0;j < 64;j++) write_data(0x00);
Mcs = 0;Scs = 1; delay(10); //右半屏清屏
write_com(Page_Add + k);
write_com(Col_Add + 0);
for (j = 64;j < 128;j++) write_data(0x00);
}
}
/*------------------顯示12864圖片---------------------------*/
void Disp_Img(unsigned char code *img)
{
unsigned char j, k;
for (k = 0;k < 8;k++) //共8頁
{
Mcs = 1;Scs = 0;delay(10); //左半屏數(shù)據(jù)
write_com(Page_Add + k);
write_com(Col_Add + 0);
for (j = 0;j < 64;j++) write_data(img[k*128 + j]); //每半塊屏共64列
Mcs = 0;Scs = 1; delay(10); //右半屏數(shù)據(jù)
write_com(Page_Add + k);
write_com(Col_Add + 0);
for (j = 64;j < 128;j++) write_data(img[k*128 + j]);
}
}
/*-------------------------顯示橫---------------------------*/
void Disp_H_Line()
{
unsigned char i, j;
Mcs = 0;
Scs = 0;
write_com(Disp_On); //顯示開
write_com(Page_Add); //頁地址
write_com(Start_Line); //開始行
write_com(Col_Add); //列地址
for (j = 0;j < 8;j++) //共8頁,所以循環(huán)8次
{
write_com(Page_Add + j);
write_com(Col_Add + 0); //第一列開始
write_com(Start_Line+0); //第一行開始
for (i = 0;i < 64;i++)write_data(0x55); //每半屏幕共64列
}
}
/*------------------------顯示列-----------------------------*/
void Disp_V_Line()
{
unsigned char i, j;
write_com(Disp_On); //顯示開
write_com(Page_Add); //頁地址
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
LCD12864測試程序.rar
(75.98 KB, 下載次數(shù): 36)
2017-11-30 09:27 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
久久综合一区
|
sese视频在线观看
|
天天干狠狠操
|
欧美一区二区成人
|
国产精品成人一区二区三区
|
四虎在线视频
|
中文字幕日本一区二区
|
在线一区
|
精品国产精品国产偷麻豆
|
国产伊人久久久
|
日韩国产黄色片
|
日韩一区二区三区在线
|
国产精品视频一区二区三区
|
女女百合av大片一区二区三区九县
|
一区中文字幕
|
国产视频福利在线观看
|
黑人巨大精品欧美黑白配亚洲
|
成人自拍视频网站
|
中文字幕一区二区三区不卡在线
|
www.av在线
|
日韩欧美在线一区
|
国产91久久精品一区二区
|
91精品入口蜜桃
|
免费观看成人鲁鲁鲁鲁鲁视频
|
青青草一区二区三区
|
伊人狠狠
|
日韩中文字幕在线视频
|
成人在线观看网站
|
日韩欧美中文字幕在线视频
|
欧美精品片
|
国产免费一区二区
|
91日韩
|
91精品国产91久久久
|
色综合久
|
久久久69
|
九九视频在线观看
|
欧美一级在线观看
|
久久久网
|
国产激情91久久精品导航
|
人人操日日干
|
久久国产精品色av免费观看
|