📄 rtx_dianzhen.c
字号:
#include <rtx51tny.h>
#include <reg52.h>
#include "ziku.h"
#include <string.h>
#define uchar unsigned char
#define uint unsigned int
void RESET(void) //软件复位子程序
{
uchar code rst[]={0xe4,0xc0,0xe0,0xc0,0xe0,0x32};
(*((void(*)(void))(rst)))();
}
void delay(uchar t)
{
uchar n;
while(t--)
for(n=0;n<100;n++);
}
void write_word(uchar Index[2])
{
uchar i,j;
uint k=60;
for(i=0;i<255;i++)
{ if (GB_16[i].Index[0]==Index[0] && GB_16[i].Index[1]==Index[1]) //汉字作为双字节字符串处理 采用顺序检索方式查找结构体名
{ while(k--)
{
for(j=0;j<16;j++)
{
P0=0x00;
P2=0x00;
P3=j;
P0=GB_16[i].Msk[j+16];
P2=GB_16[i].Msk[j];
delay(1);
P0=0x00;
P2=0x00; }
}
}
}
}
void write_sentence(uchar sentence[255])
{
uchar i;
uchar word_buf[2];
for(i=0;i<strlen(sentence)/2;i++)
{ word_buf[0]=sentence[i*2];
word_buf[1]=sentence[i*2+1];
//从sentence中两个两个的取字符串即汉字 注意不要弄半角的字符或标点符号,否则后面的汉字将找不到
write_word(word_buf);
os_wait(K_TMO,15,0); } }
void start (void) _task_ 0
{
os_create_task (1);
os_create_task (2);
os_create_task (3);
os_delete_task (0);
}
void display (void) _task_ 1
{
while(1)
{ write_sentence("武汉理工大学熊涛制作");
os_wait(K_TMO,5,0);
write_sentence("悠悠苍天奈何独立苍茫");
P0=0;
P2=0;
os_wait(K_TMO,5,0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -