Mình đã đọc phần nói về giao tiếp giữa PC với 8051 qua UART.Mình đã viết đựoc 1 chương trình gửi 1byte từ PC qua 8051.Giờ mình muốn phát không phải là 1 byte mà 1 chuỗi khoảng 10byte vào 8051 thì phải làm như thế nào?
Thông báo
Collapse
No announcement yet.
Giao tiếp với 8051 qua cổng rs232
Collapse
X
-
Sao không lặp công việc đó 10 lần nhỉ
nhận 10 bytes từ 'đâu đó' lưu vào vùng RAM từ 30h->3ah, rất đơn giản phải hông, chú ý bố trí vùng nhớ sao cho phù hợp . Mới bị một "vố" khi dùng serial interrupt mà setb ti từ đầu chương trình, hậu quả thế nào thì biết rồi hehe, còn bit ri thì cứ vô tư mà xài!Code:mov r3,#30h loop: jnb ri,$ clr ri mov @r3,sbuf dec r3 cjne r3,#3bh,loop jmp [.....] ....
-
Ko biết bạn dùng module RF nào vậy ? Mình thấy có loại module RF có UART, có loại chỉ là mạch dao động cao tần, loại này trên mạch đưa ra 3 chân GND, TxD, Vcc nhưng được cái giá nó rẻ (khoảng 15K). Loại có hỗ trợ UART thì sử dụng đơn giản, loại còn lại thì phải lập trình thêm 1 tí, code thì cũng có sẵn trong diễn đàn.
Comment
-
chào các bác.em cũng đang làm 1 bài như thế này.em đã thử làm như thế này nhưng vẫn không được
em cho cái chương trình nhận 1 kí tự vào 1 vòng lặp và ghi liên tiếp vòng lặp đó vào 1 mảng.sau đó ghi chuỗi vừa nhập lên LCD nhưng không được.các bác giúp em với
void ctngat(void)interrupt 4
{
for(j=0;j<=30;j++)
{
M[j]=_getkey();
}
write_data(M[j]);//ch? này em thay bang write_string nhung lai bao loi
delay_us(10);
bài này em hiển thị lên LCD
Comment
-
Giao tiep 8051 voi rs232
Em lập trình giao tiếp may tính điều khiển led đơn nhưng sao em làm hoài mà không được
Em post bài cho mọi người mọi người giúp em với
PHP Code:ORG 00H
LJMP MAIN
ORG 23H
LJMP SERIA
ORG 03H
MAIN:
MOV P2,#0
MOV P1,#0
MOV P0,#0
MOV TMOD,#20H
MOV TH1,#0FDH
MOV SCON,#50H
SETB TR1
BACK:
CALL SOSANH
JMP BACK
; TRINH PHUC VU NGAT
ORG 150H
SERIA:
JB TI,TRANS
MOV A,SBUF
CLR RI
RETI
TRANS:
CLR TI
RETI
;CHUONG TRINH SO SANH
SOSANH:
CJNE A,#'A',NH0
call choptat
NH0: CJNE A,#'B',NH1
call sangdan_tu
NH1: CJNE A,#'C',NH2
call tatdan_tu
NH2: CJNE A,#'D',NH3
call sangchay_tu
NH3: CJNE A,#'E',NH4
call tatchay_tu
NH4: CJNE A,#'F',NH5
call sangchay_tu
NH5: CJNE A,#'G',NH6
call sangdan_tu
NH6: CJNE A,#'H',NH7
call sangdan_tu
NH7: MOV A,#00H
RET
;//////////////////
choptat:
mov p0,#0
mov p2,#0
call delay
mov p0,#0ffh
mov p2,#00111111b
call delay
ret
sangdan_tu:
mov p0,#0
mov p2,#0
call delay
nhan1: setb c
mov a,p1
rlc a
mov p1,a
call delay
jnc nhan1
ret
tatdan_tu:
mov p0,#0ffh
mov p2,#00111111b
call delay
nhan2: clr c
mov a,p0
rlc a
mov p0,a
call delay
jc nhan2
ret
sangchay_tu:
mov p0,#0
mov p2,#0
call delay
setb c
nhan3: mov a,p0
rlc a
mov p0,a
call delay
jnc nhan3
clr c
nhan4:
mov a,p0
rrc a
mov p0,a
call delay
jnc nhan4
ret
tatchay_tu:
mov p0,#0ffh
mov p2,#0ffh
call delay
clr c
nhan5: mov a,p0
rlc a
mov p0,a
call delay
jc nhan5
mov p0,#0ffh
mov p2,#11101111b
setb c
nhan6:
mov a,p0
rrc a
mov p0,a
call delay
jc nhan6
ret
;/////////////
delay:
mov r1,30h
hoan2:mov r2,#10
hoan1:mov r3,#200
djnz r3,$
djnz r2,hoan1
djnz r1,hoan2
ret
END
Comment
-
Giao tiếp máy tinh 8051 qua rs232
Thank bạn nhá. Bạn cho mình nick yahoo được không cho mình tiện liên lạc.............. nick yahoo của mình là duchoadt_hn@yahoo.com
Comment
-
Bữa giờ mày mò mới làm được nhiều đây.Bạn nào vào giúp mình tiếp nữa.Mô phỏng thì mình có đính kèm.Mình mới chỉ dùng ngắt nối tiếp để truyền 1 chuỗi byte kết thúc bởi mã " 30h" vào MASTER (lưu bắt đầu từ địa chỉ ram 30h)theo uart, sau đó từ master gửi qua slave ( lưu bắt đầu ở địa chỉ ram 50h) dùng ngắt ngoài 0.Giờ mình không biết làm sao để có thể xuất giá trị nhận được ở Slave ra lại UART của slave nhỉ ???
Mong các bạn giúp mình



Link mô phỏng và code:
http://www.mediafire.com/?o2ywlo97gfprorf
Comment
Bài viết mới nhất
Collapse
-
bởi Abril9Chào mọi người, động cơ bước có hộp số (https://www.oyostepper.es/category-2...eductores.html) trên thiết bị của tôi đã được sử dụng khoảng sáu tháng. Gần đây, tôi nhận thấy dầu rò rỉ từ trục đầu ra. Mỡ bôi trơn đã bị chảy và nhỏ giọt...
-
Channel: Các hệ thống tự động hóa khác
Hôm qua, 13:26 -
-
bởi AbirChào mọi người, gần đây tôi có một ý tưởng mới.
Tôi muốn nâng cấp thiết bị của mình để tăng tốc độ, vì vậy tôi đã thay đổi nguồn cấp cho mạch điều khiển từ 24V lên 48V. Động cơ vẫn giữ nguyên và dòng điện định...-
Channel: Điện tử công nghiệp
Hôm qua, 09:49 -
-
bởi nguyendinhvanCó một chi tiết sai cơ bản trong kỹ thuật điện tử....
-
Channel: Tâm tình dân kỹ thuật
26-03-2026, 19:31 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Bài hát mới, nhạc Phật: Về Giữa Chiêm Bao, sáng tác: Hoàng Đình Thường.
[Verse 1] Nhân gian bao thay đổi
ĐỜI là giấc CHIÊM BAO
Người mê lầm tranh đấu
KHỔ ĐAU mãi LUÂN HỒI.
VÔ THƯỜNG nào ai thấu
THAM vơ...-
Channel: Tâm tình dân kỹ thuật
25-03-2026, 19:01 -
-
Trả lời cho Giúp mình vẽ sơ đồ và phân tích nguyên lý làm việc của khảo sát các mạch nguồn ổn áp vớibởi davidcopyBạn muốn hỏi nguyên lý làm việc của mạch nào...
-
Channel: Hỗ trợ học tập
24-03-2026, 22:50 -
-
Trả lời cho Giúp mình vẽ sơ đồ và phân tích nguyên lý làm việc của khảo sát các mạch nguồn ổn áp vớibởi N_Tu_Hoc_HoiBạn cần sơ đồ mạch ổn áp bao nhiêu Volt, Nếu giống anh bạn guiwr có khả năng ổn áp dùng iC họ 78XX, 79XX. Những mạch này bạn tim kiếm trên google sẽ thấy!!
-
Channel: Hỗ trợ học tập
23-03-2026, 02:32 -
-
bởi chinhnguyen9
Điến âp vào 24V;Điên áp ra 30V;Dòng điện ra 10A
Trên nền tảng mạch Boost thay đổi như sau: cự âm tụ lọc C không nối mas mà nối vào Vc +24V
Mach phản hồi tao điê áp trên tụ lọc này ổn đinh ở 6V
Kết quả:
· Điện áp ra =24V+ 6V=30V
· Công...-
Channel: Hướng dẫn sử dụng diễn đàn
21-03-2026, 19:33 -
-
bởi chinhnguyen92. Các yếu tố để dòng điện đầu ra không bị "thiếu"
Dòng điện đầu ra bị "thiếu" có thể hiểu là không đủ 10A theo yêu cầu hoặc bị sụt áp khi tải thay đổi. Để đảm bảo điều này, bạn cần xem xét các yếu tố sau:
a. Khả năng chịu dòng của cuộn cảm- Dòng bão hòa (I_sat): Như
-
Channel: Hướng dẫn sử dụng diễn đàn
21-03-2026, 19:06 -
bởi chinhnguyen9
1. Tính toán cuộn cảm (Inductor)
Để tính giá trị cuộn cảm, chúng ta cần thực hiện các bước sau:
a. Xác định chu kỳ nhiệm vụ (Duty Cycle - D)
Với mạch tăng áp lý tưởng, chu kỳ nhiệm vụ được tính theo công thức :
D=1-VinVout=1-24V30V=0.2
Vậy D = 0.2 (20%)
b....-
Channel: Hướng dẫn sử dụng diễn đàn
21-03-2026, 19:03 -

Comment