Nehledej v tom zadnou slozitost. Shodis CS a nasleduje stavova masina while-switch-case, kdy mezi stavy jde CLK nahoru a
1) nahodis Din startbit a sestupna hrana
2) nahodis Din 1, ze chces cist kanal(0 by byl rozdil) a sestupna hrana
3) nahodis Din 1, ze chces MSB first a sestupna hrana
4) sestupna hrana(mala pauza) a prijde ti na Dout nulovej startbit
5-17) sestupna hrana a precist bit z Dout, pricist a orotovat
CS opet nahoru
Po vzestupnej a sestupnej hrane par NOPu. Casovani je hrube nekriticky, viz aplikacni poznamka, takze nejakej interrupt mezi te trapit nemusi, zvlast pokud bude rychlej
A je to.