[an error occurred while processing this directive]
|
в spru317 написано, что для 16-Bit Data Access of 16-Bit-Wide Memory может использоваться D bus, E bus or DMA bus. Если просто в программе (без предварительных настроек и привлечений DMA) написали
*(unsigned volatile int*)0x40001=число;
то с помощью чего будет передаваться число на внешнее естройство - с помощью D bus, E bus or DMA bus?
Вопрос задаю вот в какой связи:
если существует несколько посылок подряд
*(unsigned volatile int*)0x40001=число;
*(unsigned volatile int*)0x40002=число;
*(unsigned volatile int*)0x40003=число;
*(unsigned volatile int*)0x40004=число;
*(unsigned volatile int*)0x40005=число;
и после них идет поднятие GHIO4
*(ioport unsigned volatile int*)0x3401=0x0010;
то осциллографом вижу что GPIO4 поднимается после занесения второго числа
*(unsigned volatile int*)0x40002=число;
(перед занесением третьего *(unsigned volatile int*)0x40003=число;)
выходит что три операции
*(unsigned volatile int*)0x40003=число;
*(unsigned volatile int*)0x40004=число;
*(unsigned volatile int*)0x40005=число;
гдето запомнились и выполняются уже после поднятия GPIO4
Вот и сам вопрос - где они запоминаюся, эти три инструкции (что для этого использует процессор - DMAcontroller, peripheralBusController или что-то другое)?
E-mail: info@telesys.ru