Help me, mới ti toe cái phần mềm Proteus 6.7 nhưng chả biết dùng thế nào, hỏi ai cũng nói chung chung. Vậy ở đây có ai có hướng dẫn cụ thể cách dùng cái này không, cả cách dịch thành file hex nữa. Giúp đỡ nhá, tui còn non lắm
Thanks
Thanks
)
. Mạch gồm có 1 8951, 4 chân P2.0 ->P2.3 nối với các switch để thay đổi giữa nguồn và mass(thay cho các mức 0,1 của đầu ra DTMF), hếtSTORE EQU 41H ORG 0000h CONTROL: L2: MOV STORE,P2 ;doc ma phim an tu P2 (giai ma boi DTMF) luu vao ACC MOV A,STORE ;chuyen ma phim an tu ACC vao A ANL A,#0FH ;ma phim an chi nam tu P2.0->P2.3 ->chi lay 4 bit thap cua A CJNE A,#09H,L2 ;neu ko an dung phim 9 thi lap lai L2 de ktra phim an ;neu an dung phim 9 thi tiep tuc CONTINUE de dkhien tbi CONTINUE: MOV STORE,P2 MOV A,STORE ANL A,#0FH CJNE A,#01H,TEST3 ;neu an ko dung phim 1 thi den TEST3 ktra tiep phim 3 CLR P0.0 ;neu an dung phim 1 thi xoa P0.0=0 de bat LED1 TEST3: CJNE A,#03H,TEST5 CLR P0.1 ;neu an dung phim 3 thi xoa P0.1=0 de bat LED2 TEST5: CJNE A,#05H,TEST7 CLR P0.2 ;neu an dung phim 5 thi xoa P0.2=0 de bat LED3 TEST7: CJNE A,#07H,TEST5 CLR P0.3 ;neu an dung phim 7 thi xoa P0.3=0 de bat LED4 TEST2: CJNE A,#02H,TEST4 SETB P0.0 ;neu an dung phim 2 thi xoa P0.1=0 de tat LED2 TEST4: CJNE A,#04H,TEST6 SETB P0.1 ;neu an dung phim 4 thi xoa P0.1=0 de tat LED2 TEST6: CJNE A,#06H,TEST8 SETB P0.2 ;neu an dung phim 6 thi xoa P0.2=0 de tat LED3 TEST8: CJNE A,#08H,TEST0 SETB P0.3 ;neu an dung phim 8 thi xoa P0.3=0 de tat LED4 TEST0: CJNE A,#00H,AGAIN ;neu phim an ko fai la 0 thi nhay toi AGAIN de tra lai SETB P3.5 ;neu an dung phim 0 thi lap P3.5=1 de mo tai gia SJMP SKIP ;nhay den SKIP de thoat khoi chtrinh dkh AGAIN: ACALL DELAY_1 ;goi chtrinh con DELAY 1 thoi gian roi ktra lai SJMP CONTINUE SKIP: RET ;thoat khoi chtrinh con dieu khien tbi ;************************************************* *********************************************** ;CHUONG TRINH CON TAO TRE DELAY_1: MOV R2,#100 LOOP: MOV R3,#100 DJNZ R3,$ DJNZ R2,LOOP RET END
:1000000085A041E541540FB409F685A041E541546E :100010000FB40102C280B40302C281B40502C282DD :10002000B407F8C283B40202D280B40402D281B40D :100030000602D282B40802D283B40004D2B580048E :0E004000114580C6227A647B64DBFEDAFA2268 :00000001FF
#include<regx51.h>
// Ham delay time[ms] dung Timer0 mode1, thach anh 11.0592MHz
void delay(unsigned char time)
{
while(time--)
{
TMOD = 0x01; // dung Timer0 o che do 1(16bit)
TR0 = 0 ;
TH0 = 0xFC;
TL0 = 0x66;
TF0 = 0 ;
TR0 = 1 ;
while(!TF0); // doi den khi TF0 =1
}
}
// Ham main
void main()
{
while(1)
{
P1 = 255 ;
delay(200) ;
P1 = 0 ;
delay(200) ;
}
}
:10080000AE071FEE6014758901C28C758CFC758A69 :0B08100066C28DD28C208DE880FB2298 :10081B007590FF7FC8120800E4F5907FC81208009E :02082B0080EE5D :0300000002082DC6 :0C082D00787FE4F6D8FD75810702081BF7 :00000001FF
Comment