Я для себя делал это так: реализовал read и write для работы с последовательным портом процессора (в тот раз это был LPC2106), а далее читал данные и обрабатывал их, выдавая результаты в тот же порт. Единственной проблемой этого подхода является возможность переполнения буфера приема, т.к. нужно использовать контроль потока. Т.к. использовать CTS/RTS возможности не было, пришлось делать XON/XOFF контроль за передачей и гонять данные в формате UUE (выполнять перекодирование двоичных данных в текстовый вид). Кроме того, для контроля целостности при передаче я ввел контрольные суммы на каждый передаваемый блок данных.
Поскольку Вы не указали конкретный тип используемого процессора, то мне сложно делать предположения относительно других вариантов решения этой задачи. Но могу еще предложить разместить этот файл в фиксированном месте ОП процессора, если объем позволяет. В этом случае операции с файлом реализовать проце простого - запись и чтение из памяти (что может быть проще?

). А заливать и сливать содержимое ОП (т.е. и содержимое Вашего файла) можно с помощью каких-либо имеющихся утилит (думаю, что Keil это позволяет делать).