单片机问题:P2口的低4位为数据口,高4位为控制AD的信号线,初始化时将P2口全部置1没问题的吧?还有我将外

还有我将外部中断的I/O口做为普通的I/O口使用可以的吧,为什么采集到的总是错误的?AD是好的。我做的是单片机与PC的串口通信(电压采集),别人的程序是好的,我拿来改下信号线和数据线然后下到我板子上,可是却不行,为什么?AD是好的,单片机也可以工作。
用的AD是7862

第1个回答  2011-06-19
每读一次数据,你就要把p2口置1,要不然就读不出来,程序就出错。p2口是准双向口。还有ad是什么型号,怎么只有4个数据端口,不是要么8位并行要么串行么?本回答被提问者采纳
第2个回答  2011-06-19
有没有扩展片外存储器?有外扩时P2口作为高8位地址总线,最好把硬件图贴上来。。追问

没扩展的

第3个回答  2011-06-19
P0口,如果用作IO来使用时,应该外接上拉电阻。因为内部是开漏输出的。

另P2口用作输入时,只需写一次全‘1’就行,它就是一直保持输出高阻态。
第4个回答  2011-06-19
如果做数据线只能用P0口啊,p2口只能做地址线。。。。。你该为P0口试试,

单片机问题
1. TMOD用于控制定时器\/汁数器的工作模式及工作方式,其字节地址为80H,格式如下。其中,低4位用于决定T0的工作方式,高4位用于决定T1的工作方式。1)、M1和M0工作方式控制位 M0和M1为工作方式控制位,确定4种工作方式,分别为方式0、1、2、3。2)、C\/T定时器\/计数器方式选择位 C\/T=0,设...

单片机 P1口高四位控制低四位的指示灯 程序解析
MAIN: MOV A,#0FH ;0fH到累加器 ORL P1,A ;P1与0fH或运算,P1的低4位置1,高4位不变 MOV A,P1 ;P1的状态值到累加器 SWAP A ;交换累加器的高低4位,即高4位变低4位,低4位变高4位。MOV P1,A ;累加器A到P1 LJMP MAIN ;循环 这个程序有问...

单片机P口引脚的高4位低4位分别在哪里?
分别是对应端口的高四位PX.7-PX.4和PX.3-px.0.

单片机控制继电器定时开关的程序流程
(2)主程序上电复位过程:首先P0~P2口全部置1,P3口高5位置1,低3位置0。设置定时器T0工作于16位计数器模式,并赋初值TH0=0DCH,TL0=00H,关闭外部中断和串行口中断,时间计数器TS、TM、TH清0,所有预置时间存储区全部赋值FFH,至此所有初始化工作完成。 主程序工作过程:首先循环进行六个数码管扫描显示(DISPLY段),...

使p1口的低四位输出1 高四位输出0的c51命令是什么
C51是一种8051微控制器的指令集,控制P1口输出的命令如下:```P1 = 0x01;```这条命令可以将P1口的低4位输出为1,高4位输出为0。具体来说,0x01是一个16进制数,它的二进制表示为0000 0001,将这个数赋值给P1口,就会使低4位输出1,高4位输出0。P1口的8位分别对应P1.0~P1.7,因此只有...

单片机作业:编写程序将内部RAM20H-23H单元的高4位写1,低4位写0.
ORG 0000H AJMP START ORG 0030H START:MOV R0,#20H MOV R7,#04H LOOP:MOV A, #F0H MOV @R0,A INC R0 DJNZ R7,LOOP END

51单片机的程序问题 将累加器A中低四位的状态,通过P1口的高4位输出.
低半字节交换- A=3210_0000 ANL P1,#0FH ;清P1口高四位 --P1=0000_9999 ORL P1,A ;使P1.7~P.1.4按A中初始值的A.3~A.0值置位 --- P1 = 3210_9999 这就实现了:累加器A中低四位3210,通过P1口的高4位8888的位置输出。

单片机C语言怎么能对P2口的1,2,3,4,5位进行清零或者置一,而不影响其他...
这种单独对指定I\/O口赋值而不改变其他位的操作在430单片机用的很多的。比如:你要给P2.1和P2.2赋1,但不想改变其他位,那么你可以这样写:P2=P2 | 0x06(51单片机的写法)P2OUT|=0x06(430单片机的写法)。要给指定端口置0,而不影响其他位。比如要求P2^1=0,其他位不变。P2=P2&0xFD(即要...

51单片机4个I\/O口初始化时,分别作为输入输出,置电平高低问题,还有引脚...
可以这么考虑!51单片机的I\/O端口可不象PIC的那样要你人为的去定义输出或输入,可在使用它前你要注意以下情况:如做输出口时你可直接使用,不过我建议你最好在设计硬件时就把外线路中的相关端口控制设计为低有效,高关断,因它在上电复位后的第一状态它们都是高电平,这样你可少很多操作。你在用它做...

单片机P2口置高低电平,程序怎么写
mov p2.3 #ffh mov p2.4 #00h mov p2.5 #ffh mov p2.6 #00h mov p2.7 #ffh 这的语法就错误了,单个引脚应该是这样 SETB P2.0 意思是P2口的这1个引脚设置为高电平 CLR P2.1 意思是P2口的这2个引脚设置为低电平 MOV P2,#55H就是设置P2口的8个引脚一高一低或是MOV P2,...

相似回答