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相关推荐

  1. 51单片机+LCD12864驱动显示汉字模板+Proteus仿真

    51单片机+LCD12864驱动显示汉字模板+Proteus仿真 Proteus仿真效果 汉字显示方法 汉字通过取模软件取模. 取模软件:pctolcd2002 取模方式: 工程文件架构 主程序代码 ...

  2. AMG8833的使用与stm32驱动代码

    一.介绍 1.内部框图 可以看到AMG8833的内部有红外点阵测温,并且还带有一个热敏电阻.使用同一个ADC进行采样,然后送给Control. 2.器件参数 测温点数:64(8x8的矩阵) 帧率:10 ...

  3. Linux创建线程读取双口数据,linux环境下读写一次双口ram尽然要十几个毫秒。(附驱动代码)...

    linux环境下读写一次双口ram尽然要十几个毫秒.(附驱动代码) 我用的双口ram是IDT70V28,手册上说的读写时间应该是几个纳秒,我写了个linux驱动,然后做测试,发现读写一次的时间尽然是十 ...

  4. 三星framebuffer驱动代码分析

    一.驱动总体概述 本次的驱动代码是Samsung公司为s5pv210这款SoC编写的framebuffer驱动,对应于s5pv210中的内部外设Display Controller (FIMD)模块. ...

  5. 树莓派IO口驱动代码的编写、微机总线地址、物理地址、虚拟地址、BCM2835芯片手册

    地址总线: 百度百科解释: 地址总线 (Address Bus:又称:位址总线) 属于一种电脑总线 (一部份),是由CPU 或有DMA 能力的单元,用来沟通这些单元想要存取(读取/写入)电脑内存元件/ ...

  6. 基于框架编写驱动代码

    操作驱动的上层代码(pin4test) #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> ...

  7. 整合后台服务和驱动代码注入

    整合后台服务和驱动代码注入 Home键的驱动代码: /dev/input/event1: 0001 0066 00000001 /dev/input/event1: 0000 0000 0000000 ...

  8. Linux kernel 中模块化的平台驱动代码介绍

    介绍 在linux kernel中通过module_platform_driver来实现模块化平台驱动.大量的设备驱动程序都基于该种方式来实现,使用频次非常的高,在linux kernel 5.4.1 ...

  9. 解决一个驱动代码解耦合问题

    之前解决的项目LCD设备兼容问题,在 a.c 文件里面定义了一个变量,然后在 b.c 里面使用 extern声明引用这个变量,通过这种方法可以在b.c中使用在a.c 里面初始化的变量. 但是这中情况就 ...

最新文章

  1. SAP WM 使用Storage Location Reference实现IM层面的存储地点和WM层面的存储类型之间的软关联
  2. 我司那产品经理丨第二期
  3. Maven安装与配置——手把手教程
  4. python坐标系转换库_转载:python库Pyproj进行坐标转换
  5. VMware Player 12.5.0 中文免费版
  6. 经典算法——单向链表反转
  7. 学了这几招,社交时人人都对你刮目相看
  8. 图片验证,滑块验证解决
  9. ezcad旋转轴标刻参数_激光打标机软件ezcad中地球仪标刻使用方法教程详解
  10. 2020 03 15 蚂蚁金服实习电话一面
  11. 手机音乐播放器页面html代码,仿酷狗html5手机音乐播放器主要部分代码
  12. 纯CSS实现播放暂停按钮变形动画
  13. html 更改元素坐标,利用JS修改元素的位置属性,为什么style.left可行而style.top失效?...
  14. js根据生日输出对应的生肖和星座
  15. LocalSend 电脑和手机互传软件教程解答手机端无法搜索到电脑的解决方案
  16. windows 8 pro vl_微软MSDN原版Windows10/8/7/XP系统镜像与office下载地址大全
  17. Java Web --HTML(尚硅谷2022版Javaweb)
  18. 2021 ICPC 四川省赛 L - Spicy Restaurant(多源BFS,DP)
  19. 浪潮超融合服务器虚拟机管理,浪潮联合VMware发布新一代超融合一体机
  20. 《天空之音VR》即将发售,挥手击中音符就能秒变“节奏大师”

热门文章

  1. 光电子学行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  2. 不良资产处置(五):不同国家不良资产处置案例分析
  3. C++四舍五入后保留一位小数
  4. 红米k40夜景拍照怎么设置(夜景模式开启方法)
  5. spring部分解析
  6. 99年毕业设计获优的程序-图书管理程序
  7. 国产化之虚拟ARM64-CPU安装银河麒麟操作系统
  8. 在 B 站学编程,真滴牛逼!
  9. ActionScript3.0性能优化
  10. Android补间动画之ScaleAnimation、AlphaAnimation、RotateAnimation、TranslateAnimation、AnimationSet详解