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
-
sử dụng lệnh "&", giả sử chuỗi 16bit là A => A1 là 8 bít thấp, A2 là 8 bit caoNguyê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;
-
Hjx, 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.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
-
Giả sử số cần gửi là 12345 tử vđk lên máy tính: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 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
...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 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 -
-
bởi chinhnguyen9Công thức
Gain (dB) = 20 × log₁₀(A)
Thí dụ 1; 60dB
log₁₀(A)=60/20=3
⇒ A=V_out / V_in = 10³ = 1.000
Thí dụ 2; 100dB
log₁₀(A)=100/20=5
⇒ A=V_out / V_in = 105 = 100.000
Tí dụ 3; LM 358
Large Signal Open Loop Voltage Gain AVOL V/mV RL = 2.0...-
Channel: Hướng dẫn sử dụng diễn đàn
19-03-2026, 08:44 -
-
Trả lời cho Mạch 3s bị giảm điện áp đầu rabởi minhtri0405chả biết bạn xử lý được chưa , kích sạc hoặc điện áp > điện áp khối pin vào 2 chân P - P+ , nhiều mạch phải yêu cầu có kích lần đầu sau đó mới chạy...
-
Channel: Điện tử dành cho người mới bắt đầu
18-03-2026, 10:01 -
-
bởi minhtri0405đây có phải là 1 cách để test mosfet xịn hay dỏm khi mua đồ tàu không nhỉ , vì ko thể đập ra để coi lõi rồi trả hàng được....
-
Channel: Tâm tình dân kỹ thuật
18-03-2026, 09:57 -

Comment