奇怪的IO问题

[复制链接]
2399|6
 楼主| lattice1 发表于 2012-6-9 16:03 | 显示全部楼层 |阅读模式
IO, pi, gp, GPIO, ui
之前一直用8s105k4,现在我用STM8S103f3,PB4设置为输出,但是程序无法控制,

#define DALI_TX    GPIO_PIN_4

  GPIOB->CR2 &= (uint8_t)(~DALI_TX);   // maximum output 2Mhz
  GPIOB->ODR &= (uint8_t)(~DALI_TX); /* Low level */
  GPIOB->DDR |= (uint8_t)DALI_TX; /* Set Output mode */
  GPIOB->CR1 |= (uint8_t)DALI_TX;  /* Pull-Up or Push-Pull */  
  GPIOB->CR2 |= (uint8_t)DALI_TX;   // maximum output 10Mhz

在main 设置IO为High    GPIOB->ODR |= (uint8_t)DALI_TX;  
没有反应,我奇了怪
 楼主| lattice1 发表于 2012-6-9 16:09 | 显示全部楼层
我把PD2设置output,正常输出。 难道PB4有bug?
garyluris 发表于 2012-6-9 16:32 | 显示全部楼层
楼主查一下数据手册,看一下PB4的复位默认值是不是IO口,如果不是的话,则需要重映射了
 楼主| lattice1 发表于 2012-6-9 16:56 | 显示全部楼层
上电默认PB4
 楼主| lattice1 发表于 2012-6-11 07:11 | 显示全部楼层
没有人遇见过这个问题??
JD21IC 发表于 2012-6-11 13:34 | 显示全部楼层
开时钟了么?
grant_jx 发表于 2012-6-11 13:48 | 显示全部楼层
不奇怪,没驱动力,外加个上拉电阻吧。
PB4和PB5都是给IIC用的额,IO结构与其它的都不相同,是输出OD模式,在引脚描述里面有说明的
(3) In the open-drain output column, "T" defines a true open-drain I/O (P-buffer and protection diode to VDD are not implemented)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

300

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部