LCD12864 驱动代码 STC15
LCD12864 驱动代码 STC15
注:此处晶振频率 27MHz
如更换主频,需用软件延时计算器修正LCD12864.c的两个延时函数。
lcd_dat_comm(0x80);
从屏幕第一行开始写,第一行写满之后折行到第三行继续写,0x80是写字符的初始位置
lcd_dat_comm(0x90);
从屏幕第二行开始写,第二行写满之后折行到第四行继续写,0x90是写字符的初始位置
LCD12864.c
#include "LCD12864.h"void LCD_Init(void)
{lcd_dat_comm(0x30); lcd_dat_comm(0x0C);lcd_dat_comm(0x06);
}void lcd_dat(uchar dat)
{lcdrs=1;Delay_10us(5);lcdrw=0;P2=dat; lcden=1;Delay_1ms(3);lcden=0;
}void lcd_dat_comm(uchar ch)
{lcdrs=0;Delay_10us(5);lcdrw=0;P2=ch; lcden=1;Delay_1ms(3);lcden=0;
}void Display_String(uchar *Data)
{uchar ListLength,j;ListLength = strlen(Data); for(j=0;j<ListLength;j++){lcd_dat(Data[j]); //显示单个字符}
}void Delay_10us(uint z)
{unsigned char i;while(z--){i = 65;while (--i);}
}void Delay_1ms(int ms)
{unsigned char i, j;while(ms--){i = 27;j = 64;do{while (--j);} while (--i);}
}void Pin_Init() //初始化I/O口
{ P0M0=0X00;P0M1=0X00;P1M0=0X00;P1M1=0X00;P2M0=0X00;P2M1=0X00;P3M0=0X00;P3M1=0X00;P4M0=0X00;P4M1=0X00;
}
LCD12864.h
#ifndef _LCD12864_H
#define _LCD12864_H#include <STC15.h>
#include <string.h>
#include <intrins.h>#define uchar unsigned char
#define uint unsigned int sbit lcdrs=P4^1;
sbit lcdrw=P4^2;
sbit lcden=P4^4;sbit PSB = P4^5; //串、并选择信号void LCD_Init(void);
void lcd_dat_comm(uchar ch);
void lcd_dat(uchar dat);void Delay_1ms(int ms);
void Pin_Init();void Delay_10us(uint z);
void Display_String(uchar *Data);#endif
LCD12864 驱动代码 STC15相关推荐
- 51单片机+LCD12864驱动显示汉字模板+Proteus仿真
51单片机+LCD12864驱动显示汉字模板+Proteus仿真 Proteus仿真效果 汉字显示方法 汉字通过取模软件取模. 取模软件:pctolcd2002 取模方式: 工程文件架构 主程序代码 ...
- AMG8833的使用与stm32驱动代码
一.介绍 1.内部框图 可以看到AMG8833的内部有红外点阵测温,并且还带有一个热敏电阻.使用同一个ADC进行采样,然后送给Control. 2.器件参数 测温点数:64(8x8的矩阵) 帧率:10 ...
- Linux创建线程读取双口数据,linux环境下读写一次双口ram尽然要十几个毫秒。(附驱动代码)...
linux环境下读写一次双口ram尽然要十几个毫秒.(附驱动代码) 我用的双口ram是IDT70V28,手册上说的读写时间应该是几个纳秒,我写了个linux驱动,然后做测试,发现读写一次的时间尽然是十 ...
- 三星framebuffer驱动代码分析
一.驱动总体概述 本次的驱动代码是Samsung公司为s5pv210这款SoC编写的framebuffer驱动,对应于s5pv210中的内部外设Display Controller (FIMD)模块. ...
- 树莓派IO口驱动代码的编写、微机总线地址、物理地址、虚拟地址、BCM2835芯片手册
地址总线: 百度百科解释: 地址总线 (Address Bus:又称:位址总线) 属于一种电脑总线 (一部份),是由CPU 或有DMA 能力的单元,用来沟通这些单元想要存取(读取/写入)电脑内存元件/ ...
- 基于框架编写驱动代码
操作驱动的上层代码(pin4test) #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> ...
- 整合后台服务和驱动代码注入
整合后台服务和驱动代码注入 Home键的驱动代码: /dev/input/event1: 0001 0066 00000001 /dev/input/event1: 0000 0000 0000000 ...
- Linux kernel 中模块化的平台驱动代码介绍
介绍 在linux kernel中通过module_platform_driver来实现模块化平台驱动.大量的设备驱动程序都基于该种方式来实现,使用频次非常的高,在linux kernel 5.4.1 ...
- 解决一个驱动代码解耦合问题
之前解决的项目LCD设备兼容问题,在 a.c 文件里面定义了一个变量,然后在 b.c 里面使用 extern声明引用这个变量,通过这种方法可以在b.c中使用在a.c 里面初始化的变量. 但是这中情况就 ...
最新文章
- SAP WM 使用Storage Location Reference实现IM层面的存储地点和WM层面的存储类型之间的软关联
- 我司那产品经理丨第二期
- Maven安装与配置——手把手教程
- python坐标系转换库_转载:python库Pyproj进行坐标转换
- VMware Player 12.5.0 中文免费版
- 经典算法——单向链表反转
- 学了这几招,社交时人人都对你刮目相看
- 图片验证,滑块验证解决
- ezcad旋转轴标刻参数_激光打标机软件ezcad中地球仪标刻使用方法教程详解
- 2020 03 15 蚂蚁金服实习电话一面
- 手机音乐播放器页面html代码,仿酷狗html5手机音乐播放器主要部分代码
- 纯CSS实现播放暂停按钮变形动画
- html 更改元素坐标,利用JS修改元素的位置属性,为什么style.left可行而style.top失效?...
- js根据生日输出对应的生肖和星座
- LocalSend 电脑和手机互传软件教程解答手机端无法搜索到电脑的解决方案
- windows 8 pro vl_微软MSDN原版Windows10/8/7/XP系统镜像与office下载地址大全
- Java Web --HTML(尚硅谷2022版Javaweb)
- 2021 ICPC 四川省赛 L - Spicy Restaurant(多源BFS,DP)
- 浪潮超融合服务器虚拟机管理,浪潮联合VMware发布新一代超融合一体机
- 《天空之音VR》即将发售,挥手击中音符就能秒变“节奏大师”
热门文章
- 光电子学行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- 不良资产处置(五):不同国家不良资产处置案例分析
- C++四舍五入后保留一位小数
- 红米k40夜景拍照怎么设置(夜景模式开启方法)
- spring部分解析
- 99年毕业设计获优的程序-图书管理程序
- 国产化之虚拟ARM64-CPU安装银河麒麟操作系统
- 在 B 站学编程,真滴牛逼!
- ActionScript3.0性能优化
- Android补间动画之ScaleAnimation、AlphaAnimation、RotateAnimation、TranslateAnimation、AnimationSet详解