找回密码
 立即注册
查看: 479|回复: 4

P3口操作问题,

[复制链接]

1

主题

3

回帖

23

积分

新手上路

积分
23
发表于 2023-8-1 09:37:38 | 显示全部楼层 |阅读模式
采用下边的程序,输出不对。
code unsigned char ADDRS[8]={
0x70,
0x60,       
0x50,
0x40,       
0x30,
0x20,
0x10,
0x00
};
i=P3&0x8f;
P3=(i|ADDRS[AD_cont]);
回复

使用道具 举报 送花

1

主题

3

回帖

23

积分

新手上路

积分
23
发表于 2023-8-1 09:40:28 | 显示全部楼层
sbit AD_ADR0 = P3^4;
sbit AD_ADR1 = P3^5;
sbit AD_ADR2 = P3^6;
AD_cont++;
        if(AD_cont>7){AD_cont=0;}               
        switch(AD_cont){
                case 0:{
        AD_ADR0=1;
        AD_ADR1=1;
        AD_ADR2=1;               
                }break;
                        case 1:{
        AD_ADR0=0;
        AD_ADR1=1;
        AD_ADR2=1;
                        }break;
                                case 2:{
        AD_ADR0=1;
        AD_ADR1=0;
        AD_ADR2=1;                       
                                }break;
                                        case 3:{
        AD_ADR0=0;
        AD_ADR1=0;
        AD_ADR2=1;                                       
                                        }break;
                                                case 4:{
        AD_ADR0=1;
        AD_ADR1=1;
        AD_ADR2=0;                                               
                                                }break;
                                                        case 5:{
        AD_ADR0=0;
        AD_ADR1=1;
        AD_ADR2=0;                                                       
                                                        }break;
                                                                case 6:{
        AD_ADR0=1;
        AD_ADR1=0;
        AD_ADR2=0;                                                       
                                                                }break;
                                                                        case 7:{
                AD_ADR0=0;
        AD_ADR1=0;
        AD_ADR2=0;                                                               
                                                                        }break;
        }
这个程序,输出是正常的。因为是在中断中,要求时间一致。需要用前边的方法。硬件没有问题。请技术支持一下。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:415
  • 最近打卡:2025-04-30 09:58:34
已绑定手机

39

主题

2006

回帖

6843

积分

论坛元老

积分
6843
发表于 2023-8-1 09:47:45 | 显示全部楼层
能先说说你的需求吗?你想实现什么功能?
回复 支持 反对

使用道具 举报 送花

1

主题

3

回帖

23

积分

新手上路

积分
23
发表于 2023-8-1 14:26:21 | 显示全部楼层
4、5、6是驱动4051的三个地址线。循环AD_cont计数
回复 支持 反对

使用道具 举报 送花

1

主题

3

回帖

23

积分

新手上路

积分
23
发表于 2023-8-1 14:28:06 | 显示全部楼层
在中断中实现运行
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 15:44 , Processed in 0.465977 second(s), 69 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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