#define Delay 90000
void setup() {
// put your setup code here, to run once:
volatile unsigned char *dd1=0x30,*dd2=0x107,*dd3=0x21,*dd4=0x27;
*dd1=0xFF;
*dd2=0xFF;
*dd3=0xFF;
*dd4=0xFF;
}
unsigned char getValue(unsigned char numb,bool decimal){
unsigned char arr[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
if(decimal){
return arr[numb]|(0x80);
}else{
return arr[numb];
}
}
bool isPrime(unsigned int num){
if(num<=1){
return false;
} else{
unsigned char temp=2;
while(num>temp){
if(num%temp==0)
return false;
temp++;
}
return true;
}
}
void loop() {
// put your main code here, to run repeatedly:
volatile unsigned char *op1=0x31,*op2=0x108,*op3=0x22,*op4=0x28;
volatile long i;
//5th
// for(unsigned int j=0;j<=9999;j++){
// unsigned int k=j;
// *op4=getValue((unsigned char)k%10,false);
// k/=10;
// *op3=getValue((unsigned char)k%10,false);
// k/=10;
// *op2=getValue((unsigned char)k%10,false);
// k/=10;
// *op1=getValue((unsigned char)k%10,false);
// for(i=0;i<Delay;i++);
// }
// //6th
// for(float j=0.0f;j<=999.9f;j+=0.001f){
// unsigned int k;
// bool flag4=false,flag3=false,flag2=false,flag1=false;
// if(j>=0.0f&&j<=9.999f){flag1=true;
// k=j*1000;}
// if(j>=10.00f&&j<=99.99f){flag2=true;
// k=j*100;}
// if(j>=100.0f&&j<=999.9f){flag3=true;
// k=j*10;}
// *op4=getValue((unsigned char)k%10,flag4);
// k/=10;
// *op3=getValue((unsigned char)k%10,flag3);
// k/=10;
// *op2=getValue((unsigned char)k%10,flag2);
// k/=10;
// *op1=getValue((unsigned char)k%10,flag1);
// for(i=0;i<Delay;i++);
// }
//7th
// for(unsigned int j=0;j<=9999;j++){
// unsigned int k=j;
// if(j>=0){
// *op4=getValue((unsigned char)k%10,false);
// k/=10;
// }
// if(j>=10){
// *op3=getValue((unsigned char)k%10,false);
// k/=10;
// }
// if(j>=100){
// *op2=getValue((unsigned char)k%10,false);
// k/=10;
// }
// if(j>=1000){
// *op1=getValue((unsigned char)k%10,false);
// k/=10;
// }
// for(i=0;i<Delay;i++);
// }
//9th
// for(unsigned int j=10;j<100;j++){
// unsigned int k=j;
// if(isPrime(k)){
// *op4=getValue((unsigned char)k%10,false);
// k/=10;
// *op3=getValue((unsigned char)k%10,false);
// }
// for(i=0;i<Delay;i++);
// }
//10th
for(unsigned char k=0;k<60;k++){
for(unsigned char l=0;l<60;l++){
*op4=getValue(l%10,false);
*op3=getValue(l/10,false);
*op2=getValue(k%10,true);
*op1=getValue(k/10,false);
for(i=0;i<Delay;i++);
}
}
}