📄 seg.c
字号:
#include "seg.h"
unsigned char code segcode[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char code segselect[] = {0xFE,0xFD,0xFB,0xF7,0xFF};
/****************************************
写段码数据
seg为显示数据
**************************************/
void WriteSegData(unsigned char seg)
{
if(seg>9) seg=0; //越界处理
seg=segcode[seg];
P0=seg;
_nop_();
_nop_();
P2&=0x1f; //P2.5-p2.7=000 CS0=0;
_nop_();
_nop_();
P2|=0xe0; //P2.5-P2.7=111 CS0=1; 数据锁存
}
/********************************************
写位选数据
*************************************/
void WriteCsData(unsigned char cs)
{
if(cs>4)cs=0; //越界处理
cs=segselect[cs];
P0=cs;
_nop_();
_nop_();
P2&=0x3f; //P2.5-P2.7=100 CS1=0
_nop_();
_nop_();
P2|=0xe0; //数据锁存
}
/*******************************************
写小数点
*****************************************/
void WritePoint(unsigned char i)
{
if(i > 4) i = 0;
P0 = 0x80;
_nop_();
_nop_();
P2&=0x1f;
_nop_();
_nop_();
P2|=0xe0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -