Nếu đây là lần đầu tiên đến với Điện Tử Việt Nam, bạn có thể đọc phần Hỏi đáp bằng cách nhấn vào liên kết. Có thể bạn cần đăng kí trước khi có thể gửi bài . Để bắt đầu xem bài viết, chọn diễn đàn bạn muốn thăm dưới đây.
mình làm mạch giao tiếp AVR với PC khi truyền từ máy tính xuống AVR thì truyền được còn khi truyền lên thì chào thua.Mình thay vài con rồi mà vần như vậy.Có bác nào biết về hiện tượng này thì mình hỏi cái và khắc phục như thế nào nhỉ
Để truyền thông giữa các loại vi xử lý và PC theo tôi có 3 cách như sau:
- cách thứ nhất: dùng 1 byte đặc biệt để đánh dấu ở cuối khung truyền để bên nhận có thể biết khi nào dữ liệu đã được truyền xong. tuy nhiên cách này không được hoàn hảo nếu như bạn muốn dùng các ký tự này trong khung truyền.
- cách thứ 2: là dùng phương pháp đếm thời gian để biết rằng khi nào dữ liệu đã truyền xong. một bít trong một khung truyền chỉ truyền trong một khoảng thời gian nhất định nào đấy nếu quá thời gian này thì coi như khung truyền đã được truyền xong hoặc bị lỗi. thuật toán của phương pháp này như sau:
nhận bít đầu tiên của khung
|
|
V
nhận xong và cho timer đếm
|
|
V
Nếu quá timer đếm quá thời gian quy định
mà vẫn chưa có bít tiếp theo
( khoảng 20ms) thì coi như đã truyền xong
- Cách thứ 3: kết hợp cả 2 phương pháp trên. theo tôi cách này là an toàn tuyệt đối, tôi đã thử dùng cả 3 cách này, kết quả là khả quan. Chúc các bạn thành công.
chào bạn !
mình đang làm về đề tài thiết kế cân điện tử dùng VĐk AVR ,kết quả đo được hiển thị trên led
Bạn có tài liệu ,sơ đồ mạch kết nối hướng dẫn giúp mình với,hoặc gửi cho mình theo địa chỉ mail toiyeuvietnam8x@gmail.com
Cảm ơn bạn nhiều!
Các bác ơi ! Giúp em với !
Em đang test thử cái giao tiếp 232 với máy tính nhưng mãi mà chưa được !
Về phần chương trình thì em nghĩ không có vấn đề gì , vì em đã thực hiện giao tiếp giữa 2 con AT32 thì OK ! Còn chương trình trên máy tính cũng OK luôn vì đã nối RxD và TxD của máy tính với nhau !
Vấn đề là khi nối 2 chân từ MAX232 vào VDK với nhau mà thực hiện chương trình giao tiếp trên máy tính thì lại không được . Hic
Có phải chết con MAX232 không ah ? Nhưng nếu chết thật thì không nhẽ chết đến 5 con , mà toàn con mới ! HIC HIC (9k x 5 = $$$$$)
Xin các bác cho em một lời giải thích !
Các bạn cho mình hỏi làm cách nào để truyền 1 chuổi từ PC sang Atmega32
Mình đang làm PID vận tốc.Mình cần truyền Vset,Ki,Kp,Kd từ giao diện (dùng VS 2005) xuống Atmega32 ( Dùng Codevision ).
Mình dùng PWM 9bit OCR1A
Timer2 ngắt ở chế độ so sánh tạo CK lấy mẩu từ encoder (12ms).
Counter0 đếm xung encoder.
Mình có viết 1 hàm để truyền.
Mình muốn truyền Vset.
Từ giao diện mình truyền:
sp1->WriteLine(string_vset+"a");
string_vset: là giá trị Vset
"a":kết thúc chuổi.
Khi bắt được chử "a" thì chuyển chuổi trước nó thành số thực.
Test trên terminal thì thấy đúng nhưng khi test trên mô hình thì sai
Bạn có thể thiết lập giao tiếp qua UART dc mà . Nhưng mà lúc viết thì nhớ cho ngắt UART để tránh khi hệ thống đang chạy thì không thể giao tiếp dc với pc .Còn đơn giản hơn bạn dùng một chân trong vdk làm chân trạng thái chân này dk từ PC ( bằng chân RTS ) chằng hạn . Còn PWM trong AVR đả là cứng rùi . Cẩn thận với Encoder vì khi quay tốc độ cao có thể con vdk sẽ "có thể" bỏ xung đếm không kịp cái này cẩn thận thôi .
Mạch nạp Little Programmer
MSC-51,AVR,EEPROM ... etc
Xin chào các bạn trong diễn đàn . Tôi là người mới học lập trình AVR và tôi cảm thấy thích thú nhất với mảng giao tiếp giữa AVR và PC thông qua cổng COM. Tôi đang gặp phải 1 vấn đề chưa tìm được phương án giải quyết mong được mọi người trong diễn đàn chỉ giúp .
1. Khi truyền 1 byte từ Máy tính (Để giao tiếp VDK với MT tôi dùng Visual basic) xuống VDk thì OK (Tôi dùng hàm getchar() cho đơn giản ) . Khi truyền 1 mảng dữ liệu từ máy tính xuống thì tôi out dữ liệu liên tục xuống , trên VDK tôi dùng 1 mảng nhận dữ liệu : nhandulieu[10] ; 10 là ký tự truyền .
Khi truyền trạng thái của hệ thống ( ví dụ như trạng thái của động cơ : Quay trái ... Tắt mở...) thì được nhưng khi truyền 1 giá trị chẳng hạn như vận tốc, hoặc tần số ... thì không được ,
RẤT MONG MỌI NGƯỜI CHO Ý KIẾN . XIN CẢM ƠN
Dạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
Dạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
Dạ ý chú là màn oled ấy ạ. Cùng chuẩn lvds cùng độ phân giải thì cắm được ạ. Còn nó mà khác thì hơi khó vì oled các điểm ảnh nó tự phát sáng chứ ko dùng đèn nền như lcd. Cháu chỉ biết đến vậy thôi ạ. Chú muốn nghịch phải tự tìm hiểu kỹ trước khi mua thôi, khó mà ông thợ nào tư vấn vụ này...
Hay đấy bạn ạ. Đây có thể hiểu là máy đo cuộn dây. Tiện đây xin cho hỏi bạn có hiểu rõ về máy nạp rôm pcb 45 của hãng thiên minh không giúp mình cách cài fw của nó với vì mình vừa được anh bạn cho nhưng lại không biết cài fw nên chưa dùng được. Nếu có thể thì bạn giúp mình với...
Comment