找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2960|回复: 2
收起左侧

stc8单片机驱动并口ssd1306有关刷新速度的问题

[复制链接]
ID:526108 发表于 2020-12-19 09:59 | 显示全部楼层 |阅读模式
单片机使用的是STC8A8K,oled12864驱动芯片是ssd1306z,使用8080并口与单片机相连。
单片机时钟设置成27MHZ是无法点亮屏幕,当设置成18MHZ时可以点亮屏幕并显示正常,我想知道在27MHZ的速度下是否能正常驱动ssd1306.

驱动代码
  1. #include <STC8.h>
  2. #include "51GUI.h"
  3. #include "SSD1306.h"
  4. #include "EEPROM.h"

  5. sbit RW=P0^1;
  6. sbit DC=P0^2;
  7. sbit RST=P0^3;
  8. sbit CS=P0^4;

  9. xdata unsigned char SSD1306_data[8][128];

  10. void SPI_WriteByte(char dat){
  11. #ifdef set_spi
  12.         SPDAT=dat;
  13.         while(!(SPSTAT&0x80));
  14.         SPSTAT=0xC0;
  15. #else
  16.         RW=0;
  17.         P1=dat;
复制代码



回复

使用道具 举报

ID:162664 发表于 2020-12-19 15:09 | 显示全部楼层
无论软件还是硬件spi 都要看你输出的数据速度 。 ssd1306 识别是有要求的。
回复

使用道具 举报

ID:554500 发表于 2020-12-19 16:25 | 显示全部楼层
类似的问题我也遇到过,OLED显示屏是I2C接口的,单片机是STC8H
IO模拟I2C通信,系统频率最高12MHZ,再高就不正常了,加延时都不行。
然后用STC8H的硬件I2C,系统频率33.1776MHZ都没问题。
献上代码:参考

STC8H系列硬件I2C(OLED显示).zip

205.08 KB, 下载次数: 29

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表