update_speed.txt 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. Command 0x03a: Set number of dummy line period (7 bits)
  2. Range = 0..127
  3. POR = 22
  4. Command 0x03b: Set Gate (TGate) Line Width (4 bits)
  5. bits TGate Hz m (0x3a:22)
  6. 0000 30
  7. 0001 34
  8. 0010 38
  9. 0011 38
  10. 0100 44
  11. 0101 46
  12. 0110 52
  13. 0111 56
  14. 1000 62 50Hz 20ms [POR]
  15. 1001 68
  16. 1010 78 25ms
  17. Command 0x0b: Set Delay of gate and source non overlap period
  18. 0010 4
  19. ...
  20. 0101 10 [POR]
  21. ...
  22. 1110 28
  23. --> no influence on update time
  24. Formula:
  25. update_time = total_TS_ticks * 20ms + 10ms
  26. Ticks Measured Speed Measured Speed Calclated Calculated
  27. 0x3a:26 0x3a:22
  28. [Milliseconds] ticks*20+10
  29. 137 2808 2750
  30. 97 1992 1950
  31. 92 1888
  32. 87 1788 1767 1750
  33. 72 1482 1463 1450
  34. 0 11
  35. 1 31
  36. 2 51 51
  37. 10 215 212 210
  38. 20 415
  39. update/refresh duration:
  40. (refresh_lines + dummy_lines*2)*TGate*TS_Sum/f_OSC
  41. f_OSC=1MHz (according to the datasheets)
  42. refreh_lines = 296 (for the waveshare display, 0x045 cmd)
  43. dummy_lines = 22 (for the upcoming u8g2 code, 0x03a cmd)
  44. TGate = 62 (POR default, 0x03b cmd)
  45. TS_Sum: Sum of all TS entries of the second part of the LUT
  46. f_OSC: 1MHz according to the datasheet.
  47. so we have
  48. total_refresh_time = 21080*TS_Sum/1000000 = 21ms * TS_Sum
  49. --> this is more or less close to the measure values.
  50. Ticks=61
  51. history clk clock on clock off Time
  52. on no no 1228
  53. on yes no 1238
  54. off yes yes 1382
  55. on yes yes 1320
  56. --> clock enable may take up to 150ms in this example
  57. clock enable (clock was off before) --> 150ms
  58. clock enable (clock was on before) --> 10ms