微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 把STM8S103F3 PB.4/PB.5当做Open Drain pins怎样设定

把STM8S103F3 PB.4/PB.5当做Open Drain pins怎样设定

时间:10-02 整理:3721RD 点击:

請問STM8S103F3 PB.4/PB.5可以當一般Open Drain
pins 使用嗎?

若可以,是否如下設定即可?

    // Init Port B
    /*
    [2]101
           7 6 5 4 3 2 1 0
           | | | | | | | |
           | | | |_________ I2C SCL (Output)    Open drain output
           | | |___________ I2C SDA (Output)    Open drain output
    DDR    0 0 1 1 0 0 0 0
    CR1    0 0 0 0 0 0 0 0
    CR2    0 0 0 0 0 0 0 0
    */
    GPIOD->DDR = 0x30;
    GPIOD->CR1 = 0x00;
    GPIOD->CR2 = 0x00;

還有什麼要特別注意的事項嗎?   

若PB.5 要當software I2C SDA (bit-banging) 使用時,
對於input read 狀況,該怎麼辦?


STM8S103F3的PB.4/PB.5可以当普通Open Drain端口使用。
PB.5做软件I2C SDA时,要读入时需要先输出"1",然后直接读这个端口即可。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top