📄 main.c
字号:
#include "cpu_reg.h"
#define LCD_PORT port3fff
#define IsRam port6fff
ioport Uint16 LCD_PORT;
ioport Uint16 IsRam;
#define TRUE 1
#define FALSE 0
int ms;
void delay( int dl);
void main()
{
int i;
char *Word;
Word = "明伟电子产品";
asm(" STM #0000h,CLKMD ");
while(*CLKMD & 0x01 );
asm(" NOP");
asm(" NOP");
asm(" NOP");
asm(" NOP");
asm(" NOP");
asm(" STM #0F800h,CLKMD ");
*SWCR = 0X0001;
//asm(" stm #7240h, SWWSR ");
asm(" stm #0FFFFh, SWWSR ");
asm(" stm #00A0h, PMST "); //MP/MC = 0, IPTR = 001,ovly=0
asm(" stm #0802h, BSCR "); //802
asm(" STM #0h,IMR ");
asm(" STM #0010h,TCR "); //关定时器
asm(" STM #06h,PRD ");//0.01ms
asm(" STM #0C2fh,TCR "); //TCR=最后四位
asm(" STM #0008h,IFR ");
asm(" ORM #0008h,*(IMR) ");/*开时间中断*/
asm(" RSBX INTM "); /*开中断*/
asm(" SSBX XF ");
delay(10000);
asm(" RSBX XF ");
IsRam = 0x0; //下面进行指令操作
delay(100);
LCD_PORT = 0x34;//扩展指令集
delay(100);
LCD_PORT = 0x30;//基本指令操作;
delay(100);
LCD_PORT = 0x01;//清除显示
delay(100);
LCD_PORT = 0x06;//指定在资料写入或读取时,光标的移动方向
delay(100);
LCD_PORT = 0x0C;//开显示
delay(100);
LCD_PORT = 0x91;//起始位置为第2行第1列
IsRam = 0x100; //下面进行数据操作
delay(100);
for(i=0;i<12;i++)
{
delay(100);
LCD_PORT = Word[i];
}
// LCD_RAM = Word[0];
/*delay(100);
LCD_RAM=0xD2;
delay(100);
LCD_RAM=0xBA;
delay(100);
LCD_RAM=0xBE;
delay(100);
LCD_RAM=0xA7;
delay(100);
LCD_RAM=0xCA;
delay(100);
LCD_RAM=0xBE;
delay(100);
LCD_RAM=0xC0;
delay(100);
LCD_RAM=0xFD;
delay(100);
LCD_RAM=0xB3;
delay(100);
LCD_RAM=0xCC;
delay(100);
LCD_RAM=0xD0;
delay(100);
LCD_RAM=0xF2;*/
i = 0;
while(1)
{
asm(" RSBX XF ");
delay(10000);
asm(" SSBX XF ");
delay(10000);
}
}
void delay( int dl)
{
ms = 0;
while(ms<dl);
}
interrupt void timer0()
{
ms++;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -