VC++ và COM
Collapse
X
-
ý, ông thầy nói là Visul C studio mới chết chứ, em ko hiểu nỗi cái ông này nữa, ngốc quá đi mất, c nào mà chẳng là C, Visual nào chẳng được chứ. hichic. cảm ơn bác nhiều
-
chương trình VC++ của bạn ổn chưa. Chương trình này tôi viết cũng lâu rồi, vì bây giờ tôi chủ yếu viết với C#. bạn tham khảo. Hình như chương trình này hiện thị Cstring, do dòng lệnh ép kiểu từ VARIANT. bạn thử thay đổi lại một chút xem nhé, máy tôi không cài VC6++Last edited by encoder; 13-09-2007, 23:24.
Leave a comment:
-
hichic, em còn 2 tiếng nữa thôi mà vẫn chưa chạy bác ạ, huhu. làm sao được nhĩ bác ơi.
Leave a comment:
-
cũng giống như số thập phân vậy. VD với số 23 thì số 2 là số có trọng số cao hơn số 3. thì hight byte va lowbyte cũng mang nghĩa như vậy. theo phép toán decimal thì
2 = (23) / 10 <-> hightByte = (int) >> 8;
3 = (23) % 10 <-> lơbyte = (int) & 0xff;
sự khác nhau chỉ là phép tính trong hệ thập phân và hệ nhị phân thôi.
Leave a comment:
-
bác có thể chỉ em rõ hơn cái bytecao và byte thấp ko ạ?
cảm ơn bác nhiều.
Em dần hiểu hơn một chút rồi ạ..
Leave a comment:
-
nếu truyền số nguyên thì chỉ cần 2 lần truyền ký tự là được. Không nên convert sang string vì như vậy tốn tài nguyên và không tối ưu về tốc độ. ví dụ về cách truyền số nguyên idata:
từ VDK: (code tượng trưng)
UART_PutChar(idata >> 8); // send hight byte
UART_PutChar(idata); // send low byte
// UART_PutChar là hàm gửi 1 kí tự
trên PC (ngôn ngữ C#)
hi = serialPort.ReadByte(); // read hightByte
low = serialPort.ReadByte(); // read low byte
idata = (hi << 8) | low; // nhpa lai thanh so nguyen
như vậy bạn chỉ cần truyền 2 kí tự là đủ, nếu convert sang string thì bạn có thể phải truyền nhiêu hơn. Ví dụ truyền số nguyên 12345 thì phải truyền 5 kí tự liên tiếp '1', '2', '3', '4', '5'. Hơn nữa hàm biến đổi số nguyên thành string cũng khá tốn bộ nhớ và thời gian thực thi.Last edited by encoder; 13-09-2007, 09:21.
Leave a comment:
-
bác lại cũng ngủ luôn mất rồi, hichic
cảm ơn bác, nhưng em ko cần cái Terminal làm gì cả, em cần đọc vaò 1 chương trình console trong VC thôi mà.
bạn cứ truyền số nguyên,miễn là truyền nhận okie là dc rồi.
Tiếc là em ko hiểu câu của bác, em chưa truyền được gì (cả nguyên và thực) bác ạ.
Leave a comment:
-
Nguyên văn bởi nghoang Xem bài viết1.Sử dụng thư viện stdio chuẩn. mình làm thế nào để sử dụng đựoc cái này bác ơi?
2. Nhưng nếu dùng realtime thì lời khuyên là không nên
realtime nghĩa là gì ạ? không nên là không nên làm gì ạ?
3. Cái này truyền dữ liệu ADC lên terminal trên máy tính.
terminal trên máy tính là gì vậy bác ơi???
4.PS:Mình xài GCC không xài CV.
GCC và CV là gì a?
Em mới làm quen điện tử và AVR, nên mong bác trả lời cụ thể chút ạ (cứ coi em là kẻ ngốc cũng được ạ), em biết bác đã làm rất khá các mảng này nên mới hiểu nhanh và trả lời vắn tắt như vậy.
Nhưng thực sự em đọc thì rất khó hiểu được nội dung ạ. đa tạ bác!!!! mong bác giúp em đêm nay.
cái này có
1)stdio là thư viên giao tiếp có các hàm giao tiếp như :"printf,scanf" hàm này có thể nhận tham số dạng số thực tự chuyển đổi sang dạng kí tự rồi truyền đi,nhưng hình như trong GCC nó bị lược giản chức năng truyền số thực,bạn cứ truyền số nguyên,miễn là truyền nhận okie là dc rồi.
2)realtime vì lệnh này mà chạy thì tốn rất nhiều chu kì máy của vdk.
3)Terminal là 1 chương trình đầu cuối giao tiếp máy tính bằng cổm COM bạn khôgn cần viết ct cho máy tính có thể lấy cái này xàilink cho ct này nằm ở đây4)AVR GCC là bộ ct dùng để dịch C cho AVR còn CV là codevision AVR.
đi ngủ,mưa làm nhức cái đầu.hichic
Leave a comment:
-
1.Sử dụng thư viện stdio chuẩn. mình làm thế nào để sử dụng đựoc cái này bác ơi?
2. Nhưng nếu dùng realtime thì lời khuyên là không nên
realtime nghĩa là gì ạ? không nên là không nên làm gì ạ?
3. Cái này truyền dữ liệu ADC lên terminal trên máy tính.
terminal trên máy tính là gì vậy bác ơi???
4.PS:Mình xài GCC không xài CV.
GCC và CV là gì a?
Em mới làm quen điện tử và AVR, nên mong bác trả lời cụ thể chút ạ (cứ coi em là kẻ ngốc cũng được ạ), em biết bác đã làm rất khá các mảng này nên mới hiểu nhanh và trả lời vắn tắt như vậy.
Nhưng thực sự em đọc thì rất khó hiểu được nội dung ạ. đa tạ bác!!!! mong bác giúp em đêm nay.
cái này có
Leave a comment:
-
Sử dụng thư viện stdio chuẩn.
Khỏi mất time viết code chuyển đổi.
Nhưng nếu dùng realtime thì lời khuyên là không nên.
Cái này truyền dữ liệu ADC lên terminal trên máy tính.
PS:Mình xài GCC không xài CV.Attached Files
Leave a comment:
-
tính ra nó khó thế ạ, em đang đọc bài này, mà có nhiều lệnh ko hiểu quá, xin các bác chỉ giúp em với. đây là toàn bộ chương trình của bác gtvt45 ạ.
http://dientuvietnam.net/forums/show...?t=7391&page=2
cảm ơn các bác nhiều lắm ạ
Leave a comment:
-
Mình nhớ không lầm thì trong CodeVision chỉ có hàm truyền kí tự tức là truyền một char. Để truyền một số trước hết bạn phải chuyển thành xâu kí tự sau đó truyền từng kí tự một như để truyền xau kí tự: "abc" thì bạn phải truyền lần lượt "a","b" và "c". Để truyền một số nguyên bạn đổi nó thành xâu sau đó cũng thực hiện truyền từng kí tự trong xâu. Không biết CodeVision mới nhất có hỗ trợ truyền xâu kí tự khôngNguyên văn bởi nghoang Xem bài viếtChia ra điện áp rồi lại nhân rồi vẫn phải chuyển sang số nguyên rồi lại chuyển thành string. Nếu làm trên CodeVision
nghĩa là sao vậy bác?? sao ta phải chuyển sang string a???
Leave a comment:
-
Chia ra điện áp rồi lại nhân rồi vẫn phải chuyển sang số nguyên rồi lại chuyển thành string. Nếu làm trên CodeVision
nghĩa là sao vậy bác?? sao ta phải chuyển sang string a???
Leave a comment:
-
Chia ra điện áp rồi lại nhân rồi vẫn phải chuyển sang số nguyên rồi lại chuyển thành string. Nếu làm trên CodeVisionNguyên văn bởi encoder Xem bài viếtcó một cách đơn giản mà hiệu quả hơn, tôi nghĩ bạn có thể áp dụng. Đó là lấy số thực nhân với 10 (nếu muôn sau dấu , 1 chữ số có nghĩa) hoặc nhân 100 (nếu 2 chữ số có nghĩa) rồi truyền nó theo số nguyên lên máy tính. máy tinh nhận được lại chia cho 10 hay 100 thành số thực. Ví dụ 2,3 thì truyền thành 23 hoặc 230.
Nếu là giá trị điẹn áp từ 0 - 5V thì bạn không nên truyền theo đơn vị Volt mà truyền theo mV (tức là nhân với 1000). 2.3 V thì thì truyền thành 2300.
Leave a comment:
-
cái xx, yy, zz là các byte bạn tự định nghĩa trong giao thức truyền nhận của mình. Bạn thích nó bằng bao nhiêu cũng được. Việc truyền thứ tự hi_byte hoặc low_byte trước cũng là một kiểu định nghĩa mà do bạn đặt ra để bên nhận theo giao thức đó mà nhận đúng dữ liệuNguyên văn bởi nghoang Xem bài viếtxx // start byte
0x00 // hi byte
0x01 // low byte
(yy) // có thể thêm ki tự '.' nếu muốn
0x00 // hi byte
0x02 // low byte
zz // stop byte
các dòng này em chưa hiểu ý nghĩa của nó lắm bác ạ, sao có xx, yy, zz là gì vậy ạ??
Leave a comment:
dự án của bạn Tra theo mã, xem datasheet và đặt hàng trực tuyến. MicrochipROHMEpsonTaejin
Đặt hàng & tư vấn
Hà Nội024.3640 8561
TP.HCM028.3811 9870
Quét mã hoặc bấm để chat Zalo với R&PChat Zalo
Quét mã hoặc bấm để chat Zalo với R&PChat Zalo
Bài viết mới nhất
Collapse
There are no results that meet this criteria.
Leave a comment: