Thông báo

Collapse
No announcement yet.

Đố vui về PIC, các câu đố cực vui và cực hay... hehe..

Collapse
This topic is closed.
X
This is a sticky topic.
X
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Làm gì có chuyện ưu tiên ở đây! Dù bao nhiêu phím cũng chỉ có 1 ngắt thôi mà.
    Ưu tiên hay không là tùy mình lập trình thôi (check những phím nào trước, cái nào sau).
    Còn về thời gian sẽ là như nhau cho tất cả dù ít hay nhiều phím:
    Kể từ khi có ngắt đến khi xác định được nguồn báo ngắt và gọi chương trình phục vụ ngắt
    Vậy thì làm sao ngắn hơn được.
    Nếu bảo cho đến khi hoàn xong ngắt may ra còn suy nghĩ một chút. Chứ công đoạn trên tất cả điều mất một thời gian như nhau cả.

    Comment


    • Nguyên văn bởi KHHGD
      Và tất nhiên mạch Encoder cần phải làm là Encoder có ưu tiên !!!
      Nếu bác làm được cái mạch này = IC số chắc phải tương hơn một tá con IC số.
      Ngoài ra còn bỏ sót trường hợp cho ngắt ưu tiên thấp hơn.
      Nói chung, cách của bác ko chút khả thi.
      -------------------

      Comment


      • Còn cách này nữa... Dùng thêm GAL
        Vẫn biết mỗi lần xa là một lần về lại...

        Comment


        • Hihi.. nếu 2^N-->N đường thì rất khó khả thi

          Comment


          • Dùng thêm GAL thì đụng đến vài lệnh lập trình, mà nhiều cổng vecter ngắt như vậy thì dùng CPLD mới đủ. Nghe chừng ko khả thi lắm

            Comment


            • Vẫn chưa thấy các bác nói cho biết thời gian ngắt là bao nhiêu, xin tính bằng flop của uC nhé.

              Theo F hiểu thì đơn giản thôi, thay vì dùng song song thì mọi người cố gắng chuyển thành nối tiếp. Tăng tốc độ tối đa lên thì cái quan trọng ở đây F cần biết là tốc độ xử lý ngắt là bao nhiêu, chuyện mạch điện cứng hay mềm chẳng quan trọng. Nguyên tắc chúng ta có N bits và có m dây trong đó m < N, và đạt đến nhỏ nhất.

              Đơn giản vậy thôi. Bác fix cho cái vấn đề bác nói là bao nhiêu flop, ngoài ra, bác fix luôn giá thành làm cái đó. F ra giá cho số cổng là 100 cổng ngắt. Ai ra giá này cao hơn F không? Ngoài ra, giá flop và giá thành sản phẩm thì F chưa thấy đề bài đề cập.



              Chúc vui.
              Falleaf
              Công ty TNHH Thương mại và Giao nhận R&P
              58/57 Nguyễn Minh Hoàng - Phường 12 - Quận Tân Bình - TP.HCM
              mail@falleaf.net - VP: (04) 36408561 - (08) 38119870

              Comment


              • Nguyên văn bởi thaithutrang
                Dùng thêm GAL thì đụng đến vài lệnh lập trình, mà nhiều cổng vecter ngắt như vậy thì dùng CPLD mới đủ. Nghe chừng ko khả thi lắm
                Sao lại không khả thi gal cũng khá nhiều cổng.
                Ai bảo CPLD với FPGA đắt nhỉ.... không hơn đống IC số đâu
                Vẫn biết mỗi lần xa là một lần về lại...

                Comment


                • Nguyên văn bởi falleaf
                  Vẫn chưa thấy các bác nói cho biết thời gian ngắt là bao nhiêu, xin tính bằng flop của uC nhé.

                  Theo F hiểu thì đơn giản thôi, thay vì dùng song song thì mọi người cố gắng chuyển thành nối tiếp. Tăng tốc độ tối đa lên thì cái quan trọng ở đây F cần biết là tốc độ xử lý ngắt là bao nhiêu, chuyện mạch điện cứng hay mềm chẳng quan trọng. Nguyên tắc chúng ta có N bits và có m dây trong đó m < N, và đạt đến nhỏ nhất.

                  Đơn giản vậy thôi. Bác fix cho cái vấn đề bác nói là bao nhiêu flop, ngoài ra, bác fix luôn giá thành làm cái đó. F ra giá cho số cổng là 100 cổng ngắt. Ai ra giá này cao hơn F không? Ngoài ra, giá flop và giá thành sản phẩm thì F chưa thấy đề bài đề cập.



                  Chúc vui.
                  Nhìn từ góc độ ứng dụng ra để biết chứ sao...
                  Có ngắt thì sẽ Flex hơn là quét.
                  Giá thành đóng vai trò gì ở đây nhỉ là một bài toán đố.
                  Giá là chủ quan còn tính đến nhiều yếu tố khác nữa.
                  Liệu 10 con IC số giá bé hơn một con IC dán nhưng về nguồn điện, kích thước mạch, độ phức tạp PCB có bù lại không.
                  Vẫn biết mỗi lần xa là một lần về lại...

                  Comment


                  • Nguyên văn bởi qmk
                    Sao lại không khả thi gal cũng khá nhiều cổng.
                    Ai bảo CPLD với FPGA đắt nhỉ.... không hơn đống IC số đâu
                    Vì lý do: nếu dùng 1 con CPLD hay FPGA để làm như vậy thì nên nghĩ tới: dùng luôn nó để thay thế luôn cả uC

                    Comment


                    • Nguyên văn bởi thaithutrang
                      Vì lý do: nếu dùng 1 con CPLD hay FPGA để làm như vậy thì nên nghĩ tới: dùng luôn nó để thay thế luôn cả uC
                      Hihi, chính xác đấy có thể làm thế đc. Nhưng phải tương đối nhiều gate lúc đấy lại liên quan đến giá thành rồi.
                      Vẫn biết mỗi lần xa là một lần về lại...

                      Comment


                      • Vấn đề tạo thêm ngắt ngoài cho pic mình cũng đã nghĩ đến, có điều phải nghĩ đến nhứcac bác thì em đây chịu. Nhân tiện em xin đóng góp có một cách mà em đã làm trong công việc của mình đó là Biến TIMER thành ngắt ngoài, các bác nghĩ thế nào khi cho Timer hoạt động trong chế độ counter và lúc này là cần phải đặt các thanh ghi Timer tương ứng để khi có một gõ vào là...Chắc chắn là được!
                        |

                        Comment


                        • Về kỹ thuật về timer tạo ngắt ngoài, có nhiều cách đó bác. Xin nói ra cho bác thưởng thức luôn:
                          Cách 1: như bác nói, nạp 1 timer giá trị 65535 với Timer 16 bit, 255 với 8 bit.. rồi dùng ngắt.Ý tưởng trên lấy từ appnote của Cypress.
                          Cách 2: dùng ngắt theo sườn sử dụng Capture(dính dáng đến timer).
                          Cách 3: một số uC như 89 có chân cho clk enable timer(nhớ ko nhầm thì vậy), vậy khi lên mức tích cực, sẽ cho phép timer hoạt động, chọn chế độ nguồn clk trong cho timer sẽ được thôi.

                          Bác có cái gì hay hay thử phát xem nào
                          -------------------

                          Comment


                          • Có một bài toán cụ thể tại:
                            http://www.picvietnam.com/forum/show...p?t=238&page=5
                            Em cũng chưa hiểu ,bác nào giải thích hộ cho Newbie như em với

                            Comment


                            • Hôm qua sinh nhật PIC bang, thế mà tại hạ không hề biết. Vậy cáo lỗi với đồng đạo PIC bang một câu đố:
                              Với PIC12/16, hãy tạo một module phần mềm đếm thời gian sao cho đảm bảo các yếu tố sau:
                              1-Không dùng thêm thạch anh ngoài thạch anh dao động của chủ.
                              2-Còn sai số hiển thị có thể lớn hơn tẹo, nhưng sai số tích lũy coi như gần bằng sai số của thạch anh. Nghĩa là đếm cả năm cũng ko gây sai số đáng kể.
                              3-Chương trình có thể có nhiều ngắt
                              Xin mời quý vị thưởng thức
                              -------------------

                              Comment


                              • Hihi.. phải thêm điều kiện là ko dùng thêm linh kiện phụ nữa chứ anh, nếu ko lại có người dùng hẳn RTC thì câu đố không có giá trị.
                                Em nghĩ ra rồi, chạy 10 năm thì sai số cũng chỉ = sai số của thạch anh thôi.
                                Sang dsPIC thì việc này lại càng đơn giản

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X