User Tag List

Trang 1/4 123 ... cuốicuối
kết quả từ 1 tới 10 trên 38
Cây cảm ơn28Cảm ơn

Ðề tài: Nguyên lý đưa data và chốt data của IC 74hc595

  
  1. #1
    Thành viên mới dtduckhung's Avatar
    Tham gia
    Nov 2008
    Bài viết
    8
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Arrow Nguyên lý đưa data và chốt data của IC 74hc595

    :((:((hic hic.chào các anh. em đang tìm hiểu về 595 để làm đề tài quang báo. nhưng em vẫn chưa hiểu cho lắm về hoạt động của con này. theo em hiểu như thế này không biết có đúnh không, nhờ các anh chỉ giáo thêm :
    +khi muốn đưa 1 bit vào thì mình cần 1 xung clock o chân 11 để đưa 1 bit này đi vào thanh ghi bên trong nó và muốn xuất 8 bit ra 8 chân của nó thì ta cần 1 tác động mức cao lên chân 12
    +giả sử em muốn truyền 8 bit 10101100 tương ứng ngõ ra từ Q0(mức 0)-Q7(mức 1) thì em truyền theo thứ tự 00110101 vào thanh ghi, như vậy là cần 8 chu kỳ xung clock ở chân 11
    +và sau đó em cho chân 12 lên 1 thì 8 bit này được đẩy ra 8 ngõ ra Q0-Q1
    thế là 8 em được đẩy ra. như vậy thì cần 1 xung ở chân 12.
    Nhưng ở đây em thắc mắc hoài mà không nghĩ ra được. vấn đề là như thế này:-S :
    +thứ nhất : theo như ý em tìm hiểu thì chân 11 và 12 là 2 chân có chu kỳ xung khác nhau. Nhưng dướng như tất cả các mạch về quang báo em tìm thấy được trên mạng hầu như chân 11 và 12 mắc chung vời nhau. Nếu như vậy thì 2 chân cùng 1 xung clock.nếu như vậy chắc chắn em đã hiểu sai vấn đề truyền data và xuất dữ liệu ra 8 ngõ ra.
    +thứ 2: giả sử em cần xuất 8byte để quyét led matrix 8*8. như vậy thì làm sao để chốt 8byte này đây?để 8byte tiếp sẽ là của con led thứ 2.do em đang làm đồ án thiết kế hiển thị chữ trên 10 led matrix 8*8 dùng bàn phím hex, cách nhấn phím hiển thị như điện thoại.
    +thứ 3 : em thấy chân 9 dữ liệu ra nối tiếp của con 1 được mắc với 14 của con tiếp theo. như vậy khi em bấm A, tiếp tục bấm B thì chữ hiển thị là A led 1 và B led 2 hay là B led 1 A led 2.
    do em đang học hợp ngữ nên tài liệu toàn là ccs nên em không hiểu gì hết. đó là những thắc mắc của em. mong các bạn, các anh giúp đỡ em. em xin cảm ơn mọi người nhiều lắm=D>=D>=D>

    CHỦ ĐỀ TƯƠNG TỰ:

    khanhthu0010, badboy.hp89, rongxanh3 người nữa đã cảm ơn nội dung này.

  2. #2
    Thành viên tích cực nhamdtk4's Avatar
    Tham gia
    Sep 2008
    Bài viết
    122
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    74595 có các chân và hoạt tác dụng của chúng như sau:
    - 8 chân xuất dữ liệu, chân reset (10), cho phép chip (13): Mấy chân này chắc ko phải nói j rồi.
    - Một chân nhận dữ liệu vào nối tiếp (14): Bạn muốn dịch bit 0 hay 1 thì tác động vào đây.
    - Một chân xung clock (11): Cứ mỗi xung tác động vào chân này thì bit logic tại chân nhận dữ liệu (14) sẽ đc dịch vào một lần.
    - Một chân chốt dữ liệu (12): Mỗi lần có xung tác động vào chân này thì dữ liệu đc xuất ra một lần
    - Còn chân 9: Thì cứ có 8 xung tác động vào chân clock nó lại xuất ra một xung.
    VD: Bạn nối một chú LED 7 thanh vào 74595 (a nối Q0,..., g nối Q6) rồi thử cho hiện số 5 chẳng hạn:
    - Muốn có số 5 thi Q0 - Q7 có mức logic là: 01001000.
    - Đầu tiên cho chân 14 nhận mức logic 1
    - Kick một xung clock vào chân 11 rồi lại đưa chân 14 xuống mức logic 0 sau đó tác động 2 xung vào chân 11 rồi lại đưa chân 14 lên mức logic 1 tác động một xung vào chân 11 rồi lại đưa 14 xuống 0. Cuối cùng tác động một xung vào chân 11, sau đó chốt bằng cách tác động một xung vào chân 12, nhìn trên Proteus bạn sẽ thấy kết quả.

    dtduckhung, badboy.hp89, rongxanh5 người nữa đã cảm ơn nội dung này.

  3. #3
    Thành viên mới vodienDT4's Avatar
    Tham gia
    Nov 2008
    Bài viết
    23
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    vì quang báo người ta dùng đồng thời 595 cho hàng và cột,hàn dùng để xuất dữ liệu,cột thì để quét cột,2 chân 11 và 12 đc nói với nhau có thể là của con 595 dùng quét cột,vì ta cần sáng từng cột,nên khi dịch bit 0 đi 1 lần(dk mức 0) thì người ta xuất luôn,không chờ dich đủ 8 lần mới xuất.chờ cao thủ vào giúp đỡ thêm :d

    rongxanh đã cảm ơn nội dung này.

  4. #4
    Thành viên mới dtduckhung's Avatar
    Tham gia
    Nov 2008
    Bài viết
    8
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    hic. như theo ý anh dtk4 thì cứ đưa dữ liệu vào kích như vậy chắc là chết mất. em đang làm đồ án quang báo dùng pic16f877a kết hợp bàn phím để xuất chữ từ 0-9 và từ a-z như bàn phím điện thoại vậy đấy. nếu em muốn xuất ra chữ A chẳng hạn thì em cứ cho da ta rồi xuất xung rồi chốt như vậy không biết là em phải viết mấy chục trang cho cái bàn phím đấy nữa. em đang học hợp ngữ à. thầy bảo làm đồ án môn học là dùng HỢP NGỮ đấy.hichic
    bây giờ chưa nói tới chuyện bàn phím mà chỉ nói tới chyện là đưa dữ liệu ra con led 8*8 cái đã. anh cho em biết có cách nào xuất ra xong 8 byte rồi chốt lại không anh. dể chữ A còn lưu ại tên led thứ 1 chẳng hạn. như vậy anh cho em hỏi khoảng delay giữa các hàng là bao nhiêu vậy anh. để còn lưu ảnh trên võng mạc chứ. để em về làm theo cách của anh thử xem đã. mọi người cố gắng giúp em với nha. em mới tìm hiểu về quang báo nên chưa hiểu gì niều. cảm ơn mọi người nhiều !!!

    rongxanh đã cảm ơn nội dung này.

  5. #5
    Thành viên tích cực nhamdtk4's Avatar
    Tham gia
    Sep 2008
    Bài viết
    122
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Click here to enlarge Nguyên văn bởi dtduckhung Click here to enlarge
    hic. như theo ý anh dtk4 thì cứ đưa dữ liệu vào kích như vậy chắc là chết mất. em đang làm đồ án quang báo dùng pic16f877a kết hợp bàn phím để xuất chữ từ 0-9 và từ a-z như bàn phím điện thoại vậy đấy. nếu em muốn xuất ra chữ A chẳng hạn thì em cứ cho da ta rồi xuất xung rồi chốt như vậy không biết là em phải viết mấy chục trang cho cái bàn phím đấy nữa. em đang học hợp ngữ à. thầy bảo làm đồ án môn học là dùng HỢP NGỮ đấy.hichic
    bây giờ chưa nói tới chuyện bàn phím mà chỉ nói tới chyện là đưa dữ liệu ra con led 8*8 cái đã. anh cho em biết có cách nào xuất ra xong 8 byte rồi chốt lại không anh. dể chữ A còn lưu ại tên led thứ 1 chẳng hạn. như vậy anh cho em hỏi khoảng delay giữa các hàng là bao nhiêu vậy anh. để còn lưu ảnh trên võng mạc chứ. để em về làm theo cách của anh thử xem đã. mọi người cố gắng giúp em với nha. em mới tìm hiểu về quang báo nên chưa hiểu gì niều. cảm ơn mọi người nhiều !!!
    Bạn nhầm rồi, như bạn trình bày thì bạn chưa hiểu hết thế nào là LED matrix.
    - Ở trên mình trình bày đó là hoạt động của con 74595 (có thể chốt và ghi dịch đc như thế nào) cái xung kick trong đó thì có thể dùng các vòng lặp xử lý như vậy thì sao CT có thể dài đến mấy chục trang đc.
    - Quay lại với bài toán của bạn (bây giờ bạn phải đọc kỹ về LED matrix đã rồi hãy tính):
    + Để hiển thị một chữ bất kỳ lên LED matrix thì chỉ cần xuất mã hàng ra hàng và cho cột tương ứng sáng, lần tiếp theo lại xuất mã hàng và cho cột tiếp đó sáng (tất nhiên cột trc đã tắt) cứ làm như vậy đến hết thì sẽ có chữ đó hiển thị lên LED matrix.
    + Với việc quét cột như trên thì các IC ghi dịch (hoặc kể cả con MUX 74138) cũng có thể làm đc, ko hiểu bạn cần chốt là chốt cái j (trong khi chữ đó đã hiện lên đc rồi).
    + Còn code mà viết bằng ASM thì mình....chịu thua.

    rongxanh đã cảm ơn nội dung này.

  6. #6
    Registered User zero07a's Avatar
    Tham gia
    Nov 2009
    Bài viết
    23
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    a ha. em cũng đang làm quang báo. em dùng 595 để xuất dữ liệu ra cột và 138 để quét hàng, dùng 10 led 7 đoạn. anh có cao kiến gì giúp em với. anh em cùng nhau trao đổi. anh có tài liệu minh họa thì hay quá.

    rongxanh đã cảm ơn nội dung này.

  7. #7
    Thành viên mới VĩnhNinh87's Avatar
    Tham gia
    Sep 2009
    Bài viết
    12
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Nếu bạn dùng 595 để quét thì chân clock và chân latch nối chung với nhau cũng được,giả sử bạn có 16 cột thì cấp một xung vào chân data và cấp 16 xung clock, nếu bạn dùng 595 để xuất dữ liệu thì bao nhiêu bit dữ liệu thì cần bấy nhiêu xung clock xuất đủ dữ liệu thì cấp xung latch

    rongxanh đã cảm ơn nội dung này.

  8. #8
    Thành viên tích cực kiemkhach10's Avatar
    Tham gia
    Mar 2010
    Bài viết
    244
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    QUÉT led 7thanh thông qua 74hc595

    hi các bạn!
    mình cũng đang tìm hiểu về cách đưa dữ liệu từ con 74hc595 ra led 7 thanh.
    mình làm mãi mà ko được. mình muốn con số của led 7 thanh chạy từ:0000,0001.....9999.
    nhưng nó toàn chạy từ 0000,1111,2222...9999. các ban nào đã làm rùi có thể giúp mình và mọi người ko?
    à mình viết = c.

    rongxanh đã cảm ơn nội dung này.

  9. #9
    Thành viên mới VĩnhNinh87's Avatar
    Tham gia
    Sep 2009
    Bài viết
    12
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Đệ có ý tưởng thế này mong các huynh chỉ giáo,số cần hiển thị từ 0 đến 9999 như vậy cần có 4 led 7 thanh , các led dùng chung đương dữ liệu từ 595 nên cần 4 con bjt để đóng mở cho led,quét led ta dùng ngắt timer với 1 biến tạm là count.Cần tạo 1 bảng mã cho led bảy đoạn bảng mã này tùy thuộc vào led sử dung là led anod chung hay catod chung(anod chung thì bảng mã mức 0 còn catod chung thì bảng mã mức 1) cần thêm 5 biến : 1 biến chứa giá trị đếm ,bốn biến còn lại chứa giá trị nghìn, trăm, chục ,đơn vị. Để có giá trị nghìn ta lấy giá trị đếm chia cho 1000, lấy phần dư chia cho 100 được giá trị trăm,tiếp tục lấy phần dư chia cho 10 được giá trị chục phần dư còn lại là giá trị hàng đơn vị. đầu tiên ta cho biến count =0 ,khi ngắt timer xảy ra ta tăng count thêm 1 ,count=1 -> mở led hang nghìn so sánh biến nghìn với bảng mã xuất ra 595 ,count=2 -> mở led hang trăm so sánh biến trăm với bảng mã xuất ra 595,count=3 -> mở led hang chục so sánh biến chục với bảng mã xuất ra 595,count=4 -> mở led hang dơn vị so sánh biến dơn vị với bảng mã xuất ra 595, khi count= 4 ta trả count về 0.Huynh nào có ý hay thì cứ nói râ cho anh em mở rộng tầm mắt nha!

    rongxanhthanhsang_89 đã cảm ơn nội dung này.

  10. #10
    Thành viên tích cực kiemkhach10's Avatar
    Tham gia
    Mar 2010
    Bài viết
    244
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Click here to enlarge Nguyên văn bởi VĩnhNinh87 Click here to enlarge
    Đệ có ý tưởng thế này mong các huynh chỉ giáo,số cần hiển thị từ 0 đến 9999 như vậy cần có 4 led 7 thanh , các led dùng chung đương dữ liệu từ 595 nên cần 4 con bjt để đóng mở cho led,quét led ta dùng ngắt timer với 1 biến tạm là count.Cần tạo 1 bảng mã cho led bảy đoạn bảng mã này tùy thuộc vào led sử dung là led anod chung hay catod chung(anod chung thì bảng mã mức 0 còn catod chung thì bảng mã mức 1) cần thêm 5 biến : 1 biến chứa giá trị đếm ,bốn biến còn lại chứa giá trị nghìn, trăm, chục ,đơn vị. Để có giá trị nghìn ta lấy giá trị đếm chia cho 1000, lấy phần dư chia cho 100 được giá trị trăm,tiếp tục lấy phần dư chia cho 10 được giá trị chục phần dư còn lại là giá trị hàng đơn vị. đầu tiên ta cho biến count =0 ,khi ngắt timer xảy ra ta tăng count thêm 1 ,count=1 -> mở led hang nghìn so sánh biến nghìn với bảng mã xuất ra 595 ,count=2 -> mở led hang trăm so sánh biến trăm với bảng mã xuất ra 595,count=3 -> mở led hang chục so sánh biến chục với bảng mã xuất ra 595,count=4 -> mở led hang dơn vị so sánh biến dơn vị với bảng mã xuất ra 595, khi count= 4 ta trả count về 0.Huynh nào có ý hay thì cứ nói râ cho anh em mở rộng tầm mắt nha!
    bạn có code và phần mophổng không?hoặc sơ đồ nguyên lý cũng được?
    port lên cho anh em tham khảo và học tập
    cám ơn!

    rongxanh đã cảm ơn nội dung này.

Trang 1/4 123 ... cuốicuối

Quyền Sử Dụng Ở Diễn Ðàn

  • Bạn không được gửi luồng mới
  • Bạn không được trả lời bài viết
  • Bạn không được gửi file đính kèm
  • Bạn không được sửa bài viết của mình
  •