Преглед изворни кода

[arduino][stm32l475 pandora]update readme

Meco Man пре 2 година
родитељ
комит
21e35dbbfd
1 измењених фајлова са 75 додато и 68 уклоњено
  1. 75 68
      bsp/stm32/stm32l475-atk-pandora/applications/arduino_pinout/README.md

+ 75 - 68
bsp/stm32/stm32l475-atk-pandora/applications/arduino_pinout/README.md

@@ -20,77 +20,84 @@ Hardware Drivers Config --->
 
 ### 2.1 Arduino引脚排布统览
 
-| Arduino引脚编号       | STM32引脚编号 | 5V容忍   | 备注                                                         |
-| --------------------- | ------------- | -------- | ------------------------------------------------------------ |
-| 0 (D0)                | --            |          | 该引脚在UNO板中为串口RX引脚,不可当做普通IO                  |
-| 1 (D1)                | --            |          | 该引脚在UNO板中为串口TX引脚,不可当做普通IO                  |
-| 2 (D2)                | PB9           | 是       | 普通IO                                                       |
-| 3 (D3)                | PD15          | 是       | PWM(定时器4发生)                                           |
-| 4 (D4)                | PA8           | 是       | 普通IO                                                       |
-| 5 (D5)                | PD14          | 是       | 普通IO                                                       |
-| 6 (D6)                | PB11          | 是       | PWM(定时器2发生)                                           |
-| 7 (D7)                | PB14          | 是       | 普通IO                                                       |
-| 8 (D8)                | PB12          | 是       | 普通IO                                                       |
-| 9 (D9)                | PD12          | 是       | PWM(定时器4发生)                                           |
-| 10 (D10)              | PB10          | 是       | PWM(定时器2发生)                                           |
-| 11 (D11)              | PB8           | 是       | PWM(定时器4发生)                                           |
-| 12 (D12)              | PB15          | 是       | 普通IO                                                       |
-| 13 (D13)              | PB13          | 是       | 普通IO                                                       |
-| 14 (D14)              | PA1           | 是       | 振动电机-A                                                   |
-| 15 (D15)              | PA0           | 是       | 振动电机-B                                                   |
-| 16 (D16)              | PB2           | 是       | 蜂鸣器                                                       |
-| 17 (D17)              | PD10          | 是       | KEY0                                                         |
-| 18 (D18)              | PD9           | 是       | KEY1                                                         |
-| 19 (D19)              | PD8           | 是       | KEY2                                                         |
-| 20 (D20)              | PC13          | 是       | KEY-WKUP                                                     |
-| 21 (D21)              | PE7           | 是       | 红色LED                                                      |
-| 22 (D22, LED_BUILTIN) | PE8           | 是       | 绿色LED,Arduino默认LED                                      |
-| 23 (D23)              | PE9           | 是       | 蓝色LED,具有PWM功能(定时器1发生)                          |
-| 24 (D24)              | PB0           | 3.6V容忍 | 红外发送                                                     |
-| 25 (D25)              | PB1           | 是       | 红外接收                                                     |
-| A0                    | PC2           | 是       | ADC                                                          |
-| A1                    | PC4           | 是       | ADC                                                          |
-| A2                    | --            |          | 芯片内部参考电压 ADC                                         |
-| A3                    | --            |          | 芯片内部温度 ADC                                             |
-| DAC0                  | PA4           | 3.6V容忍 | 真模拟输出 DAC                                               |
-| --                    | PC7           | 是       | I2C1-SDA,被RT-Thread的I2C设备框架i2c1总线接管,不可当做普通IO |
-| --                    | PC6           | 是       | I2C1-SCL,被RT-Thread的I2C设备框架i2c1总线接管,不可当做普通IO |
+| Arduino引脚编号           | STM32引脚编号 | 5V容忍    | 备注                                           |
+| --------------------- | --------- | ------- | -------------------------------------------- |
+| 0 (D0)                | --        |         | 该引脚在UNO板中为串口RX引脚,不可当做普通IO                    |
+| 1 (D1)                | --        |         | 该引脚在UNO板中为串口TX引脚,不可当做普通IO                    |
+| 2 (D2)                | PB9       | 是       | 普通IO                                         |
+| 3 (D3)                | PD15      | 是       | PWM(定时器4发生)                                  |
+| 4 (D4)                | PA8       | 是       | 普通IO                                         |
+| 5 (D5)                | PD14      | 是       | 普通IO                                         |
+| 6 (D6)                | PB11      | 是       | PWM(定时器2发生)                                  |
+| 7 (D7)                | PB14      | 是       | 普通IO                                         |
+| 8 (D8)                | PB12      | 是       | 普通IO                                         |
+| 9 (D9)                | PD12      | 是       | PWM(定时器4发生)                                  |
+| 10 (D10)              | PB10      | 是       | PWM(定时器2发生)                                  |
+| 11 (D11)              | PB8       | 是       | PWM(定时器4发生)                                  |
+| 12 (D12)              | PB15      | 是       | 普通IO                                         |
+| 13 (D13)              | PB13      | 是       | 普通IO                                         |
+| 14 (D14)              | PA1       | 是       | 振动电机-A                                       |
+| 15 (D15)              | PA0       | 是       | 振动电机-B                                       |
+| 16 (D16)              | PB2       | 是       | 蜂鸣器                                          |
+| 17 (D17)              | PD10      | 是       | KEY0                                         |
+| 18 (D18)              | PD9       | 是       | KEY1                                         |
+| 19 (D19)              | PD8       | 是       | KEY2                                         |
+| 20 (D20)              | PC13      | 是       | KEY-WKUP                                     |
+| 21 (D21)              | PE7       | 是       | 红色LED                                        |
+| 22 (D22, LED_BUILTIN) | PE8       | 是       | 绿色LED,Arduino默认LED                           |
+| 23 (D23)              | PE9       | 是       | 蓝色LED,具有PWM功能(定时器1发生)                        |
+| 24 (D24)              | PB0       | 3.6V容忍  | 红外发送                                         |
+| 25 (D25)              | PB1       | 是       | 红外接收                                         |
+| 26 (D26)              | PD7       | 是       | LCD 片选 CS                                    |
+| 27 (D27)              | PB6       | 是       | LCD 复位 RESET                                 |
+| 28 (D28)              | PB4       | 是       | LCD D/C 数据命令选择                               |
+| 29 (D29)              | PB7       | 是       | LCD 背光电源                                     |
+| 30 (D30)              | PD4       | 是       | 无线模块 CE                                      |
+| 31 (D31)              | PD3       | 是       | 无线模块 中断                                      |
+| 32 (D32)              | PD5       | 是       | 无线模块 片选 CS                                   |
+| A0                    | PC2       | 是(但不建议) | ADC                                          |
+| A1                    | PC4       | 是(但不建议) | ADC                                          |
+| A2                    | --        |         | 芯片内部参考电压 ADC                                 |
+| A3                    | --        |         | 芯片内部温度 ADC                                   |
+| DAC0                  | PA4       | 3.6V容忍  | 真模拟输出 DAC                                    |
+| --                    | PC7       | 是       | I2C1-SDA,被RT-Thread的I2C设备框架i2c1总线接管,不可当做普通IO |
+| --                    | PC6       | 是       | I2C1-SCL,被RT-Thread的I2C设备框架i2c1总线接管,不可当做普通IO |
 
 > 注意:
