RP Store Tìm linh kiện theo mã, gửi BOM nhận báo giá Gửi BOM

Giao tiếp AVR với PC

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts

  • sphinx
    replied
    SPIEN có nghĩa là SPI Enable, nếu bạn disable nó thì có nghĩa là bạn cấm nạp qua đường SPI, và khi đó chỉ còn 1 cách duy nhất để nạp cũng như set các fuse bít cho con AVR là dùng phương pháp nạp song song (tương tự 89 ý, chứ ko phải là nạp qua cổng song song đâu nhé).

    Có thể sử dụng mạch nạp HV của bác TM, hoặc nhờ ai đó có mạch nạp Universal để Enable lại SPI.

    Tuy nhiên, cả CodeVisionAVR và PonyPro đều ko cho phép bạn lập trình bít SPIEN, ko bít AVRStudio có ko , lâu rồi ko dùng nên chưa cài, chắc là AVRStudio thì có!
    Last edited by sphinx; 10-08-2006, 12:36.

    Leave a comment:


  • chi_co_nui
    replied
    Các bác ạ, em nghe nói nếu nạp theo ISP mà Set sai SPIEN thì con AVR đi tong. vậy là thế nào hả các bác. Em đang định nạp theo ISP nghe thấy mà toát mồ hôi. Các bác giải thích cho em cái SPIEN là cái gì vậy, em chưa nghe thấy cái này bao giờ

    Leave a comment:


  • phd31183
    replied
    trời, bác bảo mua mấy bộ chuyển từ 485 sang 232 của Siemens hả. tính toàn chục đô.
    ý khiến xài opto quả là hay, bác có thể post sơ đồ được không.

    Leave a comment:


  • CuongQuay
    replied
    Nguyên văn bởi phd31183
    Đồng ý với bác là khỏng cách xa thì phải chuyển thành RS485 để truyền.
    Nhung từ trước tới giờ em toàn xài theo phương thức sau có gì thức không hả bac:
    - AVR (Tx và Rx) ---> 75176 x 2 (1 gưiử/1nhận)----> 75176 x 2 -------> max232 ----> máy tính.
    Bác cho em cái cách tối ưu hơn được không
    Thêm mấy con opto 4N35 vào sau khi phát và trước khi thu sẽ tối ưu hơn chút nửa. Dùng dây bọc kim sẽ tối ưu thêm chút chút nửa. Mua của bọn siemens chắc là tối ưu nhất.

    Leave a comment:


  • phd31183
    replied
    Nguyên văn bởi hoang_csa
    Về mạch nạp và chương trình nạp thì RedRose tư vấn vậy là ổn. Bạn chỉ cần có giao tiếp ISP là bạn có thể nạp ko cần tháo IC ra khỏi mạch
    Do khoảng cách khá xa, theo tôi bạn chi_co_nui nên dùng con MAX485 ( 2 con nhé ) . Con thứ nhất dùng chuyển đổi RS232 của máy tính ra RS485 , con thứ hai dùng chuyển RS485 về dạng RS232 thường ( ra Tx và Rx ) nối với vi diều khiển AVR. Hai board chuyển đổi này nối với nhau bằng 2 dây tín hiệu hoặc có thêm 2 đường nguồn (+) và (-) 12 V đi theo. Tốt nhất vẫn là cấp nguồn riêng cho 2 mô đun.
    Chúc bạn thành công
    Đồng ý với bác là khỏng cách xa thì phải chuyển thành RS485 để truyền.
    Nhung từ trước tới giờ em toàn xài theo phương thức sau có gì thức không hả bac:
    - AVR (Tx và Rx) ---> 75176 x 2 (1 gưiử/1nhận)----> 75176 x 2 -------> max232 ----> máy tính.
    Bác cho em cái cách tối ưu hơn được không

    Leave a comment:


  • blackmoon
    replied
    Hi chi_co_nui,

    Không cần phải có điện trở treo cho các chân này đâu.
    Trong các trường hợp thiết kế hệ vi xử lý với điện trở treo cao (pull-up), người ta thường dùng 4K7 hoặc 10K.

    Thân mến,
    blackmoon.

    Leave a comment:


  • chi_co_nui
    replied
    Bác RedRose và bác hoang_csa ơi.

    Cái nạp ISP phần mạch ISP của con ATmega có cần làm điện trở treo vào các chân MISO, MOSI, CLK ... không hả các bác. Nếu có thì điển trở khoảng báo nhiêu K thì vừa.

    Leave a comment:


  • chi_co_nui
    replied
    Cảm ơn bác RedRose và bác hoang_csa nhé. Em sẽ làm theo cách các bác hướng dẫn. Có gì mong hai bác hỗ trợ em nhé

    Leave a comment:


  • hoang_csa
    replied
    Về mạch nạp và chương trình nạp thì RedRose tư vấn vậy là ổn. Bạn chỉ cần có giao tiếp ISP là bạn có thể nạp ko cần tháo IC ra khỏi mạch
    Do khoảng cách khá xa, theo tôi bạn chi_co_nui nên dùng con MAX485 ( 2 con nhé ) . Con thứ nhất dùng chuyển đổi RS232 của máy tính ra RS485 , con thứ hai dùng chuyển RS485 về dạng RS232 thường ( ra Tx và Rx ) nối với vi diều khiển AVR. Hai board chuyển đổi này nối với nhau bằng 2 dây tín hiệu hoặc có thêm 2 đường nguồn (+) và (-) 12 V đi theo. Tốt nhất vẫn là cấp nguồn riêng cho 2 mô đun.
    Chúc bạn thành công

    Leave a comment:


  • RedRose
    replied
    Uh, theo mình cũng nên nạp ISP vừa tiện vừa nhanh đỡ mất thời gian tháo lắp.
    Bác lên trang www.lancos.com nhé
    Dùng cái mạch nạp cổng máy in ý. Phần cứng chỉ cần có 1 con 74HC244 là tốt rồi.
    Down phần mềm PonyProg để nạp hoặc nạp trực tiếp bằng CodeVision cũng được.

    Leave a comment:


  • chi_co_nui
    replied
    Chán quá bác RedRose ơi, cắm ra cắm vào nhiều quá bị chập cháy mất bộ nạp rồi. Nghe nói, nạp theo ISP tốt hơn phải không bác. Bác có cái sơ đồ và phần mềm của nó không cho em với. Buồn quá bác ạ.

    Leave a comment:


  • chi_co_nui
    replied
    Hì hì, tạm ổn rồi bác Redrose ơi. mặc dù chưa được mỹ mãn lắm. Em nối thêm 2 con 24C64 ( song song ). Nhưng nó chỉ ghi lên con thứ nhất. làm sao để VXL nhận ra bộ nhớ của 24C64 đã đầy rồi để nó chuyển sang ghi vào con thứ 2 nhỉ. Mà còn một vấn đề nữa là khi tắt điện và bật lại thì nó lại ghi đè lên số liệu cũ ( mặc dù bộ nhớ của 24C64 vẫn còn nhiều ). Làm sao cho nó nhận biết để ghi tiếp chứ không ghi đè lên hả bác.
    Em cố hoàn thiện nốt rồi post lên diễn đàn cho mọi người cùng xem, mong bác hỗ trợ em nhé. Hì hì, đã quá bác ạ

    Leave a comment:


  • RedRose
    replied
    Hì càng làm càng khoái là tốt rồi , con đường điện tử gian nan chứ chả phải chơi đâu.
    Về vấn đề truyền xa thì bác nghiên cứu chuẩn RS422 hoặc RS485 là áp dụng chuẩn theo yêu cầu như trên của bác. Khoảng cách truyền lên tới 1200m (có thể xa hơn). Về IC thì bác có thể dùng con Max485 hoặc rẻ hơn là dùng con 75176 giá ~5000đ.
    Về 2 chuẩn kia thì bác tìm trong diễn đàn có vài topic bàn bạc rất kỹ. Rùi down datasheet của IC về xem cách kết nối. IC mua ở 17A Hàn Thuyên.

    Làm xong bác có thể post sơ đồ + kinh nghiệm lên cho mọi người xem với và góp cho diễn đàn có nhiều tri thức hơn.

    Chúc thành công!

    Leave a comment:


  • chi_co_nui
    replied
    Chào bác RedRose

    Bác nói đúng quá, đúng hết cả. em làm thử rồi chạy rất ok, hì hì, bác giỏi quá. Tiện đây em muốn hỏi bác. Cái đo nhiệt độ này em định dùng đo cái nhiệt độ trong lò sấy gỗ của ông anh em. Nhưng ngặt một nỗi cái Container dùng làm lò sấy phải để ngoài đồi ( môi trường mà ). Từ đó vào tới xưởng tới gần 300m. ban đầu em định dùng môdem nhưng phải kéo thêm một đường điện thoại và dùng liên tục cả ngày chắc không đủ tiền trả điện thoại. Có cách nào kết nối xa như vậy với PC mà không cần dùng qua modem không hả bác. mong bác cho em lời chỉ dẫn với. Hì hì, phiền bác quá nhưng em muốn học, càng làm càng thấy khoái mới chết chứ.

    Cảm ơn bác nhiều

    Leave a comment:


  • RedRose
    replied
    Oài bác nhiều topic quá chạy theo trả lời mà mệt
    1. Chọn tần số thạch anh để sai số =0; ví dụ: 3,6864Mhz; 7,3728Mhz; 11,0592Mhz; 14,7456Mhz
    2. Theo mình các quá trình truyền dữ liệu nên lấy 1 ký tự đặc biệt đánh dấu bắt đầu truyền và kết thúc. Ví dụ lấy @, cứ thấy @ là bắt đầu đưa vào chuỗi nhận còn thấy @ là biết là hết
    Last edited by RedRose; 01-08-2006, 23:58.

    Leave a comment:

Về tác giả

Collapse

chi_co_nui Tìm hiểu thêm về chi_co_nui

Bài viết mới nhất

Collapse

Đang tải...