teensy-3-6-digital-io.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #pragma once
  2. #include <stdint.h>
  3. enum class DigitalPort {
  4. // Common with Teensy 3.1 / 3.2
  5. D0, // PTB16
  6. D1, // PTB17
  7. D2, // PTD0
  8. D3, // PTA12
  9. D4, // PTA13
  10. D5, // PTD7
  11. D6, // PTD4
  12. D7, // PTD2
  13. D8, // PTD3
  14. D9, // PTC3
  15. D10, // PTC4
  16. D11, // PTC6
  17. D12, // PTC7
  18. D13, // PTC5
  19. D14, // PTD1
  20. D15, // PTC0
  21. D16, // PTB0
  22. D17, // PTB1
  23. D18, // PTB3
  24. D19, // PTB2
  25. D20, // PTD5
  26. D21, // PTD6
  27. D22, // PTC1
  28. D23, // PTC2
  29. // Only on Teensy 3.6
  30. D24, // PTE26
  31. D25, // PTA5
  32. D26, // PTA14
  33. D27, // PTA15
  34. D28, // PTA16
  35. D29, // PTB18
  36. D30, // PTB19
  37. D31, // PTB10
  38. D32, // PTB11
  39. D33, // PTE24
  40. D34, // PTE25
  41. D35, // PTC8
  42. D36, // PTC9
  43. D37, // PTC10
  44. D38, // PTC11
  45. D39, // PTA17
  46. D40, // PTA28
  47. D41, // PTA29
  48. D42, // PTA26
  49. D43, // PTB20
  50. D44, // PTB22
  51. D45, // PTB23
  52. D46, // PTB21
  53. D47, // PTD8
  54. D48, // PTD9
  55. D49, // PTB4
  56. D50, // PTB5
  57. D51, // PTD14
  58. D52, // PTD13
  59. D53, // PTD12
  60. D54, // PTD15
  61. D55, // PTD11
  62. D56, // PTE10
  63. D57, // PTE11
  64. // No port
  65. True, // Fictive port: no effect on write, always read true
  66. False // Fictive port: no effect on write, always read false
  67. } ;
  68. enum class DigitalMode {
  69. OUTPUT,
  70. OUTPUT_OPEN_COLLECTOR,
  71. INPUT,
  72. INPUT_PULLDOWN,
  73. INPUT_PULLUP
  74. } ;
  75. void pinMode (const DigitalPort inPort, const DigitalMode inMode) ;
  76. bool digitalRead (const DigitalPort inPort) ;
  77. void digitalWrite (const DigitalPort inPort, const bool inValue) ;
  78. void digitalToggle (const DigitalPort inPort) ;