#include<STC15F2K60S2.H>
typedef unsigned char u8;
// 下面的应该不需要定义
// sbit OLED_MISO = P1^4; //单主机模式下,没有数据交互用不到
// sbit OLED_SCLK=P1^5; //时钟
// sbit OLED_MOSI = P1^3; //主机模式下,数据发送
sbit OLED_RES=P1^0; //复位
sbit OLED_SS = P1^2; //片选
sbit OLED_DC=P1^1; //数据|命令选择
void spi_init()
{
SPDAT = 0;
SPSTAT |= 0XC0; //清SPI中断标志位和写保护 写1清除
SPCTL |= 0XDC; //SPEN=1 SPI使能打开 SSIG=1 忽略SPI_SS引脚P1^2 MSTR=1 固定的单主机模式
P_SW1 |= 0X0C; //SPI选择第一组
}
void spi_write_byte(u8 byte, bit flag) // D/C = 0 写命令 = 1 写数据
{
if(flag == 0)
{
OLED_DC = 0;
}
else
{
OLED_DC = 1;
}
OLED_SS = 0;
SPDAT = byte;
OLED_SS = 1;
OLED_DC = 1;
}
void Delay100ms() //@11.0592MHz
{
unsigned char i, j, k;