->
+> 
 > 1. 驱动舵机和analogWrite函数要选择不同定时器发生的PWM信号引脚,由于STM32的定时器4个通道需要保持相同的频率,如果采用相同的定时器发生的PWM分别驱动舵机和analogWrite,可能会导致舵机失效。
 > 2. USART1是潘多拉板的默认串口,理论应对接到了Arduino引脚编号的D0和D1,但是其实际用于串口通信,因此不允许当做普通IO来使用和操作。
 
 ### 2.2 板载排针的Arduino引脚排布
 
-| STM32引脚编号 | Arduino引脚编号 | 备注     | STM32引脚编号 | Arduino引脚编号 | 备注     |
-| ------------- | --------------- | -------- | ------------- | --------------- | -------- |
-| PB8           | 11 (D11)        | PWM      | PB9           | 2 (D2)          | 普通IO   |
-| PC7           | A4              | I2C1-SDA | PA8           | 4 (D4)          | 普通IO   |
-| PD15          | 3 (D3)          | PWM      | PC6           | A5              | I2C1-SCL |
-| PD13          | --              | --       | PD14          | 5 (D5)          | 普通IO   |
-| PC2           | A0              | ADC      | PD12          | 9 (D9)          | PWM      |
-| PB14          | 7 (D7)          | 普通IO   | PB15          | 12 (D12)        | 普通IO   |
-| PB12          | 8 (D8)          | 普通IO   | PB13          | 13 (D13)        | 普通IO   |
-| PB10          | 10 (D10)        | PWM      | PB11          | 6 (D6)          | PWM      |
-| PC4           | A1              | ADC      | PA4           | DAC0            | DAC      |
+| STM32引脚编号 | Arduino引脚编号 | 备注       | STM32引脚编号 | Arduino引脚编号 | 备注       |
+| --------- | ----------- | -------- | --------- | ----------- | -------- |
+| PB8       | 11 (D11)    | PWM      | PB9       | 2 (D2)      | 普通IO     |
+| PC7       | A4          | I2C1-SDA | PA8       | 4 (D4)      | 普通IO     |
+| PD15      | 3 (D3)      | PWM      | PC6       | A5          | I2C1-SCL |
+| PD13      | --          | --       | PD14      | 5 (D5)      | 普通IO     |
+| PC2       | A0          | ADC      | PD12      | 9 (D9)      | PWM      |
+| PB14      | 7 (D7)      | 普通IO     | PB15      | 12 (D12)    | 普通IO     |
+| PB12      | 8 (D8)      | 普通IO     | PB13      | 13 (D13)    | 普通IO     |
+| PB10      | 10 (D10)    | PWM      | PB11      | 6 (D6)      | PWM      |
+| PC4       | A1          | ADC      | PA4       | DAC0        | DAC      |
 
 ### 2.3 板载外设的Arduino引脚排布
 
