View Single Post
Old 10-05-2006, 11:58 AM   #12
nhh
Đệ tử 9 túi
 
nhh's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 174
:
Send a message via Yahoo to nhh
To cô nương Hoàng Ngọc !

Mình đã mô phỏng thử chương trình của bạn, chạy ok, có thấy báo lỗi gì đâu !

Theo mình, nguyên nhân chương trình báo lỗi "Real Time Simulation failed to start" là chương trình chưa nhận ra file.hex bạn load vào con VĐK.

Nếu bạn dùng bản Demo hiện tại của labcenter thì nó không cho mô phỏng chương trình bạn thiết kế với Pic luôn (các loại khác mình chưa thử !)
Nếu bạn dùng bản có crack hay bản full, thử mô phỏng vài chương trình đơn giản khác xem thế nào !

Đây là code chương trình trên của bạn:
Code:
STORE 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
Còn đây là hex file mình biên dịch bằng ASM51
Code:
:1000000085A041E541540FB409F685A041E541546E
:100010000FB40102C280B40302C281B40502C282DD
:10002000B407F8C283B40202D280B40402D281B40D
:100030000602D282B40802D283B40004D2B580048E
:0E004000114580C6227A647B64DBFEDAFA2268
:00000001FF
Load vào chương trình mô phỏng bình thường !

=====================================
Bạn thử mô phỏng chương trình sau xem thế nào !

Đây là chương trình mô phỏng đơn giản cho con AT89C51 ( phải viết bằng Keil chứ bằng ASM mệt óc lắm !):

Chương trình dùng Timer0, mode1 tạo trễ 200ms cho việc chớp tắt 8 led trên port P1
Code:
#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)   ;
 }
}
Còn đây là hexfile
Code:
:10080000AE071FEE6014758901C28C758CFC758A69
:0B08100066C28DD28C208DE880FB2298
:10081B007590FF7FC8120800E4F5907FC81208009E
:02082B0080EE5D
:0300000002082DC6
:0C082D00787FE4F6D8FD75810702081BF7
:00000001FF


To anh F !

Xin lỗi pic bang chủ, đệ tử pic bang đi lạc chủ đề sang 8051 !
File Kèm Theo
File Type: rar Delay_timer AT89C51.rar (11.5 KB, 417 lần tải)
__________________
Ngày mai bắt đầu từ ngày hôm nay

Bạn có thắc mắc, bạn cần sự hỗ trợ của các thành viên. Hãy đọc luồng này:
http://www.picvietnam.com/forum//showthread.php?t=1263
nhh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn