Есть довольно неплохая официальная USB библиотека для stm32fxx, вроде как все неплохо и все работает, но есть одно но! в ней все построено на стейт машине и опросах, то есть постоянно крутится эта самая машина и в зависимости от флагов, выставляемых в прерываниях, меняет свое состояние и т.д. Соответственно вся эта машина крутится у меня в отдельном потоке, и когда я начинаю активно что-то передавать/принимать, то этот поток сжирает весь процессор. Поэтому хочется все это чудо перевести на стандартную событийную структуру - поток ждет событие, прерывание его генерит, что мне кажется сократит загрузку проца в разы. Но библиотека довольно большая и разбираться во всех ее состояних и флагах, чтобы вставить где надо события, совсем не хочется, поэтому прошу совета как быть, может кто уже сталкивался с такой проблемой?
|