OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3545|回复: 4

求助:PE2,PE1无法输出高电平

[复制链接]

25

主题

78

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
234
金钱
234
注册时间
2015-12-16
在线时间
32 小时
发表于 2016-7-23 10:38:25 | 显示全部楼层 |阅读模式
1金钱
各位大侠,我初学STM8,求助
MCU:STM8S105C6
平台:IAR
仿真器:ST_LINK/V2

现象E5,PE6无法输出高电平
已经更换两块MCU/PCB板
仿真显示该端口已经输出高电平,但实际为低电平
①为了防止外围电路的影响,第二块PCB,将PE3~0悬空,测量管脚,依旧无法输出高电平
②程序清单如下:
/**       主函数      **/
void main(void)
{
          asm("sim");                                //先关闭总中断
        CLK_CKDIVR = 0x00;        //CPUDIV = 1 HSIDIV = 1  内部时钟 = 16Mhz
        PE_DDR=0XFF;
        PE_CR1=0XFF;
        PE_CR2=0X00;
        TIM3_PWM_Init();                //PWM初始化
        asm("rim");                                //打开总中断

        PE_ODR=0XFF;
.....
       



2.png

最佳答案

查看完整内容[请看2#楼]

你猜对了,PE1和PE2管脚是I2C功能,内部开漏,要输出高低电平需要外接上拉。你配置成推挽输出也没用。因为它是开漏的。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

69

主题

289

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1293
金钱
1293
注册时间
2013-3-14
在线时间
62 小时
发表于 2016-7-23 10:38:26 | 显示全部楼层
kuheye 发表于 2016-7-23 12:54
仿真试验,感觉PE1,PE2输出是开漏的
但明明是设置为推挽输出呀

你猜对了,PE1和PE2管脚是I2C功能,内部开漏,要输出高低电平需要外接上拉。你配置成推挽输出也没用。因为它是开漏的。
回复

使用道具 举报

25

主题

78

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
234
金钱
234
注册时间
2015-12-16
在线时间
32 小时
 楼主| 发表于 2016-7-23 10:40:58 | 显示全部楼层
上例中,去掉TIM3_PWM_Init();故障依旧
PE0,PE3正常,就是PE1,PE2无法输出高电平
回复

使用道具 举报

25

主题

78

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
234
金钱
234
注册时间
2015-12-16
在线时间
32 小时
 楼主| 发表于 2016-7-23 12:54:03 | 显示全部楼层
仿真试验,感觉PE1,PE2输出是开漏的
但明明是设置为推挽输出呀
回复

使用道具 举报

25

主题

78

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
234
金钱
234
注册时间
2015-12-16
在线时间
32 小时
 楼主| 发表于 2016-8-4 16:51:51 | 显示全部楼层
liuyongliuyong 发表于 2016-7-23 10:38
你猜对了,PE1和PE2管脚是I2C功能,内部开漏,要输出高低电平需要外接上拉。你配置成推挽输出也没用。因 ...

谢谢!
初学STM8S,数据手册还不熟悉
给后来的提一个醒:stm8s中文手册,第17页
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-6-29 05:40

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表