1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

[HELP] Lập trình giao tiếp SPI cho AT89C51/52

Thảo luận trong 'ĐĐT08' bắt đầu bởi aliass, 16 Tháng mười hai 2010.

  1. aliass Member

    Số bài viết: 37
    Đã được thích: 0
    Điểm thành tích: 6
    Tình hình là mình đang làm báo cáo môn vi xử lí 1. Thấy giao cho con IC Max5415, mô phỏng trên Proteus và viết bằng Mikrobasic pro for 8051. Con này có chức năng giống như một chiết áp số, giao tiếp bằng chuẩn 3-Wire Serial SPI. Khổ nỗi là con AT89C51/52 trong proteus lại không hỗ trợ giao tiếp SPI. Trong Mikrobasic pro for 8051 thì có bài mẫu dùng chuẩn này với con AT89S8253 , mà trong proteus thì lại không có. Mình đọc trên mạng thấy nói là có thể lập trình được bằng phần mềm với AT89C51/52. Bạn nào có kinh nghiệm phần này giúp mình với !!!
  2. chanhvan08 New Member

    Số bài viết: 384
    Đã được thích: 0
    Điểm thành tích: 0
    Bạn có thể dùng Mikro để giả lập SPI cho 8051, con nào cũng được mà, phần ví dụ nó chỉ lấy con 8253 cho mình xem thôi, bạn cứ làm với 89c51 cũng chẳng sao cả! Quan trọng là bạn biết cách giao tiếp với con Max kia kìa, cái nãy mới đáng nói!
  3. aliass Member

    Số bài viết: 37
    Đã được thích: 0
    Điểm thành tích: 6
    Thanks bác !
    Tình hình là e thấy trong Proteus có con AT89C51BR2 có hỗ trợ chuẩn SPI lên vấn đề này tạm ổn. Bác Chánh viết được trên Mikro chưa ? Biên dich qua file .hex hình như là nhấp vào Build phải không ? Mà hình như là phải viết code cho phần sub Get_Fosc_Khz() ? hay là chỉ gán giá trị 12Mhz thôi. Đọc Help khó hiểu quá !!! Bác nào viết xong code cho bài báo cáo rồi thì giúp e cái nhé. Pm e 01689973116. Thanks !!!
  4. lvnam89 New Member

    Số bài viết: 3
    Đã được thích: 0
    Điểm thành tích: 0
    Bạn nào biết kết nối chuẩn SPI cho 89c51 với 3 con MCP23S17 không chỉ mình với ! Không hiểu sao mình code mình viết biên dịch nó cứ bị lỗi hoài ! Bó tay luôn .... Ai viết rồi chỉ mình với , tuần sau mình phải nộp rồi . Email : tantrung198@yahoo.com.vn . Mình cảm ơn nhiều .! :-s

    dim SPExpanderRST as sbit at P1_0_bit
    dim SPExpanderCS as sbit at P1_1_bit

    dim SoftSpi_CLK as sbit at P1_7_bit
    dim SoftSpi_SDI as sbit at P1_5_bit
    dim SoftSpi_SDO as sbit at P1_6_bit

    main:

    SPI_Rd_Ptr = @Soft_SPI_Read
    Soft_SPI_Init()
    Expander_Init(0)
    Expander_Set_DirectionPortA(0,0x00)
    Expander_Set_DirectionPortB(0,0x00)

    Soft_SPI_Init()
    Expander_Init(1)
    Expander_Set_DirectionPortA(1,0x00)
    Expander_Set_DirectionPortB(1,0x00)

    Soft_SPI_Init()
    Expander_Init(2)
    Expander_Set_DirectionPortA(2,0x00)
    Expander_Set_DirectionPortB(2,0x00)
    Expander_Write_PortA(0, 1)
    Expander_Write_PortA(1, 2)
    Expander_Write_PortA(2, 3)
    đây là code của mỉnh viết , bác nào biết sửa giùm với !
  5. aliass Member

    Số bài viết: 37
    Đã được thích: 0
    Điểm thành tích: 6

Chia sẻ trang này