Meco Man
7ecba50ff6
format stm32 drivers
2023-01-08 22:52:13 -05:00
Meco Man
592284c66c
format link scripts
2023-01-08 22:52:13 -05:00
Meco Man
9bc68d26a4
format Kconfig and sconscript
2023-01-08 22:52:13 -05:00
liYangYang
7c05d8517c
[STM32][SPI]解决挂载函数里面不同bsp对uaer_data的滥用 ( #6819 )
...
* [spi]attach 片选引脚依赖pin框架
* 修改attach函数
2023-01-07 23:03:42 -05:00
wdfk-prog
431579a166
[stm32][adc]更改配置通道与校准函数顺序 ( #6758 )
...
* [stm32][adc]更改配置通道与校准函数顺序
* 添加16位与14位分辨率配置
* 添加内部参考电压与温度,电池电压通道配置
* [stm32][adc]修改返回参考电压函数
* 返回准确的参考电压值
* 通过该值在使用__HAL_ADC_CALC_DATA_TO_VOLTAGE宏计算的电压值更为准确
* 删除多余代码
* 规划代码格式
* 更新支持其余芯片
* 已测试F429
2023-01-02 01:47:58 -05:00
wdfk-prog
fa7c1db768
[stm32][spic]修改SPI TX DMA中断优先级
...
* 原先中断优先级不生效
2022-12-24 15:12:30 -05:00
wdfk-prog
db6ee55379
[STM32][common]更新rt_hw_us_delay函数,以支持设置更高延时
...
* 未判断设置延时数是否会溢出
2022-12-22 21:18:29 -05:00
Zxy
f4323f2049
[stm32f1] 对于RTC-Alarm进行添加STM32F1宏控制 ( #6765 )
...
并确认并列出已经在什么情况或板卡上进行了测试。
And confirm in which case or board has been tested. -->
STM32F103ZET6
为什么提交这份PR (why to submit this PR)
使用STM32F103ZET6的RTC的Alarm功能出现问题,按照原本的驱动代码编译会报错。
你的解决方案是什么 (what is your solution)
修改底层驱动drv_rtc.c文件,将报错的几个结构体给注释掉即可。
在什么测试环境下测试通过 (what is the test environment)
rtstudio下对STM32F103ZET6进行测试并且成功运行Alarm功能
2022-12-21 20:33:54 -05:00
wdfk-prog
0a6ffce446
[STM32][SPI]使用rt_hw_cpu_dcache_ops函数替换HAL库函数 ( #6745 )
...
* [STM32][SPI]使用rt_hw_cpu_dcache_ops函数替换HAL库函数
* 规范代码格式
2022-12-16 02:10:42 -05:00
wdfk-prog
63e7633246
[STM32][SPI]在H7芯片下修复时钟频率获取错误问题并添加DMA驱动 ( #6741 )
...
* [STM32][SPI]在H7芯片下修复时钟频率获取错误问题并添加DMA驱动
* H7下SPI时钟不再为外设总线时钟频率
* H7下DMA驱动需要进行CacheLine对齐
2022-12-15 01:05:56 -05:00
Man, Jianting (Meco)
99bdf978d7
[rtdef] use lower-case to define attributes ( #6728 )
...
* [rtdef] rename RT_WEAK attribute as rt_weak
* [rtdef] rename RT_USED attribute as rt_used
* [rtdef] rename RT_SECTION attribute as rt_section
* [rtdef] rename ALIGN attribute as rt_align
* [legacy] add RT_USED ALIGN RT_SECTION RT_WEAK as legacy support
2022-12-11 13:12:03 -05:00
liYony
190eda6ab0
[bug] fix tim bug
2022-12-09 23:19:18 -05:00
liYangYang
e3a09b2791
[STM32][SPI]优化APBx时钟配置代码 ( #6698 )
...
* [STM32][SPI]优化APBx时钟配置代码
2022-12-06 12:52:37 -05:00
wdfk-prog
db3e261bc4
添加判断当前使用定时器是否可配置为主从定时器模式
2022-12-06 00:07:57 -05:00
少年老王
12ec87d64e
修改串口V2的putc顺序
...
1.顺序修改回V1,保证每次都是当前数据发送完才跳出
2022-12-06 10:37:35 +08:00
liYony
575fe18ea0
some errors
2022-12-06 10:37:15 +08:00
liYony
7a49f8d920
tim_clock_get
2022-12-06 10:37:15 +08:00
liYony
e9ddc36488
tim clk config fix
2022-12-06 10:36:59 +08:00
wdfk-prog
aaf1abf25f
[fix][stm32]修复输出高电平异常的问题
2022-12-05 20:49:28 -05:00
liYangYang
4bdca93a8d
[RTduino][STM32]为stm32l431-BearPi开发板对接RTduino软件包 ( #6688 )
2022-12-04 20:28:15 -05:00
guo
ecf2d82159
sync branch rt-smart. ( #6641 )
...
* Synchronize the code of the rt mart branch to the master branch.
* TTY device
* Add lwP code from rt-smart
* Add vnode in DFS, but DFS will be re-write for rt-smart
* There are three libcpu for rt-smart:
* arm/cortex-a, arm/aarch64
* riscv64
Co-authored-by: Rbb666 <zhangbingru@rt-thread.com>
Co-authored-by: zhkag <zhkag@foxmail.com>
2022-12-03 12:07:44 +08:00
wdfk-prog
569e2ae1e8
[CAN]update struct can_filter_item and rt_can_msg ( #6556 )
...
* 修改ry命令,已便于自定义保存路径
* modified: components/utilities/ymodem/ry_sy.c
* 修复从被动错误恢复后发送返回异常
* 修复在自动重传模式下,ACK异常阻塞线程
- 删除TX中断函数else分支。仅当RQCP位 置一才进入该中断
- 添加SCE中断函数中关于ACK_ERR的else判断。自动重传模式下会进入该判断,打断自动重传释放完成量。
* 增加对于CAN1与CAN2的SCE中断和TX中断的公共处理函数
* formatting格式化代码
* update struct can_filter_item and rt_can_msg
1. 对过滤器号和索引号结构体定义中同一名称hdr进行重命名hdr_bank和hdr_index,
以便准确区分.采用宏定义兼容以前变量名.
2. 添加接收标识rxfifo,已指明是哪个RXFIFO.
* 更正42M下的波特率
* 修复接收获取索引号错误
* 添加接收标识
* 更新注释
* 取消CANFD限制
* update struct can_filter_item and rt_can_msg
2022-11-21 21:45:51 -05:00
Meco Man
6808f48bdc
[stm32] 解决Error_Handler()函数在*_msp.c文件下报错的问题
...
在用户头文件区增加#include <drv_common.h>即可
2022-11-21 21:31:33 -05:00
myshow2258
87be8fdba8
Modified bsp/stm32/libraries/HAL_Drivers/drv_usbd.c
...
Modified components/drivers/usb/usbdevice/class/cdc_vcom.c
修复cdc在v1v2的serial框架下接收发送错误的问题.stm32下usbd添加更多的ep_id,以支持复合设备.
2022-11-14 23:47:49 -05:00
Man, Jianting (Meco)
a24f527990
[stm32][tim/pwm] 抽出公共代码,防止日后演进出现分歧 ( #6575 )
...
* [stm32][tim/pwm] 抽出公共代码,防止日后演进出现分歧
* Update drv_tim.c
2022-11-06 22:58:39 -05:00
myshowtogo
a9d8168b4d
Modified bsp/stm32/libraries/HAL_Drivers/config/f4/dma_config.h
...
Modified bsp/stm32/libraries/HAL_Drivers/drv_usart_v2.c
修复stm32的串口 dma配置
2022-10-30 21:19:31 -04:00
linshire
1fc558e6f8
删除对pwm_config的判断,并初始化channel 为RT_NULL
2022-10-30 13:04:07 -04:00
linshire
315c25883c
[bsp] fix the return of the function(drv_pwm_control) in stm32 drv_pwm
2022-10-30 02:17:02 -04:00
linshire
14722a4853
Revert "提交stm32 bsp drv_pwm.c里面的一个小建议 ( #6517 )"
...
This reverts commit a4eb5a5399
.
2022-10-28 21:07:39 -04:00
100ask-Alen
a4eb5a5399
提交stm32 bsp drv_pwm.c里面的一个小建议 ( #6517 )
...
在使用stm32的pwm驱动时,发现其初始化channel的时候是根据device->channel这个值去初始化的,device->channel这个值是在pwm_configh.h里面定义设置的,又根据rtt的pwm例程,和常规习惯,应该大多数人会更喜欢设置channel=1/2/3/4,而不是在pwm_configh.h中将channel设置为TIM_CHANNEL_1/2/3/4,因此建议drv_pwm.c做出PR中的修改。
在实际开发中,因pwm_configh.h的示例均是.channel=0,又没有做出解释说明要让.channel=TIM_CHANNEL_1/2/3/4的值,容易误操作导致没有成功输出PWM,这是我在实际开发中遇到的现实问题,因而提出此建议。
2022-10-28 18:38:17 -04:00
linshire
e01776ea76
将驱动文件中判断RT_USING_XXX改为BSP_USING_XXX,解决了部分框架层与驱动层的混用
2022-10-27 18:30:08 -04:00
wdfk-prog
e59b6c7ab4
FIX: [bsp][stm32]CAN从ACK错误恢复后发送异常 ( #6511 )
...
* 修改ry命令,已便于自定义保存路径
* modified: components/utilities/ymodem/ry_sy.c
* 修复从被动错误恢复后发送返回异常
* 修复在自动重传模式下,ACK异常阻塞线程
- 删除TX中断函数else分支。仅当RQCP位 置一才进入该中断
- 添加SCE中断函数中关于ACK_ERR的else判断。自动重传模式下会进入该判断,打断自动重传释放完成量。
* 增加对于CAN1与CAN2的SCE中断和TX中断的公共处理函数
* formatting格式化代码
2022-10-23 22:37:19 -04:00
ItsGettingWorse
9c6d8d96ce
Update drv_usart.c
...
修复RX DMA 第一包收不到的bug
2022-10-22 15:11:46 -04:00
mingmiaojing
4690ed90f1
[stm32f103-fire-arbitrary] support nandflash K9F1G08U0E && LPM init && partition create && partition read/write
2022-10-20 00:28:52 -04:00
NU-LL
b380bdf071
[bsp/stm32] upgrade to rt-thread 5.0
2022-10-20 11:44:34 +08:00
BreederBai
3a9152c5fe
[bsp/stm32] 将spi DMA传输更改为阻塞线程方式 ( #6513 )
...
* [bsp/stm32] 将spi DMA传输更改为阻塞线程方式
* Update bsp/stm32/libraries/HAL_Drivers/drv_spi.h
Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2022-10-17 15:52:03 -04:00
朱天龙 (Armink)
d480690f77
[bsp][stm32] Update the serialv2 driver for CPU Cache. Simplified the DMA receive code.
2022-10-12 14:21:41 +08:00
bzrobotics
560a21207e
FIX: [bsp][stm32] pulse_encoder driver did not handle TIM overflow
2022-10-08 22:32:45 -04:00
Man, Jianting (Meco)
f7be5fc84b
[bsp][applications][sconscript] 整理统一sconscript格式 ( #6481 )
...
* [bsp][sconscript] 整理统一sconscript格式
* update
* update
2022-10-03 10:43:08 -04:00
Meco Man
97c483fe35
[rtduino][readme] change title
2022-09-28 02:11:35 -04:00
Man, Jianting (Meco)
c7a9481831
[rtduino] 对接STM32F412 NUCLEO ( #6461 )
2022-09-25 22:38:35 -04:00
YangZhongQing
1c2d05d545
RTC STM32F1 Enable PWR and BKP clocks in the same time
...
bsp\stm32\libraries\HAL_Drivers\drv_rtc.c在STM32F10x上有一个“RTC首次上电时BKP时钟没使能”的问题。
STM32F10x要求:
写RTC Domain and RTC registers之前需要__HAL_RCC_BKP_CLK_ENABLE(详见:stm32f1xx_hal_rtc.c里面的##### Backup Domain Access #####)
问题分析:
1、RTC首次上电时:由于HAL_RTC_Init初始化之前没有使能BKP时钟,所以对RTC registers的初始化无效。
2、然后用date命令设置时间,调用到set_rtc_time_stamp也没有__HAL_RCC_BKP_CLK_ENABLE,所以HAL_RTCEx_BKUPWrite写的值无法真正永存于BKP,重启后就丢失。
最终导致:对于RTC首次上电的情况,每次重启后RTC_BKP_DR1里的值都不是BKUP_REG_DATA,导致永远无法调用到rt_rtc_f1_bkp_update()去使能BKP时钟。
解决办法:
参考STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\RTC\Calendar\main.c里面的RTC_Configuration()同时打开RCC_APB1Periph_PWR和RCC_APB1Periph_BKP
2022-09-23 21:04:35 -04:00
BreederBai
61e1e31ca9
[bsp/stm32] 简化drv_usart中的DMA接收逻辑 ( #6357 )
2022-09-22 14:13:57 +08:00
myshowtogo
4637eb16dc
Modified bsp/stm32/libraries/HAL_Drivers/drv_can.c
...
修复字符串比较错误
2022-09-16 08:36:48 -04:00
liYangYang
cc5af9a72d
[bsp][stm32]添加硬石科技YS-F1Pro开发板 ( #6364 )
2022-09-01 23:06:44 -04:00
liYangYang
d25bf469fa
[rt_drv_pwm]完善PWM框架互补输出部分代码 ( #6338 )
...
* [pwm]Improve the code
* 将与bsp无关的代码移植到框架部分
* 添加注释
2022-09-01 00:59:44 -04:00
winfenggao
ae66e67dee
bug:
...
UART_FLAG_TC 不能在中断里CLEAR;
因为函数 static int stm32_putc(struct rt_serial_device *serial, char c)里发送完成后
while 循环等这个标志退出,中断服务函数CLEAR后,此处进入死循环
2022-08-25 10:25:34 -04:00
Meco Man
4537d06afb
[stm32] add missing void
2022-08-14 21:49:43 -04:00
Fan Yang
666af5e29d
[DeviceDriver] Add CANFD support and correct typos ( #5912 )
...
* Add CANFD support and correct typos
- Added CANFD required fields to can.h
- Fixed typos in can.h and can.c
- Corrected all the projects affected by the typo
- Fixed wrong line-ending in some affected can driver files
Signed-off-by: Fan YANG <fan.yang@hpmicro.com>
* update
Signed-off-by: Fan YANG <fan.yang@hpmicro.com>
Co-authored-by: Meco Man <920369182@qq.com>
2022-08-13 22:59:28 -04:00
Meco Man
76885ca908
[stm32][drv_serial] 修复recv_len意外为负(即很大正数)的问题
...
https://github.com/RT-Thread/rt-thread/issues/6106
https://github.com/RT-Thread/rt-thread/issues/4467#issuecomment-850814143
2022-08-04 22:51:34 -04:00