ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 апреля
607009 Топик полностью
shan (30.06.2015 16:44 - 16:53, просмотров: 88) ответил SciFi на Неправильно поняли. Я с ртосами не возился, но даже мне понятно. Вы в курсе, для чего существуют мьютексы, семафоры и прочее?
Конечно. В проекте уже есть с десяток семафоров. Но к функциям SPI драйвера и SPI флеш памяти я напрямую не обращаюсь а только через файловые функции ОС. Запись в файл только из одного потока. Функции чтения из других потоков активируются действиями пользователя и и при зависании не активны (руку на отсечение не дам и буду это проверять). Понимаю что SPI запись (команды) происходит и при чтении из SPI-FLASH памяти. Поэтому когда зашёл разговор про STATIC была идея отменить STATIC для локальных переменных, чтобы они выделялись из стека при каждом вызове и не портились при повторном вызове из другого потока незавершённой функции. Буду ставить семафоры во всех потоках на любое обращение к файловым функциям с обращением к этой SPI флеш памяти. В проекте есть SPI- SD карта, но по там драйвера другие. По сути тот -же текст, но имена я изменил, чтобы SPI флеш и SD не конфликтовали. и естественно они работают через физически разные SPI.