你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

为什么使用了串口初始化之后,TIM8的PWM就不能正常输出了?

[复制链接]
vention123456 提问时间:2016-12-12 08:36 /
阅读主题, 点击返回1楼
收藏 1 评论27 发布时间:2016-12-12 08:36
27个回答
回答时间:2016-12-12 11:21:41
你把HAL的工程传上来,你测试不影响的。
vention123456 回答时间:2016-12-12 11:46:46
安 发表于 2016-12-12 11:21
你把HAL的工程传上来,你测试不影响的。

已经附上HAL库工程。
调换
MX_USART1_UART_Init();
  MX_TIM8_Init();
两者前后顺序,可以正常输出PWM
xmshao 回答时间:2016-12-12 11:48:41
完整的型号是多少?

PWM是硬件输出。很怀疑你管脚配置是否有冲突。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

vention123456 回答时间:2016-12-12 11:59:02
xmshao 发表于 2016-12-12 11:48
完整的型号是多少?

PWM是硬件输出。很怀疑你管脚配置是否有冲突。

STM32F103RC

TIM8和Uart1 完全是不一样的引脚啊,一个是PC6,7,8,9     一个是PA9,10
xmshao 回答时间:2016-12-12 12:14:53
vention123456 发表于 2016-12-12 11:59
STM32F103RC

TIM8和Uart1 完全是不一样的引脚啊,一个是PC6,7,8,9     一个是PA9,10

oh,那再看看代码方面。
ts2000 回答时间:2016-12-12 13:40:22
帮楼主顶上去
五哥1 回答时间:2016-12-31 02:41:31
HAL库的和标准库的不一样
海迹天涯 回答时间:2016-12-31 11:11:23
给你顶起
dzzwoaizi 回答时间:2016-12-31 11:44:18
本帖最后由 dzzwoaizi 于 2016-12-31 11:50 编辑

先检查一下引脚有无冲突,串口中断入口函数是否正确,两者无错误的话再看下面。还有好像你的串口好像中断标志位呢,清除在哪里??

昨天刚给朋友看了一个代码,F0的,他是加上串口后TIM1的一个引脚PWM输出不了了,他的初始化顺序是先TIM1后USART ,后来我把USart放在TIM前面,然后加了点延时,输出就正常了。(你可以加点延时看看,实在不行看下面)。
还有建议在程序最开始将总中断关闭,初始化完成在讲总中断打开,否则会影响初始化的。例如:
51的程序:
void main(void)
{
EA=0;//关闭总中断
.....//外设初始化
EA=1;//开总中断
}

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

zbber 回答时间:2017-1-1 07:38:49
应该还是TIM的中断问题,楼主看一下HAL库里面的tim8的初始化代码

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版