ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:CLR C
MOV SP#60H设置堆栈
MOV SCON,#50H;串口方式判则1,允许接收
MOV PCON,#80H;SMOD=1
MOV TCON,#0
MOV TMOD,#26HT1定时方式2,T0计数方式2
MOV TL1,#0FAH波特率9600
MOV TH1,#0FAH
SETB TR1
SETB EA
CLR TI
MAX1240:MOV A,#00H;MAX1240是12位串行接口ADC,8脚。
MOV R7,#08H;8位
CLR P1.0;应该是接了MAX1240的/CS
CLR P1.1;应该是接了MAX1240的SCLK
NOP
JNB P1.2,$;应该是接了MAX1240的DOUT,此时等待接收数据
SETB P1.0
MSB: CLR P1.0;以下程序段MSB开始接收第一个字节保存在R3
NOP
SETB P1.0
MOV C,P1.2
MOV P1.3,C
RLC A
DJNZ R7,MSB
MOV R3,A
MOV R7,#08H
MOV A,#00H
LSB: CLR P1.0以下程序段LSB开始接收第二个字节保存在R2
NOP
SETB P1.0
MOV C,P1.2
RLC A
DJNZ R7,LSB
MOV R2,A
NOP
SETB P1.1
MOV 41H,R3;收到的测量模拟量转换值转存到41H,40H
MOV 40H,R2
LOOP:MOV A,41H;两字节数据41H40H通过串口发送出去
MOV SBUF,A
ACALL WAIT
ACALL Delay
MOV A,40H这信冲笑句你没有,似乎是少写了
MOV SBUF,A
ACALL WAIT
AJMP MAX1240
WAIT:JNB T1,$
CLR T1
RET
这不培启逗是你的完整程序吧,配卖不完整哦,还有很多地方没有写好!#include
<stdio.h>
void
main()
{
int
x,y,c
int
max(int
x,int
y)
scanf("%d%d",&x,&y)
c=max(x,y)
printf("%d",c)
}
int
max(int
x,int
y)
{
int
z
if(x>旁知y)
z=x
else
z=y
return(z)
}
插件Maxscript与当前版本3dmax不兼容或者兼容的不好造成的乱模。解决方法:
卸载该斗返插件(必要时手动清除残留文件),然后重启3dmax。 重新安装正确版哗销缓本的插件。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)