Thông báo

Collapse
No announcement yet.

Cần Giúp Đở Đưa Ứng Dụng chạy trên chip Atmega16 ra thực tế.

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

  • Cần Giúp Đở Đưa Ứng Dụng chạy trên chip Atmega16 ra thực tế.

    Mình mới nghiên kíu avr có 1 ngày và củng ko phải chuyên ngành điện tử (hix) nên còn nhiu cái ko hiu mong các bạn giúp đở.
    Cụ thể thé này. Mình cần làm 1 máy đếm để đếm chiều dài dây điện. cho dây điện chạy qua 1 cái rulo rồi đếm vòng quay của rulo là biết dây dài bao nhiu. nên mình thử chạy mạch mày trên Proteus 7 Professional hình bên dưới.


    code viết bằng codevision cụ thể như sau:

    while (1)
    {
    while(PINA.7!=1)
    {
    if(PINB.7==1) a=0;
    display(a);
    }
    if(PINB.7==1) a=0;
    if(PINC.7==1)a=a-1;
    else a=a+1;
    if((a>=10000)||(a<0)) a=0;

    display(a);

    while(PINA.7==1){}

    };

    nguyên lý thì cùi bắp lắm mình dùng 7 chân của mỏi port để khiển led 7 đoạn còn chân thứ 8 còn lại cua mỏi port mình làm điều khiển bằng nút nhấn or switch.
    có 2 nút nhấn và 1 switch.
    1 nút cho PINA.7 làm nhiệm vụ mỏi lần nhấn vào là nó tăng lên or giảm xuống tuỳ vào switch được đưa vào PINC.7 còn 1 nút còn lại đưa vào PINB.7 để làm nhiệm vụ reset về 0.
    Mạch giã lập đã chạy tốt rồi nhưng mình ko biết nếu lắp trên thực tế cần phải thêm bớt cái gì nưa.
    mình ko ngại cái chuyện giết gà mà phải dùng dao mổ trâu, hay chi phí cho mạch, mình chỉ mún nó chạy cho tốt là mừng rồi. mỏi lần đo dây điện bán cho khách cực lắm hix.
    à còn cái này ngoài lề ko nằm trong phần vi điều khiển avr nhưng nếu có bạn nào bek chỉ giúp mình lun nha.
    mình mún thay cái button đếm ở trên thành cảm biến hồng ngoại khi nhận đc ánh sáng hồng ngoại nó sẻ đếm 1 lần tần số đếm càng cao càng tốt.
    chân thành cảm ơn các bạn
    Last edited by lamgialong87; 10-12-2010, 23:23.

  • #2
    bạn có thể tham khảo qua hình vẽ này: http://www.mediafire.com/i/?l417z1e548j9l2m
    Cái gì biết nói biết. Cái không biết nói không biết. Ấy là biết đấy!
    email:

    Comment


    • #3
      Nguyên văn bởi ha_thi Xem bài viết
      bạn có thể tham khảo qua hình vẽ này: http://www.mediafire.com/i/?l417z1e548j9l2m
      cám ơn bạn nhiu. cho mình hỏi thế mình ko cần mắc thạch anh vào hả bạn.
      sao con atmega8 thì nút nhấn lại nối vào mass vậy bạn?
      mình ko dùng kiểu quét led hay chốt led vì nó lằng nhằng quá bạn ạ phải thêm transistor or 74ls373 (ko bek nhớ đúng ko hjhj). bạn giúp mình hoàn thành cái mô hình thực tế của mạch này với nhá.

      Comment


      • #4
        mình nên nối phím bấm xuống mass để bảo vệ tầng đêm bên trong VĐK và tránh suy hao điện áp theo mình hiểu thì như vậy, với mạch đơn giản này thì dung thạch anh bên trong là được rồi, nếu không dùng tầng đệm thì VDK là sao cấp đủ dòng cho led 7seg
        Cái gì biết nói biết. Cái không biết nói không biết. Ấy là biết đấy!
        email:

        Comment


        • #5
          Nguyên văn bởi ha_thi Xem bài viết
          mình nên nối phím bấm xuống mass để bảo vệ tầng đêm bên trong VĐK và tránh suy hao điện áp theo mình hiểu thì như vậy, với mạch đơn giản này thì dung thạch anh bên trong là được rồi, nếu không dùng tầng đệm thì VDK là sao cấp đủ dòng cho led 7seg
          mình vẽ lại mắc xuống mass nó đâu có chạy đâu bạn.
          mà mình nghĩ đễ set pin đó là 1 là phải có điện áp vào chứ bạn.
          nếu mình cứ theo hình vẽ đó mà làm thực tế thì nó chạy ko bạn?

          Comment


          • #6
            Nếu bạn làm cho công ty và ứng dụng thực tế và thời gian tiếp xúc ngắn như vậy không nên thử nghiệm hệ thống thật. Nếu cần thuê người có kinh nghiệm làm.

            Hệ thống thực tế cần quan tâm nhiều vấn đề:
            - Nguồn. Làm sao để ổn định. Chống nhiễu...
            - Linh kiện. Chọn các linh kiện phù hợp với môi trường công nghiệp.
            - PCB vẽ hợp lý tránh nhiễu.
            - Thiết kế phải có bảo vệ các ngõ In-Out, bảo vệ nguồn, bảo vệ... tất cả các thứ cần bảo vệ (Không thể đưa trực tiếp chân VXL ra ngoài)
            - Vỏ hộp, cách gắn, cách đi dây.
            ....

            Riêng mạch của bạn thì thực tế có chạy nhưng led sáng mờ, hình như bạn cũng chả dư được chân nào để đếm xung cả.
            Thực tế cần thêm:
            - Xtal.
            - Mạch đk Reset.
            - Cách ly input.
            - Nguồn.
            - Thiết kế lại phần quét led.
            ...
            Vẫn biết mỗi lần xa là một lần về lại...

            Comment


            • #7
              Nguyên văn bởi qmk Xem bài viết
              Nếu bạn làm cho công ty và ứng dụng thực tế và thời gian tiếp xúc ngắn như vậy không nên thử nghiệm hệ thống thật. Nếu cần thuê người có kinh nghiệm làm.

              Hệ thống thực tế cần quan tâm nhiều vấn đề:
              - Nguồn. Làm sao để ổn định. Chống nhiễu...
              - Linh kiện. Chọn các linh kiện phù hợp với môi trường công nghiệp.
              - PCB vẽ hợp lý tránh nhiễu.
              - Thiết kế phải có bảo vệ các ngõ In-Out, bảo vệ nguồn, bảo vệ... tất cả các thứ cần bảo vệ (Không thể đưa trực tiếp chân VXL ra ngoài)
              - Vỏ hộp, cách gắn, cách đi dây.
              ....

              Riêng mạch của bạn thì thực tế có chạy nhưng led sáng mờ, hình như bạn cũng chả dư được chân nào để đếm xung cả.
              Thực tế cần thêm:
              - Xtal.
              - Mạch đk Reset.
              - Cách ly input.
              - Nguồn.
              - Thiết kế lại phần quét led.
              ...
              cám ơn bạn rất nhìu theo những gì bạn nói và những j mình có thể hiểu đc mình đã làm lại cái mạch thế này:

              ko bek là đã đạt chưa bạn? mong bạn chỉ dẫn thêm.

              Mình làm ở nhà bạn ơi, thuê ai lùm bây h mình ở long an. nếu có ai lùm đc lun cả phần quét hồng ngoại để đếm số vòng thì cho mình bek giá cả nếu dc chơi lun

              Comment


              • #8
                mạch chưa ổn đâu anh, LED 7 đoạn anh dùng loại ANOT chung hay CATOT chung?trên mạch là loại CATOT chung đấy mắc thế không ổn, còn nếu đếm vòng thì dùng ENCODER đi anh
                Cái gì biết nói biết. Cái không biết nói không biết. Ấy là biết đấy!
                email:

                Comment


                • #9
                  Nguyên văn bởi ha_thi Xem bài viết
                  mạch chưa ổn đâu anh, LED 7 đoạn anh dùng loại ANOT chung hay CATOT chung?trên mạch là loại CATOT chung đấy mắc thế không ổn, còn nếu đếm vòng thì dùng ENCODER đi anh
                  ko biêt gọi nó là j nhưng nó là cực âm chung á. Mạch hoạt động đúng yêu câu mà. Khi quét đến led nào thì cho cấp điện dương chân b cua tran npn dòng điên chạy tư chân cua led vê mass. Mình ko biêt là để điện trơ hạn dòng cho led bao nhiu nhưng theo proteus mình đo đc dòng về mass khoan hơn 100 mA ko bek như thê led sáng hêt cở chưa hix.
                  mình ko bek encoder là j nhưng theo mình nghj ý bạn nói là chỉ đếm số vòng thôi đúng ko. như thế ko đc vì mình cần bek số vòng để nhân với chu vi vòng đê kết quả hiển thị ra led lun. Nêu làm thê thì ko thể cân chỉnh cho nó đo dây điện chính xác đc.

                  Comment


                  • #10
                    Nguyên văn bởi lamgialong87 Xem bài viết
                    ko biêt gọi nó là j nhưng nó là cực âm chung á. Mạch hoạt động đúng yêu câu mà. Khi quét đến led nào thì cho cấp điện dương chân b cua tran npn dòng điên chạy tư chân cua led vê mass. Mình ko biêt là để điện trơ hạn dòng cho led bao nhiu nhưng theo proteus mình đo đc dòng về mass khoan hơn 100 mA ko bek như thê led sáng hêt cở chưa hix.
                    mình ko bek encoder là j nhưng theo mình nghj ý bạn nói là chỉ đếm số vòng thôi đúng ko. như thế ko đc vì mình cần bek số vòng để nhân với chu vi vòng đê kết quả hiển thị ra led lun. Nêu làm thê thì ko thể cân chỉnh cho nó đo dây điện chính xác đc.
                    Bạn dùng 4 led 7 đoạn ...dùng phương pháp quét led ... bởi thế trong 1 thời điểm chỉ có 1 led sáng ... nếu led hiện số 8 và điểm point thì ta tính như 8 led ... mỗi led ăn dòng 10 - 20mA ( tốt nhất nên để 10 hoặc 15mA cho nó bền ) ... cách tính điện trở thì cũng như cách tính các led rời ... lấy điện áp - điện áp qua CE ... chia dòng điện sẽ ra cái điện trở cần lắp .

                    --- Tuy vậy nên thiết kế theo kiểu treo lên VCC ( tức loại có Anot chung ) ... sẽ có lợi hơn ... vì nhiều khi Led mà lởm quá ta cần cung cấp dòng cao hơn để đủ độ sáng ( 25mA )...
                    Nếu ở AVR còn đỡ chứ dùng PIC ... cái I/O của nó chỉ đưa được tầm 20mA out put thì dễ toi ( mà chắc là không bền ) .
                    Nói chung tôi không thích kiểu thiết kế của bạn.
                    Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

                    Comment


                    • #11
                      Nguyên văn bởi queduong Xem bài viết
                      Bạn dùng 4 led 7 đoạn ...dùng phương pháp quét led ... bởi thế trong 1 thời điểm chỉ có 1 led sáng ... nếu led hiện số 8 và điểm point thì ta tính như 8 led ... mỗi led ăn dòng 10 - 20mA ( tốt nhất nên để 10 hoặc 15mA cho nó bền ) ... cách tính điện trở thì cũng như cách tính các led rời ... lấy điện áp - điện áp qua CE ... chia dòng điện sẽ ra cái điện trở cần lắp .

                      --- Tuy vậy nên thiết kế theo kiểu treo lên VCC ( tức loại có Anot chung ) ... sẽ có lợi hơn ... vì nhiều khi Led mà lởm quá ta cần cung cấp dòng cao hơn để đủ độ sáng ( 25mA )...
                      Nếu ở AVR còn đỡ chứ dùng PIC ... cái I/O của nó chỉ đưa được tầm 20mA out put thì dễ toi ( mà chắc là không bền ) .
                      Nói chung tôi không thích kiểu thiết kế của bạn.
                      oh bạn nói thế là mình hiểu rồi. 15mA*8 led=120mA điện áp qua ce gần 5v => R hạn dòng gần = 5/0.12= 42 ohm đúng ko bạn.
                      như bạn nói thì h mình đã hiểu là vì sao trong mấy mạch mình xem lại dùng tranistor pnp hjhj.
                      mà bạn cho mình hỏi thêm cái này xí. dòng ra của các chân của AVR thì bị giới hạn nhưng còn nếu dòng về thì sao bạn. ko biết mình diễn đạt đúng ko nhưng ý mình là nếu làm theo cách của bạn thì 4 chân điều khiển 4 trans để cấp điện áp cho 4 led 7 đoạn, dòng chạy qua các led của led 7 đoạn chạy về avr lúc này chân avr phải ở mức 0 thì led mới sáng nhưng như vậy thì dòng chạy về chân cua avr củng lớn vậy(theo như bạn nói thì là 25mA) vậy có ảnh hưởng gì không bạn. hay là phải dùng 8 transitor để đưa dòng về mass

                      Comment


                      • #12

                        mình đã làm lại theo bạn nói rồi nhưng cho mình hỏi sao khi dùng 4 led 7seg thì ko cần điện trở nối về mass còn khi dùng nhóm 4 led của proteus thì phải nối về mass tran mới chịu hoạt động.
                        mà nếu mình làm mạch thế này thì mình gắn điện trở hạn dòng cho led ở đâu bạn. mà sao mạch này chạy chỉ có 50mA thôi vậy bạn.

                        Comment


                        • #13
                          - Dòng ra dòng về là như nhau, nhưng về lâu dài không ổn, cá nhân tui vẫn thích xài 1 con giải mã 7 đoạn như 4043 để quét kiểu này, hoặc ULN2003, ít nhất cách ly led ra khỏi MCU.
                          Mạch reset có cần thiết không? tui không làm mạch reset cho avr
                          - Về nút bấm thì gắn thêm tụ song song với nút chống rung, giống mạch reset vậy
                          - rotary opto gắn cổng NAND? cổng NAND này phải schmith trigger mới có tác dụng, chi bằng thay bằng transistor hay opamp 8 chân hay 555 là xong
                          Đã bỏ nghề về quê chăn gà...

                          Comment


                          • #14
                            Nguyên văn bởi ha_thi Xem bài viết
                            bạn có thể tham khảo qua hình vẽ này: http://www.mediafire.com/i/?l417z1e548j9l2m


                            Chào anh , em rất quan tâm đến topic này, anh có thể cho em xin code của mạch này được ko ah? để em được học hỏi.

                            Comment


                            • #15
                              Nếu tôi làm mạch này thì tôi sẽ dùng 74HC595+BJT để đk và cấp dòng cho led anot chung, nếu dùng tran thuận thì thứ tụ cấp nguồn của tôi sẽ là: 5Vdc--->diode--->74HC595--->các điện trở--->PIN của vdk. Các này thì tốn điện trở quá_Nếu ko muốn mấy con điện trở này thì dùng 2 con diode nối tiếp nhau ở đâu vào nguồn, tha hồ quét. Còn mấy con điện trở cực B cho tran thì bỏ đi cũng đc, nó cũng chả chết đc tran hay giảm tuổi thọ mấy đâu. Vdk thì dùng con có ít chân thôi, mega16 phí quá, có thể dùng 89C2051 hoặc tiny hoặc mega8 cũng đc. Đó là ý kiến chủ quan của bản thân để rút ngắn phần cứng cho mạch này


                              Add: 97 Quán Nam - Lê Chân - Hải Phòng.
                              Tel: 031 518648 Phone: 0904 283 505

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X