Étape 3: Création de la partie émettrice 2
La machine d’état commence par un bloc de toujours et une instruction case. Le toujours bloc déclencheurs sur une modification de l’État, transmettre signal, ou le nombre d’octets. La machine d’État permettra le module entrer dans un état d’inactivité lorsque les données ne sont transmises.
Le module final est joint ci-dessous.
always @ (state or bitcounter or transmit) begin load <= 0; shift <= 0; clear <= 0; Tx <= 1; case (state) 0: begin if (transmit == 1) begin nextstate <= 1; load <= 1; shift <= 0; clear <= 0; end else begin nextstate <= 0; Tx <= 1; end end 1: begin if (bitcounter >= 10) begin nextstate <= 0; clear <= 1; end else begin nextstate <= 1; shift <= 1; Tx <= rightshiftreg[0]; end end endcase end