From 5c030b1a8167f748746847977453660cac52c6b1 Mon Sep 17 00:00:00 2001 From: Paul Goeser Date: Sat, 14 Jan 2012 15:45:18 +0100 Subject: [PATCH 1/4] make reset --- Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Makefile b/Makefile index 230da4b..fff8aca 100644 --- a/Makefile +++ b/Makefile @@ -72,5 +72,9 @@ functionsize: disasm countregs: disasm python avrbuild/countregs.py +reset: + # resets avr + avrdude -c usbasp -p t26 + # for depends: -include $(OBJECTS:.o=.d) From 41df7ebc7ebf43be050b8acb8e508465247683af Mon Sep 17 00:00:00 2001 From: Nidan Date: Sat, 14 Jan 2012 15:45:21 +0100 Subject: [PATCH 2/4] reduced memory needed for mmc comands --- mmc.c | 69 ++++++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 45 insertions(+), 24 deletions(-) diff --git a/mmc.c b/mmc.c index 1c5db8f..20b31bf 100644 --- a/mmc.c +++ b/mmc.c @@ -122,21 +122,23 @@ unsigned char mmc_write_command (unsigned char *cmd) //set MMC_Chip_Select to low (MMC/SD-Karte Aktiv) MMC_Enable(); - //sendet 6 Byte Commando - for (unsigned char a = 0;a<0x06;a++) //sendet 6 Byte Commando zur MMC/SD-Karte - { + //sendet 5 Byte Commando + for (unsigned char a = 0;a < 5; a++) //sendet 6 Byte Commando zur MMC/SD-Karte + { mmc_write_byte(*cmd++); - } + } + //send 6th command byte / CRC + mmc_write_byte(0xFF); //Wartet auf ein gültige Antwort von der MMC/SD-Karte while (tmp == 0xff) - { + { tmp = mmc_read_byte(); if (Timeout++ > 500) - { + { break; //Abbruch da die MMC/SD-Karte nicht Antwortet - } } + } return(tmp); } @@ -157,21 +159,23 @@ unsigned char mmc_write_command_slow(unsigned char *cmd) //set MMC_Chip_Select to low (MMC/SD-Karte Aktiv) MMC_Enable(); - //sendet 6 Byte Commando - for (unsigned char a = 0;a<0x06;a++) //sendet 6 Byte Commando zur MMC/SD-Karte - { + //sendet 5 Byte Commando + for (unsigned char a = 0; a < 5; a++) //sendet 6 Byte Commando zur MMC/SD-Karte + { mmc_write_byte_slow(*cmd++); - } + } + //send 6th command byte / CRC + mmc_write_byte_slow(0xFF); //Wartet auf ein gültige Antwort von der MMC/SD-Karte while (tmp == 0xff) - { + { tmp = mmc_read_byte_slow(); if (Timeout++ > 500) - { + { break; //Abbruch da die MMC/SD-Karte nicht Antwortet - } } + } return(tmp); } @@ -299,8 +303,9 @@ unsigned char mmc_write_sector (unsigned long addr,unsigned char *Buffer) { unsigned char tmp; //Commando 24 zum schreiben eines Blocks auf die MMC/SD - Karte - unsigned char cmd[] = {0x58,0x00,0x00,0x00,0x00,0xFF}; - + unsigned char cmd[5];// = {0x58,0x00,0x00,0x00,0x00,0xFF}; + cmd[0] = 0x58; + cmd[4] = 0; /*Die Adressierung der MMC/SD-Karte wird in Bytes angegeben, addr wird von Blocks zu Bytes umgerechnet danach werden diese in das Commando eingefügt*/ @@ -357,9 +362,9 @@ void mmc_read_block(unsigned char *cmd,unsigned char *Buffer,unsigned int Bytes) { //Sendet Commando cmd an MMC/SD-Karte if (mmc_write_command (cmd) != 0) - { - return; - } + { + return; + } //Wartet auf Start Byte von der MMC/SD-Karte (FEh/Start Byte) @@ -386,7 +391,9 @@ unsigned char mmc_read_sector (unsigned long addr,unsigned char *Buffer) //############################################################################ { //Commando 16 zum lesen eines Blocks von der MMC/SD - Karte - unsigned char cmd[] = {0x51,0x00,0x00,0x00,0x00,0xFF}; + unsigned char cmd[5];// = {0x51,0x00,0x00,0x00,0x00,0xFF}; + cmd[0] = 0x51; + cmd[4] = 0; /*Die Adressierung der MMC/SD-Karte wird in Bytes angegeben, addr wird von Blocks zu Bytes umgerechnet danach werden @@ -440,7 +447,9 @@ uint8_t mmc_read_part(unsigned long addr,unsigned char *Buffer, uint16_t count) //############################################################################ { //Commando 16 zum lesen eines Blocks von der MMC/SD - Karte - unsigned char cmd[] = {0x51,0x00,0x00,0x00,0x00,0xFF}; + unsigned char cmd[5];// = {0x51,0x00,0x00,0x00,0x00,0xFF}; + cmd[0] = 0x51; + cmd[4] = 0; /*Die Adressierung der MMC/SD-Karte wird in Bytes angegeben, addr wird von Blocks zu Bytes umgerechnet danach werden @@ -493,7 +502,9 @@ void mmc_read_to_ringbuffer(unsigned long addr, ringbuf_t *buffer) //############################################################################ { //Commando 16 zum lesen eines Blocks von der MMC/SD - Karte - unsigned char cmd[] = {0x51,0x00,0x00,0x00,0x00,0xFF}; + unsigned char cmd[5];// = {0x51,0x00,0x00,0x00,0x00,0xFF}; + cmd[0] = 0x51; + cmd[4] = 0; /*Die Adressierung der MMC/SD-Karte wird in Bytes angegeben, addr wird von Blocks zu Bytes umgerechnet danach werden @@ -514,7 +525,12 @@ unsigned char mmc_read_cid (unsigned char *Buffer) //############################################################################ { //Commando zum lesen des CID Registers - unsigned char cmd[] = {0x4A,0x00,0x00,0x00,0x00,0xFF}; + unsigned char cmd[5];// = {0x4A,0x00,0x00,0x00,0x00,0xFF}; + cmd[0] = 0x4a; + cmd[1] = 0; + cmd[2] = 0; + cmd[3] = 0; + cmd[4] = 0; mmc_read_block(cmd,Buffer,16); @@ -527,7 +543,12 @@ unsigned char mmc_read_csd (unsigned char *Buffer) //############################################################################ { //Commando zum lesen des CSD Registers - unsigned char cmd[] = {0x49,0x00,0x00,0x00,0x00,0xFF}; + unsigned char cmd[5];// = {0x49,0x00,0x00,0x00,0x00,0xFF}; + cmd[0] = 0x49; + cmd[1] = 0; + cmd[2] = 0; + cmd[3] = 0; + cmd[4] = 0; mmc_read_block(cmd,Buffer,16); From 2788f7a7def18d66726be70aa1871dd2395b98df Mon Sep 17 00:00:00 2001 From: Nidan Date: Sat, 14 Jan 2012 15:48:17 +0100 Subject: [PATCH 3/4] converted audio to wrong signedness, fixed --- convert.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/convert.sh b/convert.sh index 9c4a9fb..c2609cb 100755 --- a/convert.sh +++ b/convert.sh @@ -7,7 +7,7 @@ fi TMPFILE="convert.tmp" -ffmpeg -i ${1} -f s16be -ar 16k -ac 1 -acodec pcm_s16be ${TMPFILE} +ffmpeg -i ${1} -f u16be -ar 16k -ac 1 -acodec pcm_u16be ${TMPFILE} SIZE=$(( $(stat -c "%s" ${TMPFILE}) / 2 )) echo -ne "\0$(printf %o $(($SIZE % 256)) )\0$(printf %o $(( ($SIZE / 256) % 256)) )\0$(printf %o $(( ($SIZE / 256**2) % 256)) )\0$(printf %o $(( ($SIZE / 256**3) % 256)) )" | cat - ${TMPFILE} > ${2} rm ${TMPFILE} From a7509dfcd7b5bcd0b1649073fa2139acb7d82e60 Mon Sep 17 00:00:00 2001 From: Nidan Date: Sat, 14 Jan 2012 15:59:19 +0100 Subject: [PATCH 4/4] converter fixing --- convert.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/convert.sh b/convert.sh index c2609cb..d85b904 100755 --- a/convert.sh +++ b/convert.sh @@ -2,12 +2,12 @@ if [ ${#} -ne "2" ] ; then echo "Usage: ${0} " - return 1 + exit 1 fi TMPFILE="convert.tmp" -ffmpeg -i ${1} -f u16be -ar 16k -ac 1 -acodec pcm_u16be ${TMPFILE} -SIZE=$(( $(stat -c "%s" ${TMPFILE}) / 2 )) -echo -ne "\0$(printf %o $(($SIZE % 256)) )\0$(printf %o $(( ($SIZE / 256) % 256)) )\0$(printf %o $(( ($SIZE / 256**2) % 256)) )\0$(printf %o $(( ($SIZE / 256**3) % 256)) )" | cat - ${TMPFILE} > ${2} +ffmpeg -i "${1}" -f u16be -ar 16k -ac 1 -acodec pcm_u16be ${TMPFILE} +SIZE=$(( $(stat -c "%s" ${TMPFILE} ) / 2 )) +echo -ne "\0$(printf %o $(($SIZE % 256)) )\0$(printf %o $(( ($SIZE / 256) % 256)) )\0$(printf %o $(( ($SIZE / 256**2) % 256)) )\0$(printf %o $(( ($SIZE / 256**3) % 256)) )" | cat - ${TMPFILE} > "${2}" rm ${TMPFILE}