renesas在用keil編譯時(shí)報(bào)錯(cuò):
詳細(xì)信如下:
../libraries/HAL_Drivers/drv_gpio.c(324): error: incompatible function pointer types initializing 'void (*)(struct rt_device , rt_base_t, rt_uint8_t)' (aka 'void ( )(struct rt_device *, long, unsigned char)') with an expression of type 'void (rt_device_t, rt_base_t, rt_base_t)' (aka 'void (struct rt_device , long, long)') [-Wincompatible-function-pointer-types]
.pin_mode = ra_pin_mode,
^~~~~~~~~~~
../libraries/HAL_Drivers/drv_gpio.c(325): error: incompatible function pointer types initializing 'void ( )(struct rt_device , rt_base_t, rt_uint8_t)' (aka 'void ( )(struct rt_device *, long, unsigned char)') with an expression of type 'void (rt_device_t, rt_base_t, rt_base_t)' (aka 'void (struct rt_device , long, long)') [-Wincompatible-function-pointer-types]
.pin_write = ra_pin_write,
^~~~~~~~~~~~
../libraries/HAL_Drivers/drv_gpio.c(326): error: incompatible function pointer types initializing 'rt_int8_t ( )(struct rt_device , rt_base_t)' (aka 'signed char ( )(struct rt_device *, long)') with an expression of type 'int (rt_device_t, rt_base_t)' (aka 'int (struct rt_device , long)') [-Wincompatible-function-pointer-types]
.pin_read = ra_pin_read,
^~~~~~~~~~~
../libraries/HAL_Drivers/drv_gpio.c(327): error: incompatible function pointer types initializing 'rt_err_t ( )(struct rt_device , rt_base_t, rt_uint8_t, void ( )(void *), void )' (aka 'long ( )(struct rt_device , long, unsigned char, void ( )(void *), void *)') with an expression of type 'rt_err_t (struct rt_device , rt_int32_t, rt_uint32_t, void ( )(void *), void *)' (aka 'long (struct rt_device , int, unsigned int, void ( )(void *), void )') [-Wincompatible-function-pointer-types]
.pin_attach_irq = ra_pin_attach_irq,
^~~~~~~~~~~~~~~~~
../libraries/HAL_Drivers/drv_gpio.c(328): error: incompatible function pointer types initializing 'rt_err_t ( )(struct rt_device , rt_base_t)' (aka 'long ( )(struct rt_device *, long)') with an expression of type 'rt_err_t (struct rt_device *, rt_int32_t)' (aka 'long (struct rt_device , int)') [-Wincompatible-function-pointer-types]
.pin_detach_irq = ra_pin_dettach_irq,
^~~~~~~~~~~~~~~~~~
../libraries/HAL_Drivers/drv_gpio.c(329): error: incompatible function pointer types initializing 'rt_err_t ( )(struct rt_device , rt_base_t, rt_uint8_t)' (aka 'long ( )(struct rt_device *, long, unsigned char)') with an expression of type 'rt_err_t (struct rt_device *, rt_base_t, rt_uint32_t)' (aka 'long (struct rt_device *, long, unsigned int)') [-Wincompatible-function-pointer-types]
.pin_irq_enable = ra_pin_irq_enable,
^~~~~~~~~~~~~~~~~
6 errors generated.
compiling drv_gpio.c...
../libraries/HAL_Drivers/drv_usart_v2.c(252): warning: variable 'uart' set but not used [-Wunused-but-set-variable]
struct ra_uart uart;
^
../libraries/HAL_Drivers/drv_usart_v2.c(499): error: incompatible function pointer types initializing 'rt_size_t ( )(struct rt_serial_device *, rt_uint8_t , rt_size_t, rt_uint32_t)' (aka 'unsigned int ( )(struct rt_serial_device *, unsigned char *, unsigned int, unsigned int)') with an expression of type 'rt_ssize_t (struct rt_serial_device *, rt_uint8_t *, rt_size_t, rt_uint32_t)' (aka 'long (struct rt_serial_device *, unsigned char *, unsigned int, unsigned int)') [-Wincompatible-function-pointer-types]
.transmit = ra_uart_transmit
^~~~~~~~~~~~~~~~
1 warning and 1 error generated.
經(jīng)經(jīng)分析原因,是文件類(lèi)型使用不當(dāng)報(bào)錯(cuò),現(xiàn)將修復(fù)情情況如下:
bsp/renesas/libraries/HAL_Drivers/drv_gpio.c
@@ -111,7 +111,7 @@ static void ra_pin_map_init(void)
}
#endif /* R_ICU_H /
static void ra_pin_mode(rt_device_t dev, rt_base_t pin, rt_base_t mode)
static void ra_pin_mode(rt_device_t dev, rt_base_t pin, rt_uint8_t mode)
{
fsp_err_t err;
/ Initialize the IOPORT module and configure the pins */
@@ -154,7 +154,7 @@ static void ra_pin_mode(rt_device_t dev, rt_base_t pin, rt_base_t mode)
}
}
static void ra_pin_write(rt_device_t dev, rt_base_t pin, rt_base_t value)
static void ra_pin_write(rt_device_t dev, rt_base_t pin, rt_uint8_t value)
{
bsp_io_level_t level = BSP_IO_LEVEL_HIGH;
@@ -168,7 +168,7 @@ static void ra_pin_write(rt_device_t dev, rt_base_t pin, rt_base_t value)
R_BSP_PinAccessDisable();
}
static int ra_pin_read(rt_device_t dev, rt_base_t pin)
static rt_int8_t ra_pin_read(rt_device_t dev, rt_base_t pin)
{
if ((pin > RA_MAX_PIN_VALUE) || (pin < RA_MIN_PIN_VALUE))
{
@@ -178,7 +178,7 @@ static int ra_pin_read(rt_device_t dev, rt_base_t pin)
return R_BSP_PinRead(pin);
}
static rt_err_t ra_pin_irq_enable(struct rt_device *device, rt_base_t pin, rt_uint32_t enabled)
static rt_err_t ra_pin_irq_enable(struct rt_device *device, rt_base_t pin, rt_uint8_t enabled)
{
#ifdef R_ICU_H
rt_err_t err;
@@ -230,7 +230,7 @@ static rt_err_t ra_pin_irq_enable(struct rt_device *device, rt_base_t pin, rt_ui
#endif
}
static rt_err_t ra_pin_attach_irq(struct rt_device *device, rt_int32_t pin,
static rt_err_t ra_pin_attach_irq(struct rt_device *device, rt_base_t pin,
rt_uint32_t mode, void (*hdr)(void *args), void *args)
{
#ifdef R_ICU_H
@@ -264,7 +264,7 @@ static rt_err_t ra_pin_attach_irq(struct rt_device *device, rt_int32_t pin,
#endif
}
static rt_err_t ra_pin_dettach_irq(struct rt_device *device, rt_int32_t pin)
static rt_err_t ra_pin_dettach_irq(struct rt_device *device, rt_base_t pin)
{
#ifdef R_ICU_H
rt_int32_t irqx = ra_pin_get_irqx(pin);
bsp/renesas/libraries/HAL_Drivers/drv_usart_v2.c
Comment on this file
@@ -244,7 +244,7 @@ static int ra_uart_getc(struct rt_serial_device *serial)
return RT_EOK;
}
static rt_ssize_t ra_uart_transmit(struct rt_serial_device *serial,
static rt_size_t ra_uart_transmit(struct rt_serial_device *serial,
rt_uint8_t *buf,
rt_size_t size,
rt_uint32_t tx_flag)
bsp/renesas/libraries/HAL_Drivers/drv_usart_v2.c
Comment on this file
@@ -244,7 +244,7 @@ static int ra_uart_getc(struct rt_serial_device *serial)
return RT_EOK;
}
static rt_ssize_t ra_uart_transmit(struct rt_serial_device *serial,
static rt_size_t ra_uart_transmit(struct rt_serial_device *serial,
rt_uint8_t *buf,
rt_size_t size,
rt_uint32_t tx_flag)
-
GPIO
+關(guān)注
關(guān)注
16文章
1217瀏覽量
52441 -
PIN管
+關(guān)注
關(guān)注
0文章
36瀏覽量
6380 -
UART接口
+關(guān)注
關(guān)注
0文章
124瀏覽量
15370 -
RT-Thread
+關(guān)注
關(guān)注
31文章
1306瀏覽量
40434 -
HAL庫(kù)
+關(guān)注
關(guān)注
1文章
121瀏覽量
6387 -
RA6M3
+關(guān)注
關(guān)注
0文章
52瀏覽量
141
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
【RA6M3 HMI Board評(píng)測(cè)挑戰(zhàn)】-瑞薩RA6M3上的CAN實(shí)踐
![【<b class='flag-5'>RA6M3</b> HMI Board評(píng)測(cè)挑戰(zhàn)】-瑞薩<b class='flag-5'>RA6M3</b>上的CAN實(shí)踐](https://file1.elecfans.com/web2/M00/AA/57/wKgZomUuLjSADvx4AAGFvpylDVQ499.jpg)
vscode+pyocd+daplink調(diào)試瑞薩ra6m3
vscode+pyocd+daplink調(diào)試瑞薩ra6m3步驟
瑞薩 RA6M3 開(kāi)發(fā)實(shí)踐指南-UART實(shí)踐
RA6M3 RT-Thread* LVGL HMI Board開(kāi)發(fā)實(shí)踐指南-GPIO實(shí)踐
![<b class='flag-5'>RA6M3</b> <b class='flag-5'>RT</b>-Thread* LVGL HMI Board開(kāi)發(fā)實(shí)踐指南-GPIO實(shí)踐](https://file1.elecfans.com//web2/M00/B2/07/wKgaomVobY2Ae7UIAANZs5bcm58876.png)
評(píng)論