-| 外设名称              | Arduino引脚编号       | STM32引脚编号 |
-| --------------------- | --------------------- | ------------- |
-| 振动电机-A            | 14 (D14)              | PA1           |
-| 振动电机-B            | 15 (D15)              | PA0           |
-| 蜂鸣器                | 16 (D16)              | PB2           |
-| KEY0                  | 17 (D17)              | PD10          |
-| KEY1                  | 18 (D18)              | PD9           |
-| KEY2                  | 19 (D19)              | PD8           |
-| KEY-WKUP              | 20 (D20)              | PC13          |
-| 红LED                 | 21 (D21)              | PE7           |
-| 绿LED,Arduino默认LED | 22 (D22, LED_BUILTIN) | PE8           |
-| 蓝LED,具有PWM功能    | 23 (D23)              | PE9           |
-| 红外发射              | 24 (D24)              | PB0           |
-| 红外接收              | 25 (D25)              | PB1           |
+| 外设名称              | Arduino引脚编号           | STM32引脚编号 |
+| ----------------- | --------------------- | --------- |
+| 振动电机-A            | 14 (D14)              | PA1       |
+| 振动电机-B            | 15 (D15)              | PA0       |
+| 蜂鸣器               | 16 (D16)              | PB2       |
+| KEY0              | 17 (D17)              | PD10      |
+| KEY1              | 18 (D18)              | PD9       |
+| KEY2              | 19 (D19)              | PD8       |
+| KEY-WKUP          | 20 (D20)              | PC13      |
+| 红LED              | 21 (D21)              | PE7       |
+| 绿LED,Arduino默认LED | 22 (D22, LED_BUILTIN) | PE8       |
+| 蓝LED,具有PWM功能      | 23 (D23)              | PE9       |
+| 红外发射              | 24 (D24)              | PB0       |
+| 红外接收              | 25 (D25)              | PB1       |
 
 ## 3 I2C总线
 
@@ -112,18 +119,18 @@ I2C的引脚都是被RT-Thread I2C设备框架接管的,不需要直接操控
 
 本BSP适配了STM32的两个芯片内部ADC通道,可以通过 analogRead 函数来分别获取如下功能:
 
-| 特殊功能             | Arduino引脚编号 | STM32引脚编号 |
-| -------------------- | --------------- | ------------- |
-| 芯片内部参考电压 ADC | A2              | --            |
-| 芯片内部温度 ADC     | A3              | --            |
+| 特殊功能         | Arduino引脚编号 | STM32引脚编号 |
+| ------------ | ----------- | --------- |
+| 芯片内部参考电压 ADC | A2          | --        |
+| 芯片内部温度 ADC   | A3          | --        |
 
 ### 5.2 真模拟输出功能 (True Analog Output)
 
 Arduino的 analogWrite 函数虽为模拟写,但是实际输出的是PWM数字信号,并非真正的模拟信号。这是由于Arduino早期使用的AVR单片机并不支持DAC的功能,因此这个习惯就被保留了下来。但是随着Arduino支持芯片的丰富,部分高级芯片已经内建了DAC(例如Arduino官方板MKR、Zero等),因此Arduino的 analogWrite 函数后续也支持了真模拟输出功能。
 
-| 特殊功能                        | Arduino引脚编号 | STM32引脚编号 |
-| ------------------------------- | --------------- | ------------- |
-| 真模拟输出 (True Analog Output) | DAC0            | PA4           |
+| 特殊功能                       | Arduino引脚编号 | STM32引脚编号 |
+| -------------------------- | ----------- | --------- |
+| 真模拟输出 (True Analog Output) | DAC0        | PA4       |
 
 在潘多拉板上,使用PA4来当做真模拟输出功能引脚,使用方法为: