Advertisement
modestoo

Untitled

Apr 27th, 2021 (edited)
689
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. module convtemp
  2. (
  3. input [15:0] data,
  4. input clk,
  5. output [3:0] tempdec,
  6. output [3:0] tempuni,
  7. output [3:0] tempdez,
  8. output [3:0] tempcem,
  9. output reg [1:0] sel
  10. );
  11. reg [3:0] dec;
  12. reg [3:0] uni;
  13. reg [3:0] dez;
  14. reg [3:0] cem;
  15. integer convert;
  16.  
  17. always @ (posedge clk)
  18.  
  19. begin
  20. convert <= data[14:8];
  21. if ((convert >= 32'd31 & data[7] == 1'b1) | convert >= 32'd32) //para temp maior que 31.5, sel representa quente
  22.     sel <= 2'b11;
  23. else if ((convert <= 32'd31 & data[7] == 1'b0) & (convert >= 32'd27 & data[7] == 1'b1))
  24.     sel <= 2'b10;                   // para temp entre 27.5 e 31, sel representa normal
  25. //if (convert >= 32'd32)
  26. //  sel <= 2'b11;
  27. //else if (convert == 32'd31)
  28. //  sel <= 2'b01;
  29. else        // para temps menores que 27.5, sel representa frio
  30.     sel <= 2'b10;
  31. // conversoes da temperatura para cada digito
  32. cem <= convert/100;
  33. dez <= (convert/10) % 10;
  34. uni <= convert % 10;
  35. if(data[7]) // data[7] representa o decimal da temperatura
  36.     dec <= 4'd5;
  37. else
  38.     dec <= 4'd0;
  39. end
  40. assign tempdec = dec;
  41. assign tempuni = uni;
  42. assign tempdez = dez;
  43. assign tempcem = cem;
  44. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement