| Age | Commit message (Collapse) | Author |
|
|
|
functionality
- Added support for non-blocking mode CAN message sending, including software ring buffer management and dynamic memory allocation options.
- Improved related comments and error handling.
- Updated example code to demonstrate the usage of both blocking and non-blocking sending modes, and corrected some structure field naming and macro definitions.
|
|
|
|
* [bsp][stm32][drv_usart_v2] uart_isr不再使用链式调用,RXNE内循环读空,一些细节优化
* [componnents][drivers][serial_v2] 增加获取config接口,使用rt_tick_get_delta替代内部的时间绕回判断,写满丢弃策略rx接收数据错乱修复,clang-tidy和cppcheck审查优化
* [utest][drivers][serial_v2] 测试例程进行优化
* [bsp][stm32][drv_usart_v2] 撤回DMAMUX1修改
* [componnents][drivers][serial_v2] read和write不再返回-RT_ETIMEOUT改为已发送或读取的字节数,细节优化
* [utest][drivers][serial_v2] 增加单独的timeout测试,减少测试中的硬延时
* [utest][drivers][serial_v2] 漏提交的posix下标志位
* [utest][drivers][serial_v2] 优化测试例程
* [bsp][stm32][drv_usart_v2] transmit返回错误值,RXNE增加超时逻辑
* [componnents][drivers][serial_v2] 增加transmit错误处理,增加超时退出机制显式的避免死循环
* [componnents][drivers][serial_v2] 适配serial_v2和posix非libc标准库下的console和shell
|
|
|
|
Co-authored-by: wdfk-prog <[email protected]>
|
|
Initialization
Co-authored-by: wdfk-prog <[email protected]>
|
|
CAN的SCE中断中只在ACK错误检查发送完成导致小概率出错的问题 #10354
|
|
registered, because the macro RT_USING_WDT was not introduced due to the missing header file.
|
|
- include the year, month, and day for rtc_alarm_time_set API
- add local time conversion for get timeval and set stamp
Signed-off-by: Runcheng Lu <[email protected]>
|
|
|
|
写满丢弃策略对dma_ping_buf的处理有误、细节调整
|
|
加超时时间、flush、获取缓冲区数据长度命令、数据溢出逻辑修复、稳定性细节优化、添加更多serial_v2测试用例
[components][serial_v2] 优化txflush逻辑、对tx的activated做中断保护
[components][at] at_client适配新版serial_v2
[components][at] at_server适配新版serial_v2
[components][serial_v2] 测试用例增加循环调用,format测试用例
[components][serial_v2] poll模式判断逻辑错误
[components][serial_v2] 测试用例去掉一些非必要延时
[components][serial_v2] 测试例程使用menuconfig进行配置,更新readme
[components][at_client] at_client_getchar返回值错误、at_client解析线程优先级错误设置
[components][at] 错误码应该返回负值
[components][serial_v2] TCFLSH和FIONREAD完善、control函数增加错误返回值
[components][serial_v2] RT_SERIAL_CTRL_GET_RX_DATA_LEN更改为RT_SERIAL_CTRL_GET_UNREAD_BYTES_COUNT
[utest][serial_v2] TC_UART_SEND_TIMES替换为RT_SERIAL_TC_SEND_ITERATIONS
[components][serial_v2] FIONREAD参数应该是无符号类型
[utest][serial_v2] 完善测试用例
[components][serial_v2] 避免使用三目运算符
[components][serial_v2] 使用clang-format格式化代码
[components][serial_v2] 添加get超时时间命令
[components][serial_v2] 完善posix接口
[components][serial_v2] 阻塞接口添加阻塞时间为0时的处理逻辑、优化RX阻塞接收逻辑
[components][serial_v2] 设置超时时间命令的参数改为指针形式
[components][serial_v2] nbuf发送添加超时时间为0时的逻辑
[components][serial_v2] 完善添加测试用例
[utest][serial_v2] 修复依赖关系
[components][serial_v2] 非阻塞模式下tx_flush错误修复
[components][serial_v2] activated使用原子API
[components][serial_v2] 优化DMA逻辑、没使能DMA时屏蔽DMA逻辑节约资源
[components][serial_v2] 提供写满时丢弃新数据和覆盖旧数据策略,写满丢弃策略效率更高
[components][serial_v2] 部分平台适配写满时两种策略功能
[components][serial_v2] DMA模式暂不支持丢弃新数据策略
[utest][serial_v2] 优化测试代码
[components][serial_v2] DMA模式下使用乒乓缓冲、DMA模式支持丢弃新数据策略
[utest][serial_v2] 适配DMA乒乓缓冲
[bsp][serial_v2] 部分bsp适配DMA下乒乓缓冲
[components][serial_v2] 使用spinlock替换中断,对部分结构体变量使用原子操作
[utest][serial_v2] 更新测试用例
[components][at] 适配new serialv2不再判断RTT版本号
[components][at] 删除多余的中文注释
[utest][serial_v2] 添加交叉echo示例,qemu环境下专用
[bsp][qemu] 适配串口v2并开启fifo
[components][at] 修复合并导致的错误
[bsp][n32] 适配serial_v2,没有经过测试
[components][serial_v2] 格式化代码
[utest][serial_v2] 删除无意义的打印
|
|
* bsp/stm32: Separate stm32mp1 hal drivers
* bsp/stm32: change stm32mp1 .config
|
|
error.
|
|
|
|
|
|
* [bsp/stm32]fix compile warning
|
|
fix:stm32 uart timout
|
|
* Optimize the lcd_test function to call it in thread to prevent the CLI environment from being unavailable after execution.
|
|
|
|
error: a label can only be part of a statement and a declaration is not a statement 459 | rt_uint32_t errtype;
|
|
|
|
|
|
导致异常
|
|
[bsp][stm32]fix uart bug
|
|
fix https://github.com/RT-Thread/rt-thread/pull/9525
|
|
@mysterywolf
|
|
|
|
https://github.com/RT-Thread/rt-thread/pull/9420
|
|
|
|
|
|
|
|
timer function is not supported
|
|
|
|
|
|
|
|
* 增加putc超时处理机制,防止死循环
* 优化TX中断初始化与卸载
* 添加TX中断方式实现
|
|
|
|
* [chip flash] add drv_flash_l1.c for stm32l1xxx
* [fix] Modified the SConscript file to support building for STM32L1xxx.
|
|
|
|
问题:
在使用硬件 I2C 驱动进行音频模块 WM8978 配置时,发现连续 rt_i2c_transfer 进行 I2C 传输时发现,连续多次调用 rt_i2c_transfer 会出现丢包现象;溯源发现是每次使用 rt_i2c_transfer 传输2字节,传输频率过高导致底层 HAL_I2C_Master_Seq_Transmit_DMA 报错 HAL_BUSY;
现象:
rt_completion_wait超时等待完成之后,I2C仍处于HAL_I2C_STATE_BUSY_TX状态,且后续第二次运行至HAL_I2C_Master_Seq_Transmit_DMA时会直接返回HAL_BUSY,从而直接 goto out; 退出而不会再次进行超时等待;
* drv_hard_i2c.c: 修复325行缺失'}'语法错误;更改HAL_I2C_xx_Transimt_xx调用中目标设备地址值;i2c_hard_config.h: 添加STM32F系列芯片xx_DMA_CONFIG宏定义;
* 回溯I2C设备地址传参处(msg->addr<<1)修改;
* fixup: 增加硬件I2C传输延时,解决连续传输导致HAL_BUSY状态;
|
|
|
|
The loop variable in the function 'drv_soft_spi:xx_pin_init()' is initialized to 0.
|
|
在STM32F429IGTx设备上使用硬件i2c驱动程序师遇到以下几个问题:
语法错误:drv_hard_i2c.c 行67、68中i2c_handle未正常替换过来,估计是上个版本对变量重命名后因为宏定义忽略了此处修改;
语法错误:drv_hard_i2c.c 行326中缺少一个"}"导致编译出错;
初始化i2c设备过程中对双地址选项进行设置时(i2c_handle->Init.OwnAddress2Masks = I2C_OA2_NOMASK),STM32F4系列SOC没有这个配置定义,于是我直接将双地址模式关闭了(i2c_handle->Init.DualAddressMode = I2C_DUALADDRESS_DISABLE);
初始化i2c设备(DMA方式)过程中发现i2c_hard_config.h文件中未定义DMA通道配置;
主要补丁如下:
修复硬件i2c驱动代码中语法错误(drv_hard_i2c.c行67、68、326);
关闭默认i2c双地址模式(drv_hard_i2c.c行75:I2C_DUALADDRESS_DISABLE);
添加硬件i2c驱动配置文件DMA相关配置项,增加对SOC_SERIES_STM32F2、SOC_SERIES_STM32F4、SOC_SERIES_STM32F7系列芯片配置DMA_CHANNEL的适配
|
|
|
|
|
|
|
|
|
|
[drv] STM32H7RSxx_HAL bsp fixed and update.
[add] bsp stm32h7s7-dk README.md
|