unsigned char array[ARRAY_SIZE];
...
for(i = ARRAY_SIZE - 1; i > 0; i--)
   array[i] = array[i - 1];
array[0] = some_new_data;
