Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed-rtos mbed wolfSSL
Fork of sd_duplicator by
main.cpp
- Committer:
- jlharper
- Date:
- 2016-12-06
- Revision:
- 3:57cbfc7d9b62
- Parent:
- 2:166e98bcd1cc
- Child:
- 4:2bcb836ba0de
File content as of revision 3:57cbfc7d9b62:
#include "mbed.h"
#include "SDBlock.h"
#include "Crypto.h"
DigitalOut led1(LED1);
DigitalOut led4(LED4);
uint8_t hash[32];
uint8_t buffer[512];
SHA256 h;
int main()
{
SDBlock original(p5, p6, p7, p22);
const int x = original.disk_initialize();
printf("************\n");
printf("%d\n", x);
SDBlock duplicate(p11, p12, p13, p21);
const int z = duplicate.disk_initialize();
printf("%d\n", z);
const int y = original.disk_status();
printf("original status: %d\n", y);
const int t = duplicate.disk_status();
printf("duplicate status: %d\n", t);
//s is sector
const uint32_t s = original.disk_sectors();
printf("sector size %d\n", s);
printf("buffer %d\n", buffer);
//start time
//time_t time_start = time(NULL);
for (int i = 0; i <= 100; ++i)
{
const int r = original.disk_read(buffer, i, 1);
if (r !=0)
{
printf("%d\n", r);
}
printf("disk read ");
/* const int rd2 = duplicate.disk_write(buffer, i, 1);
if (rd2 != 0)
{
printf("%d\n", rd2);
}*/
h.update(buffer, 512);
printf("digest updated, block %d",i);
/* if(i % 1000 == 0)
{
status update
double percentage = (i/s) * 100;
printf("percent copied: %d\n", percentage);
time elapsed
time_t time_current = time(NULL);
int time_working = time_start - time_current;
double speed = (i * 512) / time_working;
printf("speed (bytes/s): %d\n", speed);
} */
}
h.finalize(hash);
printf("finished\n");
printf("hash: ");
for(int i = 0; i < 32; ++i)
printf("%02x", hash[i]);
printf("\n");
//when finished do this light pattern
while(true)
{
led1=0;
led4=1;
wait(.5);
led1=1;
led4=0;
wait(.5);
}
}//end main
