上課做的一個仿真,有電路圖也有程序,可以實現(xiàn)三個功能的切換
第一個是ad,把模擬量變成數(shù)字量來顯示
第二個是da,把數(shù)字量變成模擬量來表示,通過電機轉速來實現(xiàn)
第三個是adda,先把模擬量變成數(shù)字量,然后再把數(shù)字量變成模擬量,通過雙極性電機來表示出來
匯編的程序和C語言的程序都有,hex文件也有
0.png (39.94 KB, 下載次數(shù): 31)
下載附件
2017-12-23 20:24 上傳
0.png (7.99 KB, 下載次數(shù): 26)
下載附件
2017-12-23 20:23 上傳
單片機源程序如下:
- #include<reg52.h>
- sbit CLK=P3^1;
- sbit ST=P3^0;
- sbit EOC=P3^2;
- int a,b,c,d,sj=5000;
- void timer0() interrupt 1
- {
- CLK=~CLK;
- }
- void choose() interrupt 2
- {a++;
- if(a==4)
- a=1;
- }
- void gn1()
- {
- ST=0;
- ST=1;
- ST=0;
- while(!EOC);
- P2=0xff;
- b=P2;
- P1=b;
- }
- void gn2()
- { WR=0;
- if(d==0)
- {c++;
- P0=c;
- P1=c;
- if(c==0xff)d=1;
- }
- if(d==1)
- {c--;
- P0=c;
- P1=c;
- if(c==0x00)d=0;
- }
- while(--sj);
- sj=5000;
-
- }
- void gn3()
- {WR=0;
- gn1();
- P0=b;
- }
- void main()
- {
- IE=0x82;
- IT1=1;
- EX1=1;
- EA=1;
- ET0=1;
- TR0=1;
- TMOD=0x02;
- TH0=0x14;
- TL0=0x00;
- TR0=1;
- a=0;
- d=0;
- while(1)
- {switch(a)
- {case 1: gn1();continue;
- case 2: gn2();continue;
- case 3: gn3();continue;
- default : continue;
- }
- }
- }
復制代碼
匯編語言源碼:
- ORG 0000H
- LJMP START
- ORG 0013H
- LJMP ANJIAN
- ORG 1000H
- START:
- SETB EA
- SETB EX1
- SETB IT1
- MOV SP,#60H
- MOV R0,#00H
- XUANZE:
- CJNE R0,#01H,Z1
- LJMP GN1
- Z1: CJNE R0,#02H,Z2
- LJMP GN2
- Z2: CJNE R0,#03H,Z3
- LJMP GN3
- Z3: SJMP XUANZE
- ANJIAN:
- CJNE R0,#03H,Z4
- MOV R0,#00H
- SETB P3.6
- Z4: INC R0
- RETI
- GN1:
- SETB P3.0
- CLR P3.0
- ZZ: MOV SBUF,#00H
- JNB P3.2,ZZ
- MOV P2,#0FFH
- MOV A,P2
- MOV P1,A
- LJMP XUANZE
- GN2:
- MOV A,#00H
- Z6: CLR P3.6
- MOV P0,A
- MOV P1,A
- INC A
- LCALL DELAY
- JNB P3.3,ZY
- CJNE A,#0FFH,Z6
- Z7: MOV P0,A
- MOV P1,A
- DEC A
- LCALL DELAY
- JNB P3.3,ZY
- CJNE A,#00H,Z7
- ZY: LJMP XUANZE
- GN3:
- MOV P1,#00H
- SETB P3.0
- CLR P3.0
- Z5: MOV SBUF,#0FFH
- JNB P3.2,Z5
- MOV P2,#0FFH
- MOV A,P2
- MOV P0,A
- LJMP XUANZE
- DELAY:
- MOV R6,#12
- D1: MOV R5,#20
- D2: MOV R4,#50
- D3: DJNZ R4,D3
- DJNZ R5,D2
- DJNZ R6,D1
- RET
- END
復制代碼
所有資料51hei提供下載:
adda.zip
(32.88 KB, 下載次數(shù): 83)
2017-12-23 19:19 上傳
點擊文件名下載附件
仿真圖和程序 下載積分: 黑幣 -5
|