How & Why use Gray Code A gray counter is a binary counter where only one bit changes at a time. Gray code is mostly used to send values across clock domains (this way it has an uncertainty of only 1). The easiest way to create a Gray counter is to f