打印
[STM32H7]

CubeMX 生成的 USB HID 程序

[复制链接]
678|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xxrs|  楼主 | 2021-6-3 22:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
芯片是 STM32H750VBT6,
void SystemClock_Config(void)
{
  RCC_OscInitTypeDef RCC_OscInitStruct = {0};
  RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
  RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0};

  /**Configure the main internal regulator output voltage
  */
  __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);

  while ((PWR->D3CR & (PWR_D3CR_VOSRDY)) != PWR_D3CR_VOSRDY) <--  程序卡在这条
  {
   
  }

哪里出了问题?

使用特权

评论回复
沙发
xxrs|  楼主 | 2021-6-3 22:49 | 只看该作者

CubeMX 是最新版的  V5.01

使用特权

评论回复
板凳
xxrs|  楼主 | 2021-6-3 22:52 | 只看该作者
我使用的也是 STM32H750VBT6  现在点一个LED 的程序也卡在这里,你这个问题解决了么

使用特权

评论回复
地板
xxrs|  楼主 | 2021-6-3 22:55 | 只看该作者
这么高端,做什么产品?
是编译的时候出问题还是运行的时候出问题?

使用特权

评论回复
5
xxrs|  楼主 | 2021-6-3 22:58 | 只看该作者
H743 的范例是可以用在 H750 芯片上,我运行成功了。

使用特权

评论回复
6
xxrs|  楼主 | 2021-6-3 23:03 | 只看该作者
CubeMX 是有问题的

使用特权

评论回复
7
yszong| | 2021-6-3 23:05 | 只看该作者
楼主好,问题解决了吗?我也是卡到这个地方了,为了避免是自己的代码问题,我把所有代码删除用cubemx自己生成的点亮一个led代码,也是卡到这了

使用特权

评论回复
8
llljh| | 2021-6-3 23:07 | 只看该作者
只要主频超过200MHz就会卡到这,因为超过200MHz后vos等级会设置非vos3,即:
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);或
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2);
通过禁用ldo可以跳过这个限制,即达到400MHz,具体做法是:
更改电压等级vos后再执行 PWR->CR3 = 0x02;即可,但一直不明白为什么就OK了,有点稀里糊涂的,按手册上说的PWR->CR3 = 0x02是复位后默认的设置,为什么我再设置一遍就OK了呢,为什么这么简单的是cubemx不自己做呢,肯定有问题。

使用特权

评论回复
9
dengdc| | 2021-6-3 23:09 | 只看该作者
给我的感觉是vos等级改不了,因为复位后系统默认vos等级是3,一旦程序里更改更高电压等级,程序就会一直等待vosrdy这一位。

使用特权

评论回复
10
shimx| | 2021-6-3 23:12 | 只看该作者
在ldo禁用的时候要注意,禁用ldo的代码只能跑一次,跑完后删除禁用代码再跑

使用特权

评论回复
11
午夜粪车| | 2021-6-3 23:14 | 只看该作者
不然有可能会复用你的swdio管脚导致无法通过stlink烧写程序

使用特权

评论回复
12
zhanghqi| | 2021-6-3 23:16 | 只看该作者
这个问题出现的很莫名其妙,我的一块板子就这样费了,还得从新跳线boot0管脚才能擦除程序

使用特权

评论回复
13
wyjie| | 2021-6-3 23:18 | 只看该作者
按复位以后能够重新擦除吗?

使用特权

评论回复
14
zwll| | 2021-6-3 23:19 | 只看该作者
可以试试复位管脚

使用特权

评论回复
15
xxrs|  楼主 | 2021-6-3 23:21 | 只看该作者

好的,我明天去单位试一下,多谢各位大侠了哈        

使用特权

评论回复
16
caoenq| | 2021-6-4 08:37 | 只看该作者
llljh 发表于 2021-6-3 23:07
只要主频超过200MHz就会卡到这,因为超过200MHz后vos等级会设置非vos3,即:
__HAL_PWR_VOLTAGESCALING_CON ...

非常不建议使用cube这个工具,坑太多

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

405

主题

7415

帖子

1

粉丝