- 打卡等级:常住居民III
- 打卡总天数:153
- 最近打卡:2026-03-30 19:54:03
已绑定手机
论坛元老
- 积分
- 3422
|
发表于 2026-2-28 20:03:44
|
显示全部楼层
完整的看我们的功能函数:
#include "smg.h"
//共阴极数码管显示0~F的段码数据
u8 gsmg_code[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//从第pos位开始,显示缓冲器dat[]的内容
void SMG_DisPlay(u8 dat[],u8 pos) //dat[]是显示的内容,pos是显示的开始位置
{
u8 i=0;
u8 pos_temp=pos-1;
for (i=pos_temp; i<8;i++)
{
switch (i)
{
case 0: LSC=1;LSB=1;LSA=1;break;
case 1: LSC=1;LSB=1;LSA=0;break;
case 2: LSC=1;LSB=0;LSA=1;break;
case 3: LSC=1;LSB=0;LSA=0;break;
case 4: LSC=0;LSB=1;LSA=1;break;
case 5: LSC=0;LSB=1;LSA=0;break;
case 6: LSC=0;LSB=0;LSA=1;break;
case 7: LSC=0;LSB=0;LSA=0;break;
}
SMG_PORT=dat [i-pos_temp];
delay_ms (1) ;
SMG_PORT=0; //消隐,实际是段码给0,清除段数据,消除重影
}
}
|
|