Merge pull request #3362 from bigmagic123/fix_spi

Fix spi
This commit is contained in:
Bernard Xiong 2020-02-06 22:05:22 +08:00 committed by GitHub
commit cd8dd40cd2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 10 deletions

View File

@ -35,16 +35,16 @@ RT-Thread对树莓派的支持主要从树莓派2B开始它是一个四核Cor
Windows环境下推荐使用[env工具][1]进行编译。 Windows环境下推荐使用[env工具][1]进行编译。
Linux下推荐使用gcc工具 [gcc-arm-none-eabi-4_8-2014q1_linux][2],如果还没有编译工具,下载后,解开文件。 Linux下推荐使用gcc工具 gcc-arm-none-eabi-5_4-2016q3,如果还没有编译工具,下载后,解开文件。
``` ```
tar vxf gcc-arm-none-eabi-4_8-2014q1_linux.tar.bz2 tar vxf gcc-arm-none-eabi-5_4-2016q3-20160926-linux.tar.bz2
``` ```
Linux环境下需要修改编译器目录设置修改`bsp/raspi3-32/rtconfig.py`中的 Linux环境下需要修改编译器目录设置修改`bsp/raspi3-32/rtconfig.py`中的
``` ```
EXEC_PATH = r'/opt/gcc-arm-none-eabi-4_8-2014q1_gri/bin' EXEC_PATH = r'/opt/gcc-arm-none-eabi-5_4-2016q3/bin'
``` ```
为编译工具的实际所在目录,这里注意要加上后缀 `/bin` 为编译工具的实际所在目录,这里注意要加上后缀 `/bin`

View File

@ -18,9 +18,9 @@
void spi_gpio_write(rt_uint8_t pin, rt_uint8_t val) void spi_gpio_write(rt_uint8_t pin, rt_uint8_t val)
{ {
if (val) if (val)
BCM283X_GPIO_GPSET(pin / 32) = 1 << (pin % 32); BCM283X_GPIO_GPSET((pin / 32)) = 1 << (pin % 32);
else else
BCM283X_GPIO_GPCLR(pin / 32) = 0 << (pin % 32); BCM283X_GPIO_GPCLR((pin / 32)) = 1 << (pin % 32);
} }
struct raspi_spi_hw_config struct raspi_spi_hw_config
@ -147,11 +147,10 @@ static rt_uint32_t raspi_spi_xfer(struct rt_spi_device *device, struct rt_spi_me
flag = 0; flag = 0;
else else
flag = 1; flag = 1;
if (message->cs_take);
if (message->cs_take) // (config.mode & RT_SPI_CS_HIGH)?
(config.mode & RT_SPI_CS_HIGH)? // spi_gpio_write(cs_pin, 1):
spi_gpio_write(cs_pin, 1): // spi_gpio_write(cs_pin, 0);
spi_gpio_write(cs_pin, 0);
/* deal data */ /* deal data */
res = spi_transfernb((rt_uint8_t *)message->send_buf, (rt_uint8_t *)message->recv_buf, res = spi_transfernb((rt_uint8_t *)message->send_buf, (rt_uint8_t *)message->recv_buf,