|
淘宝上买的凌智电子的STM32H750VBT6的最小系统板
我的目标是在定时器中断里面更新DAC值产生相应的波形,想组合例程中的定时器3中断例程和DAC例程来使用
这块板子所有例程的主函数的前5行都是下面这样的
CPU_CACHE_Enable();
HAL_Init(); // 初始化HAL库
MPU_Memory_Protection(); // MPU内存保护
SystemClock_Config(); // 设置时钟,400Mhz
SysTick_clkconfig(400); // SysTick参数配置
原定时器例程是中断函数中闪烁LED,原DAC例程就是输出一个电压值,上面5行之后我写了下面5行,工程0 error 0 warning
LED_Init(); // 初始化LED
TIM3_Init(5000-1,20000-1);// 定时器3初始化,定时器时钟为200M,分频系数为20000-1,
// 所以定时器3的频率为200M/20000=10K,自动重装载为5000-1,那么定时器周期就是500ms
// 开启2.048V的内部参考电压(如果使用外部基准电压的话,请屏蔽开启内部参考电压的程序)
MY_VREFBUF_Init(SYSCFG_VREFBUF_VOLTAGE_SCALE0);
DAC_Init(); // 初始化DAC1通道1
DAC_Set_Vol(3000); // DAC输出电压
现象:LED正常闪烁,DAC没有输出,只要保留这两行LED_Init();TIM3_Init(5000-1,20000-1);中的任意一行DAC就没有输出,两行都屏蔽掉,DAC正常输出,鼓捣了好几天了,实在不知道哪里冲突了,从原理图上看也没有I/O冲突
板子带的例程中有一个信号源的,使用的定时器6 DMA触发的,码表写死的,中断函数都找不到在哪里(玩51过来的,能力有限,第一次用stm32,也不想深入研究了),这个有点不太满足我的需求
求助:解决问题的,充点话费意思一下,非常感谢 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|