mình đang làm phần giao tiếp với máy tính qua RS232, nếu máy tính truyền một ký tự thì mình giải quyết được, còn nếu máy tính truyền một chuổi kết thúc bằng ký tự ENTER thì mình vẫn chưa làm được, đang bí quá. yêu cầu là chuổi sau khi được gửi xuống thì lưu vào biến temp, xin các cao thủ chỉ giúp.
Thông báo
Collapse
No announcement yet.
Xin hỏi về vấn đề nhận một chuổi từ máy tính
Collapse
X
-
Biến temp của bạn phải là một mảng kí tự( theo kiểu C/C++)vậy biến tem này cũng có độ dài n và kí hiệu là temp[n]. Bạn có thể làm thuật toán như sau:
Giả sử chuỗi kí tự cần gửu là String[n] có độ dài là n kí tự ASCII, các bước gửu lần lượt như sau:
Bước 1: Gửu lệnh thông báo bắt đầu gửu chuỗi từ PC tới MCU
Bước 2: Gửu lệnh sẵn sàng nhận chuỗi từ MCU tới PC
Bước 3: Gửu kí tự đầu tiên trong chuỗi String[n] là String[0] từ PC tới MCU
Bước 4: MCU nhận đc kí tự đầu tiên thì lưu temp[0]=(kí tự nhận dc) rồi gửu thông báo yêu cầu gửu kí tự thứ 2( từ MCU tới PC)
Bước 5: Sau khi đọc yêu cầu gửu kí tự thứ 2 của MCU thì chuyển sang gửu kí tự tứ 2 (từ PC tới MCU)
Bước 6: MCU nhận đc kí tự thứ 2 thì lưu temp[1]=(kí tự nhận đc) gửu thông báo yêu cầu gửu kí tự thứ 3(Từ MCU tới PC)
Bước 7: Khi đọc đc yêu cầu gửu kí tự thứ 3 của MCU thì bắt đầu gửu kí tự thứ 4 (PC tới MCU)
.......................
Quá tình cứ tiếp tụ như vậy tới khi gửu đủ n kí tự trong chuỗi String[n] và PC báo kết thúc quá trình truyền dư liệu tới MCU
bạn phải kí hiệu các mã xác nhận gửu, yêu cầu gửu, kết thúc các quá trình gửu là các mã không phải là mã kí tự trong bảng mã ASCII để tránh cho việc hiểu lầm của PC và MCU với các kí tự cần gửu trong chuỗi String[n]
-
Chú ý là chỉ khi MCU có yêu cầu gửu kí tự thì mới tiếp tục gửu, còn chưa có yêu cầu gửu thì không đc gửu tránh bị đè mất dữ liệu khi gửu đó.Nguyên văn bởi kidteam Xem bài viếtok đồng ý với bạn
đây là cách gửi từng ký tự
nói chung thì cần thỏa thuận giữa MCU và PC
Comment
-
minh cung biet vay, nhung tren C thi khai bao nhu the nao. minh dung ngat Rx nen hoi lung tung.
void nhan (void temp[])
khai bao ham ngat nhan du lieu nhu the ma no cu bao loi o bien temp do hoai. y minh muon chi can goi ham nhan(str) thi chuoi nhan duoc se luu vao chuoi str. xin cac bac co the viet luon chi tiet tung cau lenh dum luon de em co the giai quyet duoc van de nay. cam on nhieu.
sorry! do minh truy cap tren dien thoai nen go ko co dau.hãy cố gắng dù vướn phải thất bại!!!!!!!!
Comment
-
Bạn khai báo sai rồi.Nguyên văn bởi chipmickey Xem bài viếtminh cung biet vay, nhung tren C thi khai bao nhu the nao. minh dung ngat Rx nen hoi lung tung.
void nhan (void temp[])
khai bao ham ngat nhan du lieu nhu the ma no cu bao loi o bien temp do hoai. y minh muon chi can goi ham nhan(str) thi chuoi nhan duoc se luu vao chuoi str. xin cac bac co the viet luon chi tiet tung cau lenh dum luon de em co the giai quyet duoc van de nay. cam on nhieu.
sorry! do minh truy cap tren dien thoai nen go ko co dau.
void nhan (char temp[])
Comment
-
Bạn có thế cho 1 đoạn code mẫu ko.
Mong bạn hãy giúp cho đoạn code mẫu.Nguyên văn bởi congbinh1989 Xem bài viếtBiến temp của bạn phải là một mảng kí tự( theo kiểu C/C++)vậy biến tem này cũng có độ dài n và kí hiệu là temp[n]. Bạn có thể làm thuật toán như sau:
Giả sử chuỗi kí tự cần gửu là String[n] có độ dài là n kí tự ASCII, các bước gửu lần lượt như sau:
Bước 1: Gửu lệnh thông báo bắt đầu gửu chuỗi từ PC tới MCU
Bước 2: Gửu lệnh sẵn sàng nhận chuỗi từ MCU tới PC
Bước 3: Gửu kí tự đầu tiên trong chuỗi String[n] là String[0] từ PC tới MCU
Bước 4: MCU nhận đc kí tự đầu tiên thì lưu temp[0]=(kí tự nhận dc) rồi gửu thông báo yêu cầu gửu kí tự thứ 2( từ MCU tới PC)
Bước 5: Sau khi đọc yêu cầu gửu kí tự thứ 2 của MCU thì chuyển sang gửu kí tự tứ 2 (từ PC tới MCU)
Bước 6: MCU nhận đc kí tự thứ 2 thì lưu temp[1]=(kí tự nhận đc) gửu thông báo yêu cầu gửu kí tự thứ 3(Từ MCU tới PC)
Bước 7: Khi đọc đc yêu cầu gửu kí tự thứ 3 của MCU thì bắt đầu gửu kí tự thứ 4 (PC tới MCU)
.......................
Quá tình cứ tiếp tụ như vậy tới khi gửu đủ n kí tự trong chuỗi String[n] và PC báo kết thúc quá trình truyền dư liệu tới MCU
bạn phải kí hiệu các mã xác nhận gửu, yêu cầu gửu, kết thúc các quá trình gửu là các mã không phải là mã kí tự trong bảng mã ASCII để tránh cho việc hiểu lầm của PC và MCU với các kí tự cần gửu trong chuỗi String[n]
Comment
Bài viết mới nhất
Collapse
-
bởi theidiotcatViệc lựa chọn một chiếc laptop gaming phù hợp với nhu cầu, ngân sách chưa bao giờ là dễ dàng. Và điều đó càng khó hơn trong năm 2026 khi mà mức giá liên tục tăng.
Nếu bạn chưa biết nên chọn một chiếc laptop gaming như thế nào...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:29 -
-
bởi theidiotcatVới mức ngân sách 20 - 30 triệu đồng trong năm 2026, các bạn sinh viên và dân văn phòng có thể tìm thấy nhiều lựa chọn cao cấp, mạnh mẽ, pin “trâu”, đặc biệt là các mẫu laptop AI hỗ trợ cho học tập và làm việc.
Trong phân...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:25 -
-
bởi theidiotcatDưới đây là một số mẫu laptop nổi bật trong phân khúc dưới 20 triệu giúp các bạn văn phòng, sinh viên và đặc biệt là tân sinh viên có thể dễ dàng lựa chọn được mẫu laptop phù hợp với nhu cầu và ngân sách của mình.
Thị...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:07 -
-
bởi theidiotcatViệc chọn mua một bộ máy tính phục vụ cho các nhu cầu làm việc văn phòng và sử dụng cơ bản hàng ngày đang trở nên dễ dàng và tiết kiệm hơn bao giờ hết. Thay vì phải đau đầu trích ngân sách để mua cả vi xử lý lẫn card đồ họa rời...
-
Channel: Đánh giá sản phẩm DTVN
25-06-2026, 11:23 -
-
bởi theidiotcatViệc nâng cấp từ một dàn máy tính cũ lên cấu hình mới luôn khiến nhiều người đắn đo về mức chi phí bỏ ra. Nếu bạn đang tìm kiếm một sự lột xác hoàn toàn về hiệu năng mà vẫn cân đối được dòng tiền, combo giữa vi xử lý Ryzen...
-
Channel: Đánh giá sản phẩm DTVN
25-06-2026, 11:06 -
-
Trả lời cho Lực dọc trục làm hỏng ổ bi.bởi nguyendinhvanVí dụ một trang như thế này
...-
Channel: Điện tử công suất
24-06-2026, 19:57 -
-
Trả lời cho Lực dọc trục làm hỏng ổ bi.bởi nguyendinhvanỔ bi có loại chịu lực dọc, loại chịu lực ngang.
Bạn kiếm một quyển Data cũng một hãng vòng bi nào đó. Họ sẽ cấp cho bạn đủ thông số kỹ thuật.
Khi lựa chọn được mã sản phẩm, bạn chỉ việc tìm mua mã đó, hoặc đặt hàng....-
Channel: Điện tử công suất
24-06-2026, 19:52 -
-
bởi GargiChào mọi người, tôi đang gặp một vấn đề kỹ thuật và muốn được nghe ý kiến của mọi người.
Tôi đã lắp một đĩa xích vào trục đầu ra của hộp số hành tinh bánh răng xoắn dùng cho truyền động xích. Sau vài tháng hoạt động, ổ bi đầu ra bị hỏng.
Bản thân...-
Channel: Điện tử công suất
24-06-2026, 13:22 -
-
bởi vi van phamSau hàng chục năm, không biết có ai còn nghĩ gì về tôi? Riêng tôi, nhớ nhiều về dientuviet nam. net. Ngày ấy tìm 1 người bạn đam mê về điện từ khó như trúng số độc đăc. Tôi đã trúng số độc đắc khi được mời về dientuvietnam.net...
-
Channel: Tâm tình dân kỹ thuật
23-06-2026, 22:43 -
-
bởi FotiniChào mọi người.
Cấu trúc khung giàn của tôi sử dụng một động cơ servo tích hợp trên mỗi trục (https://www.oyostepper.es/category-8...integrado.html), với một dây nối đất chung.
Việc kích hoạt từng trục riêng lẻ hoạt động tốt, nhưng...-
Channel: Điện tử dành cho người mới bắt đầu
18-06-2026, 14:03 -

Comment