Hi All,
А всё таки круто Philips замутил, предоставив высокоуровневый API для работы с флешью...
Пытаюсь заюзать IAP.Грабли начались сразу: делаю как в мануале #define IAP_LOCATION 0x7ffffff1 typedef void (*IAP)(unsigned int [],unsigned int[]); IAP iap_entry = (IAP)(IAP_LOCATION); unsigned int command[5]; unsigned int result[2]; пытаюсь получить, ну хотя бы версию бутлодера disableIRQ(); command[0] = 55;//Read Boot code version result[0] = 0; result[1] = 0; result[2] = 0; iap_entry (command, result);//тут процессор зависает enableIRQ(); ModbusBuffer[_u_data_section_cm03+0] = result[0];//status code ModbusBuffer[_u_data_section_cm03+1] = result[1];//Major ModbusBuffer[_u_data_section_cm03+2] = result[2];//Minor
на месте iap_entry (command, result); проц наглухо зависает. Пишу на gcc в arm-mode, функции IAP в Thumb(так в мануале сказано).
Что делают в таких случаях делают ARM embedder`ы? Я продолжаю курить мануалы искать экзамплы, но надеюсь на ваш дельный совет.
С уважением, Герасим.
Замути хитовый расколбас