Advertisement
Guest User

Untitled

a guest
May 20th, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.29 KB | None | 0 0
  1. #define ADC_CHANNEL 14
  2.  
  3. // Põhiprogramm
  4. int main(void)
  5. {
  6. unsigned short value;
  7. signed short temperature;
  8. signed short fahrenheit;
  9. char text[16];
  10.  
  11. // LCD ekraani algseadistamine
  12. lcd_gfx_init();
  13.  
  14. // LCD ekraani puhastamine ja taustavalguse seadmine
  15. lcd_gfx_clear();
  16. lcd_gfx_backlight(true);
  17.  
  18. // Programmi nime kuvamine
  19. lcd_gfx_goto_char_xy(1, 1);
  20. lcd_gfx_write_string("Termomeeter");
  21. lcd_gfx_goto_char_xy(3, 3);
  22. lcd_gfx_write_string("Fahrenheit");
  23. lcd_gfx_goto_char_xy(5, 5);
  24. lcd_gfx_write_string("Kelvin");
  25.  
  26. // ADC muunduri seadistamine
  27. adc_init(ADC_REF_AVCC, ADC_PRESCALE_8);
  28.  
  29. // Lõputu tsükkel
  30. while (1)
  31. {
  32. // Termistori pinge 4-kordselt ümardatud väärtuse lugemine
  33. value = adc_get_average_value(ADC_CHANNEL, 4);
  34.  
  35. // ADC väärtuse kraadideks ümberarvutamine
  36. temperature = thermistor_calculate_celsius(value);
  37. fahrenheit = (temperature * 9 / 5) + 32;
  38. // Temperatuuri tekstiks teisendamine
  39. // Kraadi märgi kuvamiseks on oktaalarv 56
  40. sprintf(text, "%d\56C ", temperature);
  41. lcd_gfx_goto_char_xy(2, 2);
  42. lcd_gfx_write_string(text);
  43. sprintf(text, "%d\56F ", fahrenheit);
  44. lcd_gfx_goto_char_xy(7, 7);
  45. lcd_gfx_write_string(text);
  46.  
  47. // Teksti kuvamine LCD kolmandal real
  48. f
  49.  
  50.  
  51. hw_delay_ms(500);
  52.  
  53. }
  54. return 0;
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement