Mình thực hiện tính toán ra kết quả là 1 chuỗi dữ liệu 16bit. Mình dùng nó để gửi lên PC, mà chỉ có thể gửi 1 lúc 8bit thôi, nên muốn cắt chuỗi này ra thành 2 chuỗi nhỏ, gửi lên 2 lần. Mong mọi người giúp đỡ..
Thông báo
Collapse
No announcement yet.
Trong CCS làm sao cắt 1 chuỗi 16bit thành 2 chuỗi 8bit ?
Collapse
X
-
Nguyên văn bởi TheHouse Xem bài viếtMình thực hiện tính toán ra kết quả là 1 chuỗi dữ liệu 16bit. Mình dùng nó để gửi lên PC, mà chỉ có thể gửi 1 lúc 8bit thôi, nên muốn cắt chuỗi này ra thành 2 chuỗi nhỏ, gửi lên 2 lần. Mong mọi người giúp đỡ..
A1=A&0xff;
A2=swap(A)&0xff;
-
Nguyên văn bởi caovanhuong Xem bài viếtsử dụng lệnh "&", giả sử chuỗi 16bit là A => A1 là 8 bít thấp, A2 là 8 bit cao
A1=A&0xff;
A2=swap(A)&0xff;
-------------
Em xin đặt lại vấn đề. Em cần gửi 1 con số có độ dài 16bit từ VDK PIC lên PC. Và làm sao để VB có thể nhận được con số này ở dạng thập phân.
Comment
-
Khi gửi 1 giá trị thập phân 8bit Số chứ ko phải kí tự), khi Vb nhận thì bạn lại lấy mã ascii??Vậy phải làm sao đây?Thật dại dột. Hihi. Bạn hãy nhét cái đống dữ liệu đó vào 1 cái mảng kiểu byte rồi đối xử nó như 1 con số bình thường. Đây là 1 ví dụ hồi mình làm đk động cơ 1 chiều qua PC_Chỉ là vd để bạn tham khảo thôi.
Add: 97 Quán Nam - Lê Chân - Hải Phòng.
Tel: 031 518648 Phone: 0904 283 505
Comment
-
Nguyên văn bởi TheHouse Xem bài viếtHjx, làm được rồi, cảm ơn anh. Nhưng lại phát sinh vấn đề. Đem lên VB, do em lấy mã ascii của 2 chuỗi này, nên khi ghép lại nó sẽ thành 2 số ở hệ Decimal ghép lại với nhau. Nên ko biết xử lý sao luôn.
-------------
Em xin đặt lại vấn đề. Em cần gửi 1 con số có độ dài 16bit từ VDK PIC lên PC. Và làm sao để VB có thể nhận được con số này ở dạng thập phân.
Gửi: printf("%ld",12345);
Nhận: Máy tính nhận được các kí tự: '1','2,'3,'4','5'. Vậy giá trị cần phải tính ra là:
10*(10*(10*(10*('1'-'0')+'2'-'0')+'3'-'0')+'4'-'0')+'5'-'0'.
kí tự '0' có giá trị là 48,
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Cần tăng tốc bộ đếmbởi nhathung1101Thì bản thân nó đã sai rồi mà. Lão tin nó mà lắp vào máy đếm tiền thì tôi thành thật chia buồn.
...-
Channel: Điện tử công nghiệp
hôm nay, 02:54 -
-
Trả lời cho Hỏi thăm các cao nhân, các bác sống bằng gì?bởi nhathung1101AI chỉ là "trí tuệ nhân tạo" thôi. Có gì đáng lo chứ.
Em đang lo đàn bò nhân tạo nó lập trình ra "trí tuệ phân tạo" thì mới khó trả lương.
Vì chúng toàn đòi tính bằng "bít coi" hay "hít hôi"...
...-
Channel: Xu hướng, nhu cầu và thị trường
hôm nay, 02:49 -
-
bởi nguyendinhvanĐại ý là nó như thế này
1/2 + 1/4 + 1/8 + 1/8 = 1w
100 omh = 0.5w
200 omh = 0,25w
360 omh = 1/8w
560 omh = 1/8w
Tính chi li thì cs của cá 360 omh phải lớn hơn cái 560 omh. Nhưng xét lại thì chả có cái hãng sx linh kiện dở...-
Channel: Điện tử dành cho người mới bắt đầu
hôm nay, 02:10 -
-
Trả lời cho Hỏi thăm các cao nhân, các bác sống bằng gì?bởi nguyendinhvanThì mới hôm trước có chỗ nào đó đang tuyển Thày Cãi điện tử đấy !...
-
Channel: Xu hướng, nhu cầu và thị trường
hôm nay, 01:34 -
-
Trả lời cho Cần tăng tốc bộ đếmbởi nguyendinhvanLàm như thế là không được. vì nó sẽ sai thành hàng chục đơn vị....
-
Channel: Điện tử công nghiệp
hôm nay, 01:32 -
-
bởi trthnguyenVẫn thiếu dữ kiện
Gọi công suất của trở là P(R), điện áp 2 đầu trở là U, dòng điện qua trở là I thì trở an toàn khi P(R) < U x I hoặc P(R) < I x I x R...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 14:21 -
-
bởi yeurap7em chưa biết chọn loại điện trở bao nhiêu W để khi cấp 1 W đầu vào,4 con trở dán ko bị hỏng .
trên web em tìm thì có nhiêu loại trở dán ví dụ 0805 1w ,1206 0.25 w, 1210 0.5w ..vv ....
(theo e biết là đầu vào 1 w mà chia làm 2, thì đầu...-
Channel: Điện tử dành cho người mới bắt đầu
27-09-2024, 14:53 -
-
bởi yeurap7em xin bổ sung:
R1: 100 ohm
R2: 200 ohm
R3: 360 ohm
R4:560 ohm
PCB: chất liệu RF 35,độ dày lớp đồng 0,04 mm,độ rộng đường đi min 0,5 mm ạ-
Channel: Điện tử dành cho người mới bắt đầu
27-09-2024, 14:52 -
Comment