void setup() {
// put your setup code here, to run once:
volatile char *dirL;
dirL=0x10a;
*dirL=0xff;
}
void loop() {
// put your main code here, to run repeatedly:
volatile char *outL;
outL=0x10b;
// // *outL=1;//(1);
// // *outL=255;//(2);
// for(volatile long int i=0;i<600000;i++);//here the for loop does nothing, so what the
// //compiler thinks is that, there is no use for this for loop and it will not execute
// //them, in order to optimize the code. So, here there is a need for mentioning "volatile."
// *outL=0;
// for(volatile long int i=0;i<600000;i++);
//(3)
// for(volatile long i=0;i<8;i++){
// *outL=1<<i;
// for(volatile long j=0;j<60000;j++);
// }
//(4)
// for(volatile long i=0;i<8;i++){
// *outL=1<<i;
// for(volatile long j=0;j<600000;j++);
// *outL=0;
// for(volatile long j=0;j<600000;j++);
// }
//(5)
// for(volatile long i=0;i<8;i++){
// if(i%2==0) *outL=1<<i;
// for(volatile long j=0;j<60000;j++);
// }
//(6)
// for(volatile long i=0;i<8;i++){
// if(i%2) *outL=1<<i;
// for(volatile long j=0;j<60000;j++);
// }
//(7)
// for(int i=0;i<4;i++){
// *outL=1<<i;
// for(volatile long j=0;j<60000;j++);
// *outL=0;
// for(volatile long j=0;j<60000;j++);
// }
//(8)
// for(int i=4;i<8;i++){
// *outL=1<<i;
// for(volatile long j=0;j<60000;j++);
// *outL=0;
// for(volatile long j=0;j<60000;j++);
// }
//(9)
// for(int i=3;i>=0;i--){
// *outL=1<<i;
// for(volatile long j=0;j<60000;j++);
// *outL=0;
// for(volatile long j=0;j<60000;j++);
// }
//(10)
for(int i=7;i>=4;i--){
*outL=1<<i;
for(volatile long j=0;j<60000;j++);
*outL=0;
for(volatile long j=0;j<60000;j++);
}
}