Hardware Delphi

Title: Set a delay without using CPU time
Use SleepEx or Sleep WinAPI function. First parameter is a pause in milliseconds.
SleepEx(3000, False);