dbfzjsrn 发表于 2024-12-24 11:04:59

jwd 发表于 2024-12-24 10:41
准双向口,你可以程序开始运行时先把端口写1后再去读取端口状态
#include <STC8H.H>

unsigned char code_value;

void main()
{
          P1M0 &= ~0x80; P1M1 &= ~0x80;
    P3M0 &= ~0x10; P3M1 &= ~0x10;
    P0M0 &= ~0x01; P0M1 &= ~0x01;
    P2M0 &= ~0x08; P2M1 &= ~0x08;
                P0=0x01;
                P1=0x80;
                P2=0x08;
                P3=0x10;      


    while (1)
    {
                // 读取 P00 的电平状态并存入数组
    code_value = (P0 >> 0) & 0x01;
   
    // 读取 P34 的电平状态并存入数组
    code_value = (P3 >> 4) & 0x01;
   
    // 读取 P17 的电平状态并存入数组
    code_value = (P1 >> 7) & 0x01;
   
    // 读取 P2.3 的电平状态并存入数组
    code_value = (P2 >> 3) & 0x01;
    }
}

jwd 发表于 2024-12-24 13:00:24

dbfzjsrn 发表于 2024-12-24 11:04
#include

unsigned char code_value;


你这有点货不对板啊?
P17-->P1=0x80;
.....
.....

dbfzjsrn 发表于 2024-12-24 14:43:15

jwd 发表于 2024-12-24 13:00
你这有点货不对板啊?
P17-->P1=0x80;
.....


备注没改,嘿嘿,我已经找到问题在哪儿了
页: 1 [2]
查看完整版本: stc8g1k08,拨码开关,IO输入模式,3.x端口状态一致? | 已解决