📄 main.c
字号:
#include "gp32.h"
#include "key.h"
#include "lcd.h"
#define cli() _asm("cli\n") /*开中断*/
#define sei() _asm("sei\n") /*关中断*/
#define nop() _asm("nop\n") /*空操作*/
/*PLL初始化*/
void PLLSUB(void){/* f=2.4576Mhz */
PCTL=0; //关闭PLL,准备进行设置
PBWC=0x80; //自动带宽模式
PCTL=1; //R=1
PMSH=1;
PMSL=0x2c; //N=012c
PMRS=0x80; //L=80
PCTL=0x22; //E=2,PLLON=1,启动PLL
while(!(PBWC&0x40)); //等待稳定输出
PCTL|=0x10; //频率锁定,选PLL作为时钟源
}
/* 系统集成模块(SIM)初始化,禁止COP(看门狗)*/
void SIM_INIT(void) {
CONFIG2=0x01; /* 内部总线时钟用作SCI的时钟*/
CONFIG1=0x3d; /* 允许LVE复位信号,禁止LVI的电源,LVI工作在5V,*/
/* 经过32个CGMXCLK周期退出STOP模式,禁止COP模块 */
}
/*主程序*/
void main(void){
sei(); //关中断
SIM_INIT();
PLLSUB(); //系统初始化
PTB=0X00;
DDRB=0XFF; //B口用作通用IO口,传输数据和命令
DDRC=0XFF; //C口用作控制断口,PTC0--A0,PTC1--RD,PTC2--WR
PTD=0X00; //D口用作背光颜色控制断口
DDRD=0XFF; //PTD3--BLUE,PTD4--RED,PTD5--GREEN
PTD=0XFF;
INIT_1565(); //初始化1565
ClearRAM(); //清显示
init_Key(); //键盘初始化
Display_InitTest(); //显示初始信息
cli(); //开中断
for(;;); //等待键盘按键,并进行相应的处理
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -