到这里基本就写完了,我们来看看修改例程中的代码,先看看中景园给的
void OLED_WR_Byte(uint8_t dat, uint8_t cmd)
{
register uint8_t i = 0;
OLED_DC = cmd;
for(;i<8;i++)
{
OLED_SCL_Clr();
if(dat&0x80)
{
OLED_SDA_Set();
}
else
{
OLED_SDA_Clr();
}
OLED_SCL_Set();
dat<<=1;
}
OLED_CS_Set();
OLED_DC_Set();
}
改为硬件驱动
#ifdef hardware
void OLED_WR_Data(uint8_t dat)
{
SPI_Busy = 0;
OLED_DC_Set(); //拉高DC管脚,写数据
OLED_Writ_Bus(dat);
}
void OLED_WR_Cmd(uint8_t cmd)
{
SPI_Busy = 0;
OLED_DC_Clr(); //拉低DC管脚,写命令
OLED_Writ_Bus(cmd);
}
#endif
这里其实就是区别了命令和数据管脚,写了两个函数,然后加了一个ifdef 到这里就基本完善了,例程给的优化有点差,然后再后面会出一期优化的
关键字:STC8单片机 OLED SPI 硬件中断 驱动
引用地址:
STC8单片机OLED通过SPI硬件中断方式驱动(下)
推荐阅读最新更新时间:2024-10-30 04:17
51驱动1602液晶+按键 protues仿真
51驱动1602液晶+按键 protues仿真 程序: #include reg52.h #define uchar unsigned char #define uint unsigned int unsigned char Trg; unsigned char Cont; sbit lcdrs=P0^4; sbit lcden=P0^6; uchar code table1 = 20121029SAT12:00 ; uchar code table2 = 0123456789 ; void delay(uint z) { uint x,y; for(x=0;x z;x++) for(
[单片机]
基于CAN总线的温度检测节点设计
在对电子点火模块的测试中,为了 模拟 电子点火系统的真实工况,电子点火模块往往被置于高于常温的环境下进行电子点火实验,以获得最接近真实汽车运行工况的点火参数数据。由于电子点火模块自身的发热,其核心元件的温度成为影响电子模块性能的重要因素;另外,还要考虑环境温度是否达到模拟真实工况的要求等。 本文介绍了一种应用LM35温度 传感器 和PICMicro的 温度检测 节点的设计方案,用于检测在模拟汽车电子点火的过程中,电子点火模块的核心模块温度和环境温度,将阐明模块结构、工作原理及采样值量化的方法。 节点原理与结构 该 温度检测 节点由传感器电路、信号调理电路、单片机应用系统、CAN总线接口等构成。电路基本工
[单片机]
车载显示驱动:IC厂商眼中的“香饽饽”
近几年,在新能源汽车市场兴起和智能驾驶、智慧座舱升级换代的大背景下,车载显示市场需求保持高位增长,这让 芯片 厂商看到了巨大的市场潜力。车用显示IC产品正成为IC厂商极力发展的产品线之一。 IC厂商眼中的“香饽饽” 随着汽车电动化、智能化的快速发展,消费者娱乐及信息交互需求的升级,车载显示屏行业正逐步走向大屏化、多屏化、联屏化。 Omdia显示面板业务研究分析师蒋与杨对《中国电子报》记者指出,显示驱动芯片在汽车领域主要应用于仪表盘、中控台、抬头显示、后视镜、行车记录仪显示。随着新能源汽车市场兴起和智能驾驶、智慧座舱升级换代,消费者对车载显示屏幕的需求进一步多样化,比如娱乐系统显示、抬头显示等多个车载显示应用需求持续增长
[汽车电子]
原创:LT3791:升降压100WLED驱动方案
Linear公司的LT3791是同步的四开关升压-降压LED驱动控制器,可使VIN高于、低于或等于VOUT,效率高达98.5%,输入电压4.7V~60V,输出电压0V~60V,LED电流精度±6%,真彩色PWM和模拟调光,每个IC输入功率100W或大于100W。主要用于汽车前灯/行驶灯和通用照明。 其连续恒定频率和强制恒定电流模式架构,使其可以进行调整,或同步200kHz~700kHz的频率。在降压或升压操作时无需顶部MOSFET开关循环周期。该器件为60V输入,60V输出。和工作区域之间的无缝转换,使LT3791成为LED驱动器在汽车、工业、电池供电系统的较理想选择。 LT3791在重新启动或闭锁时,具有输入电流监控器,LED电流
[电源管理]
OLED电视烧屏问题如何解?
什么是 OLED 老化、烧屏或图像保留?是指在电视机上频繁且连续地播放图像等画面以至于在面板上留下永久性标记的现象,从概念上看显然不适合家用电视。 众所周知,OLED 是有机发光二极管,具有自发光特性,不像液晶屏幕那样需要背光源,只要通过磷光色层来构造产生不同颜色的光。 基于此,OLED 能够拥有更出色的黑色水平、更优秀的颜色精度和更宽广的色域。同时它还具备超薄、能耗低、可卷曲等优势。 然而 OLED 也因为烧屏问题一直备受诟病。首先,烧屏指的是当你将静态明亮的图像在屏幕上放置的时间过长时,可能会看到可见的图像残留,甚至永久损坏面板。 正是这一短板,使得 OLED 市场发展受到阻碍。当然,随着显示技术的不断研
[嵌入式]
MAX845 控制双向开关的变压器驱动IC
变压器利用电磁感应的原理来改变交流电压的装置,主要构件是初级线圈、次级线圈和铁心(磁芯)。在电器设备和无线电路中,常用作升降电压、匹配阻抗,安全隔离等。
[模拟电子]
SPI总线的特点、工作方式及常见错误解答
1.SPI总线 简介
SPI(serial peripheral interface,串行外围设备接口)总线技术是Motorola公司推出的一种同步串行接口。它用于CPU与各种外围器件进行全双工、同步串行通讯。它只需四条线就可以完成MCU与各种外围器件的通讯,这四条线是:串行时钟线(CSK)、主机输入/从机输出数据线(MISO)、主机输出/从机输入数据线(MOSI)、低电平有效从机选择线CS。当SPI工作时,在移位寄存器中的数据逐位从输出引脚(MOSI)输出(高位在前),同时从输入引脚(MISO)接收的数据逐位移到移位寄存器(高位在前)。发送一个字节后,从另一个外围器件接收的字节数据进入移位寄存器中。即完成一个字节数据传输
[嵌入式]
三星可挠式LTPS-OLED面板产线选用康宁玻璃方案
康宁公司宣布,三星显示有限公司(Samsung Display)选用Corning Lotus NXT Glass,做为旗下塑料(PI)低温多晶硅(LTPS)有机发光二极管(OLED)面板产线的载板玻璃,也就是目前 Samsung Galaxy S8 与 S8+ 使用的面板。 Galaxy S8 与 S8+ 皆是采用可挠式 OLED 面板,需要在严苛的制程中使用载板玻璃支撑面板的塑料基板。 全球显示器面板技术与产品业者 Samsung Display,选择使用在尺寸稳定性、表面质量纯净度与高度均匀的 UV 穿透能力等方面皆领先业界的 Lotus NXT Glass 做为载板玻璃,因而能有效率地使用雷射从 Lotus NXT Gla
[手机便携]