解決済! 解決策の投稿を見る。
Hi Claude
It is possible to send USB data content directly from FLASH but you need to use the backdoor address since the USB controller is a DMA master and not the CPU. You probably known that the USB controller also works with little-endian addresses so it is easy to add an automatic conversion to the backdoor address in the same step as follows:
extern void *fnLE_add_F(unsigned long long_word)
// convert to backboor address if the input address is not in RAM
{
if (long_word < START_OF_SRAM) { // if the address is in FLASH we use FLASH backdoor
address to allow USB controller to access it
long_word += BACKDOOR_FLASH;
}
return (void *)fnLE_add(long_word); // perform big-endian to little endian conversion
}
See also: http://www.utasker.com/docs/uTasker/USB_User_Guide.PDF
and http://www.utasker.com/docs/uTasker/uTaskerV1.3_USB_Demo.PDF
Regards
Mark
www.uTasker.com
- OS, TCP/IP stack, USB, device drivers and simulator for M521X, M521XX, M5221X, M5222X, M5223X, M5225X. One package does them all - "Embedding it better..."
Hi Claude
It is possible to send USB data content directly from FLASH but you need to use the backdoor address since the USB controller is a DMA master and not the CPU. You probably known that the USB controller also works with little-endian addresses so it is easy to add an automatic conversion to the backdoor address in the same step as follows:
extern void *fnLE_add_F(unsigned long long_word)
// convert to backboor address if the input address is not in RAM
{
if (long_word < START_OF_SRAM) { // if the address is in FLASH we use FLASH backdoor
address to allow USB controller to access it
long_word += BACKDOOR_FLASH;
}
return (void *)fnLE_add(long_word); // perform big-endian to little endian conversion
}
See also: http://www.utasker.com/docs/uTasker/USB_User_Guide.PDF
and http://www.utasker.com/docs/uTasker/uTaskerV1.3_USB_Demo.PDF
Regards
Mark
www.uTasker.com
- OS, TCP/IP stack, USB, device drivers and simulator for M521X, M521XX, M5221X, M5222X, M5223X, M5225X. One package does them all - "Embedding it better..."
Thank you Mark,
All is clear now.
Claude