Thông báo
Collapse
No announcement yet.
CẦN GIÚP hiệu ứng 8 led với 89c2051
Collapse
X
-
Bạn tham khảo:
sáng đuổi:
mov p1,#00h
mov a,#00h
setb c
mp1:
mov p1,a
acall delay
mov p1,#00h
rrc a
jnc mp1
ret
sáng chan lẽ:
mov p1,#01010101b
acall delay
clp p1
acall delay
ret
sang chay vao chay ra:
mov p1,#18h
acall delay
mov p1,#24h
acall delay
mov p1,#42h
acall delay
mov p1,#81h
acall delay
mov p1,#81h
acall delay
mov p1,#42h
acall delay
mov p1,#24h
acall delay
mov p1,#18h
ret
trên đó là 3 hiệu ứng, mỗi hiệu ứng chạy 1 lượt, nếu bạn cân mấy lượt thì cứ cài đặt cho nó.
delay thì tùy bạn cho chạy nhanh hay chậm mà set cho thích hợp.
chúc bạn vuiKhông biết ngày mai sẽ ra sao?
Mà có ra sao cũng chẳng sao.
-
anh viết cụ thể từ đầu đến cuối được không anh .em k biết ghép các phần với lặp lại các hiệu ứng đó nữa .học lý thuyết có 2,3 pữa nên còn gà mờNguyên văn bởi rongdatvamuc Xem bài viếtBạn tham khảo:
sáng đuổi:
mov p1,#00h
mov a,#00h
setb c
mp1:
mov p1,a
acall delay
mov p1,#00h
rrc a
jnc mp1
ret
sáng chan lẽ:
mov p1,#01010101b
acall delay
clp p1
acall delay
ret
sang chay vao chay ra:
mov p1,#18h
acall delay
mov p1,#24h
acall delay
mov p1,#42h
acall delay
mov p1,#81h
acall delay
mov p1,#81h
acall delay
mov p1,#42h
acall delay
mov p1,#24h
acall delay
mov p1,#18h
ret
trên đó là 3 hiệu ứng, mỗi hiệu ứng chạy 1 lượt, nếu bạn cân mấy lượt thì cứ cài đặt cho nó.
delay thì tùy bạn cho chạy nhanh hay chậm mà set cho thích hợp.
chúc bạn vui
Comment
-
cách viết của bạn nếu tạo mảng const gọi phần tử trong mảng ra sẽ gọn hơnNguyên văn bởi tychuot289 Xem bài viếtanh viết cụ thể từ đầu đến cuối được không anh .em k biết ghép các phần với lặp lại các hiệu ứng đó nữa .học lý thuyết có 2,3 pữa nên còn gà mờ
Comment
-
BẠN nên áp dụng cách tra bảng là tốt nhất cho bài này .Nguyên văn bởi tychuot289 Xem bài viếtai giúp e viết hết và giải thích câu lệnh được không .gần nộp bài tập rồi .gặp ông thầy gay bà điên bà khùng nữa
;**********************
xuat equ p...
org 0000
ljmp main
main:
canh1:
mov dptr,#c_trinh1
mov r0,#8
mov r1,#0
laplai1:mov a,r1
movc @a+dptr
mov xuat,a
lcall delay
inc r1
djnz r0,laplai1
canh2:
mov dptr,#c_trinh2 ; thay đổi
mov r0,#8
mov r1,#0
laplai2:mov a,r1
movc @a+dptr
mov xuat,a
lcall delay;co the thay đổi để phù hợp c trinh
inc r1
djnz r0,laplai2
ljmp.....
;***********************
delay: tu viet
ret
c_trinh1: db 01h,02h,04h,08h,10h,20h,40h,80h;chay tu trai qua phai...led sang muc 1
c_trinh2: db 10000001b,01000010b,00100100b,00011000b,00011000b, 00100100b,01000010b,10000001b
end
;bạn cố giắng học đi nhé,chứ viết như vậy là quá rỏ rồi.....
Comment
-
Chương trình đầy đủ:
$MOD51
ORG 00H
MAIN:
ACALL HIEUUNG1
ACALL HIEUUNG2
ACALL HIEUUNG3
SJMP MAIN
HIEUUNG1:
PUSH 00H
PUSH 01H
MOV DPTR,#SANGDUOI
MOV R1,#5 ;SO LUOT CHAY ?K M?I HIEU UNG LA 5 LAN
MP1:
MOV R0,#00H
MOV P1,#00H
ACALL DELAY
MP2:
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
ACALL DELAY
INC R0
CJNE R0,#8,MP2
DJNZ R1,MP1
POP 01H
POP 00H
RET
HIEUUNG2:
PUSH 00H
PUSH 01H
MOV DPTR,#SANGDAN
MOV R1,#5
MP11:
MOV R0,#00H
MOV P1,#00H
ACALL DELAY
MP22:
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
ACALL DELAY
INC R0
CJNE R0,#8,MP22
DJNZ R1,MP11
POP 01H
POP 00H
RET
HIEUUNG3:
PUSH 00H
PUSH 01H
MOV DPTR,#SANGCHANLE
MOV P1,#00H
ACALL DELAY
MOV R1,#5
MP111:
MOV R0,#00H
MP222:
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
ACALL DELAY
INC R0
CJNE R0,#2,MP222
DJNZ R1,MP111
POP 01H
POP 00H
RET
DELAY: ;DELAY 0.5S
PUSH 00H
PUSH 01H
MOV TMOD,#01H
MOV R0,#100
DEL:
MOV TH0,#HIGH(-5000)
MOV TL0,#LOW(-5000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
DJNZ R0,DEL
POP 01H
POP 00H
RET
SANGDUOI:
DB 01H,02H,04H,08H,10H,20H,40H,80H
SANGDAN:
DB 01H,03H,07H,0FH,1FH,3FH,7FH,0FFH
SANGCHANLE:
DB 10101010B,01010101B
ENDKhông biết ngày mai sẽ ra sao?
Mà có ra sao cũng chẳng sao.
Comment
-
đoạn đầu $MOD51Nguyên văn bởi rongdatvamuc Xem bài viếtChương trình đầy đủ:
$MOD51
ORG 00H
MAIN:
ACALL HIEUUNG1
ACALL HIEUUNG2
ACALL HIEUUNG3
SJMP MAIN
HIEUUNG1:
PUSH 00H
PUSH 01H
MOV DPTR,#SANGDUOI
MOV R1,#5 ;SO LUOT CHAY ?K M?I HIEU UNG LA 5 LAN
MP1:
MOV R0,#00H
MOV P1,#00H
ACALL DELAY
MP2:
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
ACALL DELAY
INC R0
CJNE R0,#8,MP2
DJNZ R1,MP1
POP 01H
POP 00H
RET
HIEUUNG2:
PUSH 00H
PUSH 01H
MOV DPTR,#SANGDAN
MOV R1,#5
MP11:
MOV R0,#00H
MOV P1,#00H
ACALL DELAY
MP22:
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
ACALL DELAY
INC R0
CJNE R0,#8,MP22
DJNZ R1,MP11
POP 01H
POP 00H
RET
HIEUUNG3:
PUSH 00H
PUSH 01H
MOV DPTR,#SANGCHANLE
MOV P1,#00H
ACALL DELAY
MOV R1,#5
MP111:
MOV R0,#00H
MP222:
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
ACALL DELAY
INC R0
CJNE R0,#2,MP222
DJNZ R1,MP111
POP 01H
POP 00H
RET
DELAY: ;DELAY 0.5S
PUSH 00H
PUSH 01H
MOV TMOD,#01H
MOV R0,#100
DEL:
MOV TH0,#HIGH(-5000)
MOV TL0,#LOW(-5000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
DJNZ R0,DEL
POP 01H
POP 00H
RET
SANGDUOI:
DB 01H,02H,04H,08H,10H,20H,40H,80H
SANGDAN:
DB 01H,03H,07H,0FH,1FH,3FH,7FH,0FFH
SANGCHANLE:
DB 10101010B,01010101B
END
ORG 00H
nghĩa là sao anh .em viết giống như anh nhưng k đc .bị lỗi gì đó .chip của em là at98c2051
Comment
-
Mình đã viết lại code cho bạn,nhưng hơi chỉnh sửa 1 chút,nếu nối mạch như bạn thì mức tích cực là 1 (thì led sáng),nhưng nếu làm mạch thực thì người ta ko làm vậy mà sẽ cho mức tích cực là 0 (vì con 89 mà ở chế độ xả dòng thì led ko đủ sáng),code mình viết lại như sau:Nguyên văn bởi tychuot289 Xem bài viếtmới học nên còn gà .ai giúp với
#include<At892051.h> // khai bao thu vien cho 89c2051
void delay (int ms) // ham tao tre
{
int i,j;
for(i=0;i<ms;i++)
{
for(j=0;j<125;j++)
{}
}
}
// KHAI BAO MANG
unsigned char mang1[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00},// SANG DON
mang2[]={0x7e,0xbd,0xdb,0xe7,0xe7,0xdb,0xbd,0x7e} ; // sang chay vao chay ra
void main()
{
int i;
while(1)
{
for(i=0;i<8;i++) // sang don
{
P1=mang1[i]; delay(300);
}
P1=0xff;delay(500);
for(i=0;i<8;i++) // sang ra-vao
{
P1=mang2[i]; delay(300);
}
P1=0xff;delay(500);
for(i=0;i<4;i++) // led chan led-sang tat
{ P1=0xaa;delay(300);
P1=0x55;delay(300);
}
P1=0xff;
delay(1500);
}
}
Last edited by viboyth.haui; 08-09-2012, 21:40.vanduc0211@gmail.com
Comment
-
lặp lại hiệu ứng vài lần thì thêm gì nữa bạn .bạn viết kiểu sáng dồn nháy từng led rồi dồn lại không .kiểu dồn của bạn là sáng dần rồi .thêm kiểu tắt dần cũng đcNguyên văn bởi viboyth.haui Xem bài viếtMình đã viết lại code cho bạn,nhưng hơi chỉnh sửa 1 chút,nếu nối mạch như bạn thì mức tích cực là 1 (thì led sáng),nhưng nếu làm mạch thực thì người ta ko làm vậy mà sẽ cho mức tích cực là 0 (vì con 89 mà ở chế độ xả dòng thì led ko đủ sáng),code mình viết lại như sau:
[ATTACH=CONFIG]51440[/ATTACH]
Comment
Bài viết mới nhất
Collapse
-
bởi mèomướpDạ nó bị tắc ẩm hoặc rò thiếu gas hoặc lốc yếu hoặc van tiết lưu có vấn đề hoặc tất cả những nguyên nhân trên ạ. Chú ko chuyên về mảng này thì bán đi, giành thời gian trồng rau sạch đem ra chợ bán lấy tiền mua tủ mới ạ. Còn...
-
Channel: Điện tử gia dụng
hôm nay, 17:01 -
-
bởi afrendlyXin chào mọi người. Mình lại có vấn đề về đồ điện cần nhờ mọi người hỗ trợ giúp. Mình có tủ lạnh Sharp dùng cũng lâu rồi. Trước có bị kém lạnh, không đông đá thì có thợ họ mang về, sục đường ga gì đó hết 900k và đã dùng...
-
Channel: Điện tử gia dụng
hôm nay, 16:53 -
-
bởi dinhthuong92Đấy, cái tôi thắc mắc là chỗ màu hồng ấy bạn, để áp vào cao chứ không bị sụt gần bằng áp pin thì rất cần cuộc cảm để làm điều đó. Tuy nhiên, trong công thức bác thớt dẫn không thấy mặt L, và một vài mạch MPPT tôi đã kiểm...
-
Channel: Nguồn!
Hôm qua, 10:01 -
-
bởi mèomướpDạ mạch sạc là 1 cục nguồn, nó sẽ điều chỉnh công suất đầu ra để có tổng trở bằng nội trở của pin ạ. Và cái cách nó chỉnh công suất đầu ra sẽ là dạng buck, boot. Đều cần đến cuộn cảm ạ. Tất nhiên chú thích thì có thể dùng dạng tuyến tính transistor để bù trừ nhưng mà nó đốt năng lượng vô ích ạ...
-
Channel: Nguồn!
08-05-2026, 16:26 -
-
bởi dinhthuong92Tng trở R của tải (gồm pin và mạch sạc) trong công thức đó rõ ràng khống có L xuất hiện. Nếu tính các dây dẫn thì rất nhỏ, bỏ qua. Vì nội trở pin là rất nhỏ, có thể nói luôn lớn hơn nội trở solar, nên mạch MPPT sẽ hầu như luôn tính...
-
Channel: Nguồn!
08-05-2026, 11:00 -
-
bởi dinhthuong92Chào bác. Đã là công thức phải tổng quát chứ, nó phải thể hiện cả quá trình, rối thì quá độ hay xác lập tính sau vì tùy điều kiện. Cũng như công thức tính diện tích chả hạn, phải là tích phân....
-
Channel: Nguồn!
08-05-2026, 10:49 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi vi van phamCa sĩ AI cũng có vài loại, có ca sĩ chuyên và không chuyên.Ca sỉ chuyên thì là Synthesizer V, còn không chuyên thì là Suno. Ca sĩ chuyên thì mệt với nó lắm, phải biết nhạc và biết cả ngôn ngữ của nó để điều khiển, còn ca sĩ không chuyên thì...
-
Channel: Tâm tình dân kỹ thuật
04-05-2026, 21:33 -

Comment