Ja osobne by som bud nastavil casovac na HW generovanie HSYNC frekvencie (nastavis to ako periodicke PWM a priamo na HSYNC vystup), a potom pixely generoval tak ze by som v slucke cital hodnotu casovaca a pri urcitej hodnote zmenil RGB vystupy. Sucasne by som pocital pocet HSYNC a po patricnom pocte by som generoval VSYNC. Trvanie VSYNC je presny pocet HSYNC.
Druha moznost je nastavit si HW casovac na generovanie IRQ pre kazdy pixel, za predpokladu ze uC bezi na dostatocnej frekvencii aby to stihal. A v IRQ handleri generoval R,G,B, stavy a po urcitom pocte pixelov (v IRQ handleri si ratas pocet pixelov) generoval HSYNC, a po urcitom pocte HSYNCov generoval VSYNC.
Generovat R,G,B, stavy musis velmi optimalne (co najmenej instrukcii), ptz pixel clock je spravidla dost vysoky (ked chces len pruhy tak to mas trochu ulahcene ale na optimalnost treba mysliet).
Tymito uvahami si mal zacat uplne na zaciatku, az potom sa robi schema napr. aby si vystup HSYNC dal na spravny vystup ktory moze byt PWM apod.
Tieto dve metody su podla mna normalne (ta druha je lepsia - presnejsia). Cokolvek ostatne by bolo podla mna totoalna polonefukcna sracka a keby som bol Prof. tak by som nejake delaye neakceptoval.