Thông báo
Collapse
No announcement yet.
Giao tiếp 8051 với máy tính qua cổng Com
Collapse
X
-
các bạn tham khảo vi dụ 89 gia tiêp với máy tính trong Phan Information Technology tim trong muc Hoc tap0912666017
Comment
-
phần chương trình trên máy tính - nếu người mới thì dùng VB cho dễ, pro hơn thì dùng C++. Vào CodeProject - For those who code mà tham khảo.0912666017
Comment
-
TXD & RXD ở đây ý nói về 2 pin của max232, bác xem trên google về sơ đồ nối dây giữa max232 và cổng db9 nhé.
để demo được thì cần có cable nối db9-usb loại tốt (nhớ cài driver kèm theo), và cần phải điều chỉnh tốt trong hyperterminal
chương trình dưới đây làm viêc như sau: nhấn nút nhấn nào (nút 1 - nút 8) thì trên hyperterminal sẽ hiện số đó (1 - 8).
nut nhấn 1 -8 tương ứng với P1.0 - P1.7 (vd: khi nhấn nút 3 thì P1.2 chuyển từ mức 1 sang mức 0).
có gì thì hú mình. nếu bác ở HCM thì có thể diện kiến trực tiếp.
Code dưới dây làm việc tốt trên UltraKit của mình rồi, nên bác không cần lăn tăn là code đúng hay sai nhé.
; Nut nhan don noi voi Port1
; RXD cua DB9 noi voi P3.0
; TXD cua DB9 noi voi P3.1
; Set Bits per second = 2400
; Data bits = 8, Parity = None
; Stop bits =1, Flow control = None
; Thach anh 11.0592 (chinh trong target option cua keil c)
ORG 000H
MOV TMOD,#20H
MOV SCON,#50H
MOV TH1,#-12
SETB TR1
ONE:JB P1.0,TWO
MOV A,#31H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
TWO:JB P1.1,THREE
MOV A,#32H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
THREE:JB P1.2,FOUR
MOV A,#33H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
FOUR:JB P1.3,FIVE
MOV A,#34H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
FIVE:JB P1.4,SIX
MOV A,#35H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
SIX:JB P1.5,SEVEN
MOV A,#36H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
SEVEN:JB P1.6,EIGHT
MOV A,#37H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
EIGHT:JB P1.7,NINE
MOV A,#38H
CALL DELAY
MOV SBUF,A
JNB TI,$
CLR TI
NINE:JMP ONE
DELAY:
MOV R5,#2
LOOP2: MOV R6,#250
LOOP: MOV R7,#250
DJNZ R7,$
DJNZ R6,LOOP
DJNZ R5,LOOP2
RET
END
Comment
-
#include <REG52.H> /* special function register declarations */
/* for the intended 8051 derivative */
#include <stdio.h> /* prototype declarations for I/O functions */
#ifdef MONITOR51 /* Debugging with Monitor-51 needs */
char code reserve [3] _at_ 0x23; /* space for serial interrupt if */
#endif /* Stop Exection with Serial Intr. */
/* is enabled */
void main (void) {
/*------------------------------------------------
Setup the serial port for 1200 baud at 16MHz.
------------------------------------------------*/
#ifndef MONITOR51
SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */
TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */
TH1 = 221; /* TH1: reload value for 1200 baud @ 16MHz */
TR1 = 1; /* TR1: timer 1 run */
TI = 1; /* TI: set TI to send first char of UART */
#endif
/*------------------------------------------------
Note that an embedded program never exits (because
there is no operating system to return to). It
must loop and execute forever.
------------------------------------------------*/
while (1) {
P1 ^= 0x01; /* Toggle P1.0 each time we print */
printf ("Hello World\n"); /* Print "Hello World" */
}
}
Bài kinh điển với C nhé!
Comment
Bài viết mới nhất
Collapse
-
bởi afrendlyCảm ơn bạn. Mình hỏi để thợ có thể tham khảo thôi chứ không đủ kiển thức để sửa, mà cũng không có đồ nghề, mua đồ nghề quá tiền máy. Gọi nhiều lần mà thợ hẹn mãi chưa có tới ấy bạn. Mình muốn sửa được chứ bỏ thì uống, nhưng sợ là được mỗi người thợ mà lại không sửa nổi....
-
Channel: Điện tử gia dụng
hôm nay, 00:34 -
-
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 qua, 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 qua, 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!
09-05-2026, 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 -

Comment