/********************
File Name: DigitalTube_1Bit.c
Author: Jin-Lei Li
Edition: 1.0
Description: 1 bit digital tube is drived by STC89C52RC MCU board which implements a cyclic display of the number 0~9.
Date: 2023-12-13
Email: lijinlei0907@163.com
********************/
#include <reg52.h>

typedef unsigned char u8;

u8 code smg[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void delayms(unsigned int ms);
	
void main()
{
	while(1)
	{
		u8 i;
		for(i = 0;i<10;i++)
		{
			P2 = smg[i];
			delayms(500);
		}
		P2 = 0x00;
		delayms(500);
		for(i = 0;i<10;i++)
		{
			P2 = smg[9-i];
			delayms(500);
		}
		P2 = 0x00;
		delayms(500);
	}
}

void delayms(unsigned int ms)
{
	unsigned int i, j;
	for (i = 0;i < ms; i++)
		for (j = 0;j < 114; j++);
}