Thông báo

Collapse
No announcement yet.

Mấy bác giúp em về 74hc595

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Mấy bác giúp em về 74hc595

    Tuy đã có nhiều luồng về 74hc595,nhưng vấn đề em muốn hỏi không giống như mấy luồng ấy.
    Em có 4 con 74hc595 mắc nối tiếp.
    Khai báo như sau.
    sbit SDA=P3.0;//chan so 14 595
    sbit SCL=P3.1;//chan so 11 595
    sbit STR=P3.2;//chan so 12 595
    Mấy bác có thể giúp em viết code để con 595 thứ nhất,QA xuất bit 1;chân còn lại xuất bit 0 sau đó Qb xuất bit 1,chân kòn lại bit 0... Tương tự với các Q còn lại,sau khi Q7 xuất bit 1 thì con 595 thứ 2 bắt đầu hoạt động tương tự như kon thứ nhất.
    Nói ngắn gọn là bit 1 được dịch dần từ QA đến QD. Thank


  • #2
    ý mình là như thế này:
    (mình viết bằng CCS)
    for (j=1;j<=16;j++)
    {
    for (i=1;i<=16;i++)
    {
    out=bit_test(dulieu[j],i-1);
    output_bit(PIN_b6,out);//chan 14 data
    output_high(PIN_b3);//dich du lieu chan 11 shift clock
    delay_us(1);
    output_low(PIN_b3);
    delay_us(1);
    }
    output_low(PIN_b4); //xung chot du lieu chan 12
    delay_us(1);
    output_high(PIN_b4);
    output_low(PIN_b5);// kich hoat dau ra chan 13.(khong can thiet.co the noi chan nay xuong mass
    }
    bạn định nghĩa biến dulieu[] là biến kiểu mảng có 16 phần tử. mỗi phần tử là 1 số. vd như 0b1000000000000000,0b0100000000000000
    như vậy thì kết thúc 1 vòng lặp j thì biến dulieu[j] sẽ được dịch ra ngoài 595

    Comment


    • #3
      Thank

      Tuy chưa học CCS nhưng vẫn thank bác.

      Comment

      Về tác giả

      Collapse

      maingochoc Lalalala Tìm hiểu thêm về maingochoc

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

      Collapse

      Đang tải...
      X