📄 s6b0724.c
字号:
typedef unsigned char uchar;
typedef unsigned int uint;
uchar code bmp[];
uchar code hz1[]={/*-- 文字: 液 --*/
0x10,0x61,0x06,0xE0,0x18,0x84,0xE4,0x1C,0x84,0x65,0xBE,0x24,0xA4,0x64,0x04,0x00,
0x04,0x04,0xFF,0x00,0x01,0x00,0xFF,0x41,0x21,0x12,0x0C,0x1B,0x61,0xC0,0x40,0x00
};
uchar code hz2[]={/*-- 文字: 晶 --*/
0x00,0x00,0x00,0x00,0x7E,0x2A,0x2A,0x2A,0x2A,0x2A,0x2A,0x7E,0x00,0x00,0x00,0x00,
0x00,0x7F,0x25,0x25,0x25,0x25,0x7F,0x00,0x00,0x7F,0x25,0x25,0x25,0x25,0x7F,0x00
};
uchar code hz3[]={/*-- 文字: 在 --*/
0x00,0x04,0x04,0xC4,0x64,0x9C,0x87,0x84,0x84,0xE4,0x84,0x84,0x84,0x84,0x04,0x00,
0x04,0x02,0x01,0x7F,0x00,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x00
};
uchar code hz4[]={/*-- 文字: 线 --*/
0x40,0x60,0x58,0xC7,0x62,0x00,0x90,0x90,0x90,0xFF,0x90,0x92,0x9C,0x94,0x80,0x00,
0x20,0x22,0x23,0x12,0x12,0x12,0x20,0x20,0x10,0x13,0x0C,0x14,0x22,0x40,0xF8,0x00
};
uchar code hz5[]={/*-- 文字: 图 --*/
0x00,0xFE,0x42,0x42,0x22,0x1E,0xAA,0x4A,0xAA,0x9A,0x0A,0x02,0x02,0xFE,0x00,0x00,
0x00,0xFF,0x42,0x42,0x41,0x41,0x48,0x72,0x54,0x40,0x41,0x43,0x41,0xFF,0x00,0x00
};
uchar code hz6[]={/*-- 文字: 形 --*/
0x40,0x42,0x42,0xFE,0x42,0x42,0xFE,0x42,0x42,0x40,0x10,0x88,0xE4,0x47,0x02,0x00,
0x80,0x40,0x30,0x0F,0x00,0x00,0x7F,0x00,0x84,0x42,0x21,0x10,0x08,0x0E,0x04,0x00
};
uchar code hz7[]={/*-- 文字: 显 --*/
0x00,0x00,0x00,0x3E,0x2A,0xEA,0x2A,0x2A,0x2A,0xEA,0x2A,0x3E,0x00,0x00,0x00,0x00,
0x20,0x21,0x22,0x2C,0x20,0x3F,0x20,0x20,0x20,0x3F,0x28,0x24,0x23,0x20,0x20,0x00
};
uchar code hz8[]={/*-- 文字: 示 --*/
0x00,0x20,0x20,0x22,0x22,0x22,0x22,0xE2,0x22,0x22,0x22,0x22,0x22,0x20,0x20,0x00,
0x10,0x08,0x04,0x03,0x00,0x40,0x80,0x7F,0x00,0x00,0x01,0x02,0x0C,0x18,0x00,0x00
};
uchar code hz9[]={/*-- 文字: 模 --*/
0x10,0xD0,0xFF,0x50,0x90,0x04,0xF4,0x54,0x5F,0x54,0x54,0x5F,0xF4,0x04,0x00,0x00,
0x03,0x00,0xFF,0x00,0x00,0x84,0x85,0x45,0x35,0x0F,0x15,0x25,0x65,0xC4,0x44,0x00
};
uchar code hz10[]={/*-- 文字: 块 --*/
0x10,0x10,0xFF,0x10,0x10,0x00,0x08,0x08,0xFF,0x08,0x08,0x08,0xF8,0x00,0x00,0x00,
0x08,0x18,0x0F,0x04,0x85,0x41,0x31,0x0D,0x03,0x05,0x09,0x11,0x31,0x61,0x21,0x00
};
unsigned char code hz11[]=
{
/*------------------------------------------------------------------------------
; 若数据乱码,请检查字模格式设置,注意选择正确的取模方向和字节位顺序。
; 源文件 / 文字 : 液
; 宽×高(像素): 16×16
; 字模格式/大小 : 单色点阵液晶字模,纵向取模,字节正序/32字节
; 数据转换日期 : 2008-8-27 5:29:54
------------------------------------------------------------------------------*/
0x10,0x61,0x06,0xE0,0x18,0x84,0xE4,0x1C,0x84,0x65,0xBE,0x24,0xA4,0x64,0x04,0x00,
0x04,0x04,0xFF,0x00,0x01,0x00,0xFF,0x41,0x21,0x12,0x0C,0x1B,0x61,0xC0,0x40,0x00,
};
unsigned char code percent[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : %
; 宽×高(像素): 16×16
------------------------------------------------------------------------------*/
0x00,0x3C,0x7E,0x42,0x7E,0x3C,0x80,0x60,0x18,0xC4,0xE2,0x20,0xE0,0xC0,0x00,0x00,
0x00,0x00,0x00,0x00,0x04,0x03,0x00,0x00,0x00,0x03,0x07,0x04,0x07,0x03,0x00,0x00,
};
unsigned char code dig001[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 1
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x00,0x02,0x02,0xFF,0xFF,0x00,0x00,0x00,0x00,0x08,0x08,0x0F,0x0F,0x08,0x08,0x00,
};
/* 2 */
unsigned char code dig002[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 2
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x04,0x02,0x01,0x81,0xC3,0x3F,0x1E,0x00,0x08,0x0C,0x0E,0x0D,0x0C,0x0C,0x0C,0x06,
};
/* 3 */
unsigned char code dig003[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 3
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x06,0x02,0x01,0x21,0x33,0x7F,0xEE,0xC0,0x0C,0x0C,0x08,0x08,0x08,0x04,0x07,0x03,
};
/* 4 */
unsigned char code dig004[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 4
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x80,0x40,0x30,0x08,0x04,0xFF,0xFF,0x00,0x01,0x01,0x01,0x01,0x01,0x0F,0x0F,0x01,
};
/* 5 */
unsigned char code dig005[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 5
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x00,0x10,0x1E,0x1B,0x33,0x73,0xE3,0x00,0x0C,0x0C,0x08,0x08,0x08,0x04,0x03,0x00,
};
/* 6 */
unsigned char code dig006[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 6
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0xE0,0xF8,0x2C,0x16,0x12,0x33,0xE1,0xC1,0x03,0x07,0x0C,0x08,0x08,0x0C,0x07,0x03,
};
/* 7 */
unsigned char code dig007[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 7
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x04,0x03,0x03,0x03,0xC3,0x3B,0x07,0x01,0x00,0x00,0x08,0x07,0x00,0x00,0x00,0x00,
};
/* 8 */
unsigned char code dig008[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 8
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x8E,0xDF,0x71,0x21,0x71,0xCF,0x86,0x00,0x07,0x0F,0x0C,0x08,0x08,0x07,0x07,0x00,
};
/* 9 */
unsigned char code dig009[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 9
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0x3C,0x7E,0xC3,0x81,0x81,0x83,0xFE,0x7C,0x08,0x08,0x08,0x04,0x06,0x03,0x01,0x00,
};
/* 0 */
unsigned char code dig010[]=
{
/*------------------------------------------------------------------------------
; 源文件 / 文字 : 0
; 宽×高(像素): 8×12
------------------------------------------------------------------------------*/
0xF8,0xFE,0x03,0x01,0x01,0x03,0xFE,0xF8,0x01,0x07,0x0C,0x08,0x08,0x0C,0x07,0x01,
};
#define Col_Add 0x40
#define Page_Add 0xb8
#include <c8051f000.h> // SFR declarations
#include <intrins.h>
//-----------------------------------------------------------------------------
// 16-bit SFR Definitions for 'F02x
//-----------------------------------------------------------------------------
sfr16 TMR3RL = 0x92; // Timer3 reload
sfr16 TMR3 = 0x94; // Timer3
sfr16 DAC0 = 0xd2; // DAC0 data
sfr16 DAC1 = 0xd5; // DAC1 data
//-----------------------------------------------------------------------------
// Global Constants
//-----------------------------------------------------------------------------
#define USE_EXT_OSC 0 // 0 = use internal oscillator
// 1 = use external oscillator
#if(USE_EXT_OSC == 0)
#define SYSCLK 16000000 // Internal oscillator frequency in Hz
#endif
#if(USE_EXT_OSC == 1)
#define SYSCLK 22118400 // External oscillator frequency in Hz
#endif
#define SAMPLE_RATE_DAC 100000L // DAC sampling rate in Hz
#define PHASE_PRECISION 65536 // range of phase accumulator
//-----------------------------------------------------------------------------
// Function Prototypes
//-----------------------------------------------------------------------------
void OSCILLATOR_Init(void);
void OSCILLATOR_Init (void)
{
#if(USE_EXT_OSC == 0)
OSCICN = 0x07; // Set internal oscillator to 16 Mhz
#endif
#if (USE_EXT_OSC == 1)
int i; // Delay counter
OSCXCN = 0x67; // Start external oscillator with
// 22.1184 MHz crystal
for (i = 0; i < 256; i++); // XTLVLD blanking interval (>1ms)
while (!(OSCXCN & 0x80)); // Wait for crystal osc. to settle
OSCICN = 0x88; // Select external oscillator as SYSCLK
// source and enable missing clock
// detector
#endif
}
void Port_IO_Init()
{
// P0.0 - Unassigned, Push-Pull
// P0.1 - Unassigned, Push-Pull
// P0.2 - Unassigned, Push-Pull
// P0.3 - Unassigned, Push-Pull
// P0.4 - Unassigned, Push-Pull
// P0.5 - Unassigned, Push-Pull
// P0.6 - Unassigned, Push-Pull
// P0.7 - Unassigned, Push-Pull
// P1.0 - Unassigned, Push-Pull
// P1.1 - Unassigned, Push-Pull
// P1.2 - Unassigned, Push-Pull
// P1.3 - Unassigned, Push-Pull
// P1.4 - Unassigned, Push-Pull
// P1.5 - Unassigned, Push-Pull
// P1.6 - Unassigned, Push-Pull
// P1.7 - Unassigned, Push-Pull
// P2.0 - Unassigned, Open-Drain
// P2.1 - Unassigned, Open-Drain
// P2.2 - Unassigned, Open-Drain
// P2.3 - Unassigned, Open-Drain
// P2.4 - Unassigned, Open-Drain
// P2.5 - Unassigned, Open-Drain
// P2.6 - Unassigned, Open-Drain
// P2.7 - Unassigned, Open-Drain
//PRT0CF = 0xFF;
PRT1CF = 0xFF;
XBR2 = 0xC0;
}
sbit LCD_RS =P1^1; //L:COMMAND; H:DATA
sbit LCD_RW =P1^0; //WRITE SIGNAL,L有效
sbit LCD_E =P1^3; //READ SIGNAL, L有效
sbit LCD_CS1 =P1^2; //L有效
sbit LCD_RST =P1^4; //L有效
#define data_bus P0
//#define control_bus P3
#define uchar unsigned char
#define uint unsigned int
//=====延时N微秒==============
void delay_nus(uint n)
{
//n=n*20;
while(n--);
return;
}
//=====延时N毫秒==============
void delay(uint n)
{
int i;
for(i=0;i<n;i++)
delay_nus(123);
}
//=====忙检测=================
void check_busy(void)
{
uchar read_data=0xff,count=0;
data_bus=0xff;
LCD_RS=0;
delay_nus(1);
LCD_RW=1; //读命令
delay_nus(1);
LCD_CS1=0; //片使能
delay_nus(1);
while(((read_data&0x80)==0x80)&&count<90)
{
LCD_E=1;
delay_nus(1);
_nop_();
_nop_();
read_data=data_bus;
delay_nus(1);
LCD_E=0;
delay_nus(1);
count++;
}
LCD_E=0;
delay_nus(1);
LCD_CS1=1;
delay_nus(1); //片禁能
}
//=====写命令到寄存器=========
void send_cmd(uchar cmd) small
{
check_busy();
delay_nus(1);
LCD_RS=0;
delay_nus(1);
LCD_RW=0; //写命令
delay_nus(1);
LCD_CS1=0; //片使能
delay_nus(1);
data_bus=cmd;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -