upload is wokring
This commit is contained in:
parent
21298fc63f
commit
5cb972e7f6
Binary file not shown.
@ -150,9 +150,15 @@ usbMsgLen_t usbFunctionSetup(uchar data[8])
|
|||||||
req_addr = rq->wValue.word;
|
req_addr = rq->wValue.word;
|
||||||
req_addr = req_addr << 16;
|
req_addr = req_addr << 16;
|
||||||
req_addr = req_addr | rq->wIndex.word;
|
req_addr = req_addr | rq->wIndex.word;
|
||||||
//sram_bulk_write_start(req_addr);
|
|
||||||
rx_remaining = rq->wLength.word;
|
rx_remaining = rq->wLength.word;
|
||||||
|
#if 0
|
||||||
|
if (req_addr && (req_addr % 0x1000) == 0) {
|
||||||
|
debug(DEBUG_USB,"USB_UPLOAD_ADDR: bank=0x%02x addr=0x%08lx crc=%04x\n",
|
||||||
|
req_bank, req_addr,crc_check_bulk_memory(req_addr - 0x1000,req_addr));
|
||||||
|
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
sram_bulk_write_start(req_addr);
|
||||||
if (req_addr && req_addr % req_bank_size == 0) {
|
if (req_addr && req_addr % req_bank_size == 0) {
|
||||||
debug(DEBUG_USB,"USB_BULK_UPLOAD_NEXT: req_bank=0x%02x addr= 0x%08lx time=%.4f\n",
|
debug(DEBUG_USB,"USB_BULK_UPLOAD_NEXT: req_bank=0x%02x addr= 0x%08lx time=%.4f\n",
|
||||||
req_bank, req_addr,timer_stop());
|
req_bank, req_addr,timer_stop());
|
||||||
@ -249,7 +255,7 @@ void test_bulk_read_write(){
|
|||||||
addr = 0x000000;
|
addr = 0x000000;
|
||||||
i = 0;
|
i = 0;
|
||||||
sram_bulk_write_start(addr);
|
sram_bulk_write_start(addr);
|
||||||
while (addr++ <= 0x3fffff){
|
while (addr++ <= 0x8000){
|
||||||
sram_bulk_write(i++);
|
sram_bulk_write(i++);
|
||||||
sram_bulk_write_next();
|
sram_bulk_write_next();
|
||||||
}
|
}
|
||||||
@ -257,7 +263,7 @@ void test_bulk_read_write(){
|
|||||||
|
|
||||||
addr = 0x000000;
|
addr = 0x000000;
|
||||||
sram_bulk_read_start(addr);
|
sram_bulk_read_start(addr);
|
||||||
while (addr <= 0x3fffff){
|
while (addr <= 0x8000){
|
||||||
printf("addr=0x%08lx %x\n",addr,sram_bulk_read());
|
printf("addr=0x%08lx %x\n",addr,sram_bulk_read());
|
||||||
sram_bulk_read_next();
|
sram_bulk_read_next();
|
||||||
addr++;
|
addr++;
|
||||||
@ -302,6 +308,10 @@ int main(void)
|
|||||||
system_init();
|
system_init();
|
||||||
printf("Sytem Init\n");
|
printf("Sytem Init\n");
|
||||||
|
|
||||||
|
//test_read_write();
|
||||||
|
//test_bulk_read_write();
|
||||||
|
//test_crc();
|
||||||
|
//while(1);
|
||||||
|
|
||||||
usbInit();
|
usbInit();
|
||||||
printf("USB Init\n");
|
printf("USB Init\n");
|
||||||
|
|||||||
@ -111,6 +111,7 @@ void sram_bulk_read_start(uint32_t addr)
|
|||||||
asm volatile ("nop");
|
asm volatile ("nop");
|
||||||
asm volatile ("nop");
|
asm volatile ("nop");
|
||||||
asm volatile ("nop");
|
asm volatile ("nop");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void sram_bulk_read_next(void)
|
inline void sram_bulk_read_next(void)
|
||||||
@ -125,6 +126,7 @@ inline void sram_bulk_read_next(void)
|
|||||||
asm volatile ("nop");
|
asm volatile ("nop");
|
||||||
asm volatile ("nop");
|
asm volatile ("nop");
|
||||||
asm volatile ("nop");
|
asm volatile ("nop");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -188,11 +190,12 @@ void sram_bulk_write_start(uint32_t addr)
|
|||||||
sreg_set(addr);
|
sreg_set(addr);
|
||||||
|
|
||||||
AVR_WR_PORT &= ~(1 << AVR_WR_PIN);
|
AVR_WR_PORT &= ~(1 << AVR_WR_PIN);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void sram_bulk_write_next(void)
|
inline void sram_bulk_write_next(void)
|
||||||
{
|
{
|
||||||
AVR_RD_PORT |= (1 << AVR_RD_PIN);
|
AVR_WR_PORT |= (1 << AVR_WR_PIN);
|
||||||
counter_up();
|
counter_up();
|
||||||
AVR_WR_PORT &= ~(1 << AVR_WR_PIN);
|
AVR_WR_PORT &= ~(1 << AVR_WR_PIN);
|
||||||
}
|
}
|
||||||
@ -200,6 +203,7 @@ inline void sram_bulk_write_next(void)
|
|||||||
inline void sram_bulk_write( uint8_t data)
|
inline void sram_bulk_write( uint8_t data)
|
||||||
{
|
{
|
||||||
AVR_DATA_PORT = data;
|
AVR_DATA_PORT = data;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void sram_bulk_write_end(void)
|
void sram_bulk_write_end(void)
|
||||||
@ -224,9 +228,18 @@ void sram_write(uint32_t addr, uint8_t data)
|
|||||||
sreg_set(addr);
|
sreg_set(addr);
|
||||||
|
|
||||||
AVR_WR_PORT &= ~(1 << AVR_WR_PIN);
|
AVR_WR_PORT &= ~(1 << AVR_WR_PIN);
|
||||||
|
|
||||||
|
|
||||||
AVR_DATA_PORT = data;
|
AVR_DATA_PORT = data;
|
||||||
|
|
||||||
|
|
||||||
AVR_WR_PORT |= (1 << AVR_WR_PIN);
|
AVR_WR_PORT |= (1 << AVR_WR_PIN);
|
||||||
|
asm volatile ("nop");
|
||||||
|
asm volatile ("nop");
|
||||||
|
asm volatile ("nop");
|
||||||
|
asm volatile ("nop");
|
||||||
|
asm volatile ("nop");
|
||||||
|
asm volatile ("nop");
|
||||||
AVR_CS_PORT |= (1 << AVR_CS_PIN);
|
AVR_CS_PORT |= (1 << AVR_CS_PIN);
|
||||||
|
|
||||||
avr_data_in();
|
avr_data_in();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user