pins_arduino.c 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * Copyright (c) 2006-2021, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2022-04-19 Meco Man first version
  9. */
  10. #include <Arduino.h>
  11. #include <board.h>
  12. #include "pins_arduino.h"
  13. /*
  14. {Arduino Pin, RT-Thread Pin [, Device Name(PWM or ADC), Channel]}
  15. [] means optional
  16. Digital pins must NOT give the device name and channel.
  17. Analog pins MUST give the device name and channel(ADC, PWM or DAC).
  18. Arduino Pin must keep in sequence.
  19. */
  20. const pin_map_t pin_map_table[]=
  21. {
  22. {D0}, /* RX */
  23. {D1}, /* TX */
  24. {D2, GET_PIN(A,10)},
  25. {D3, GET_PIN(B,3), "pwm2", 2}, /* PWM */
  26. {D4, GET_PIN(B,5)},
  27. {D5, GET_PIN(B,4), "pwm3", 1}, /* PWM */
  28. {D6, GET_PIN(B,10), "pwm2", 3}, /* PWM */
  29. {D7, GET_PIN(A,8)},
  30. {D8, GET_PIN(A,9)},
  31. {D9, GET_PIN(C,7), "pwm3", 2}, /* PWM */
  32. {D10}, /* SPI1-CS */
  33. {D11}, /* SPI1-MOSI */
  34. {D12}, /* SPI1-MISO */
  35. {D13}, /* SPI1-SCK */
  36. {D14}, /* I2C1-SDA */
  37. {D15}, /* I2C1-SCL */
  38. {D16, GET_PIN(C,13)}, /* user button */
  39. {A0, GET_PIN(A,0), "adc1", 0}, /* ADC */
  40. {A1, GET_PIN(A,1), "adc1", 1}, /* ADC */
  41. {A2, GET_PIN(A,4), "adc1", 4}, /* ADC */
  42. {A3, GET_PIN(B,0), "adc1", 8}, /* ADC */
  43. {A4, GET_PIN(C,1), "adc1", 11}, /* ADC */
  44. {A5, GET_PIN(C,0), "adc1", 10}, /* ADC */
  45. {A6, RT_NULL, "adc1", 17}, /* ADC, On-Chip: internal reference voltage, ADC_CHANNEL_VREFINT */
  46. {A7, RT_NULL, "adc1", 16} /* ADC, On-Chip: internal temperature sensor, ADC_CHANNEL_TEMPSENSOR */
  47. };