📄 dianzhen.c
字号:
#include "..\inc\option.h"
#include "..\inc\44b.h"
#include "..\inc\def.h"
void Sendata(U32 data);
/****************************************************************************
【功能说明】显示函数
******************************************************************************/
void Displayled(U16 hanzi[16])
{
int i,j;
U32 hanglie;
static U32 line[16]={0x8000,0x4000,0x2000,0x1000,0x0800,0x0400,0x0200,0x0100,
0x0080,0x0040,0x0020,0x0010,0x0008,0x0004,0x0002,0x0001}; //行值高有效
for(j=0;j<5;j++) //每个字扫描次数,决定了这个字在屏幕上停留的时间
{
for(i=0;i<16;i++)
{
U16 UI = hanzi[i];
hanglie = ((line[i]<<16) | (0x0000ffff & ~UI)); //行列值组合
Sendata(hanglie);
}
}
}
/****************************************************************************
【功能说明】发送数据函数
******************************************************************************/
void Sendata( U32 data)
{
int i,j;
U32 m;
for(i=0;i<32;i++) //行列值
{
m=data & (1 << i);
rPDATA=rPDATA & 0x3fe | ((m >> i)<<0); // Data GPA0 送数
rPDATA=rPDATA | (1 << 2); // Shift-clk GPA2=1
rPDATA=rPDATA & 0x3fb; // Shift-clk GPA2=0
if(i==31)
{
rPDATA=rPDATA | (1 << 1); // Storage-clk GPA1=1
rPDATA=rPDATA & 0x3fd; // Storage-clk GPA1=0
}
for(j=0;j<100;j++);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -