時間の計算については、CPUの1命令が1クロックっていうことでいいんですかね。

11MHzのCPUで60Hzだとすると
11,000,000 / 60 = 183333命令
1000msec / 60 = 16.6msec
となるから

183333命令実行したあとに、16.6msec以下の実行時間であった場合
その差分Sleepするっていう処理にすればいいのかな?

あまりハードのこととか詳しくないのですが、どんなものでも1命令1クロックで
計算することには、ちょっと違和感がありますけど。