Thông báo

Collapse
No announcement yet.

Ai có AVR bị cà tưng vì fuse thì vô đây !

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

  • #16
    cam ơn bác ntv2 nhiều em đã cứu được hai em (atmga8515l va at90s2313) theo trên

    Comment


    • #17
      theo em được biết avr mới xuất sưởng thí mặc định chạy dao đông nội ,em thắc mắc ,em mới mua hai chú atmega8 va máy con 90s2313,atmega8515L em để trắng không tích gi vào phần fuse bit mà nó vẫn chạy được voi dao động ngoài nhỉ , em đã thử rồi

      khi bỏ thạnh anh ra thi no không chạy
      khi thay từng loại thạnh anh thi nó chạy nhanh chậm tùy(4mhz hay 8mhz) ,chứng tỏ để trắng phần fuse bit vẫn chạy với dao dông ngoài ( em bị teo mấy con vi vụ fuse bit này rồi ,theo kinh nghiêm cứ để trắng la tôt nhất)

      chẳng nhẽ datasheet của nó vớ vẩn a.

      xin các cao thủ giải thích cho em được không

      Comment


      • #18
        Bạn cần nói rõ dùng tool gì để lập trình, nếu dùng Code Vision AVR và nhấn Nút Program All thì bạn đã vô tình set cho nó chạy với thạch anh ngoài rồi!
        Attached Files
        PNLab
        Mạch nạp/debug ULink2, Jlink ARM USB
        Mạch nạp AVR, PIC, 8051, MSP430 USB
        Mạch phát triển STM32, ARM9, ARM11
        more...www.pnlabvn.com

        Comment


        • #19
          Bạn sphinx nói đúng đấy, vì khi fusebit được lập trình thì nó là mức 0, còn ko được lập trình thì là mức 1 -> nó trái ngược oái oăm thế nên khối người lầm...Khi hiểu ra thì mọi chuyện đã muộn..
          |

          Comment


          • #20
            Chào các bác!
            Các bác cho em hoi một chút. Em có một mạch nạp "AVR 910 USB programmer" . Cái mạch này nạp qua codevision AVR thì không vấn đề gì. Nhưng bây giờ em có một file hex. Em không làm sao để nạp file này xuống AVR được. Mong các anh giúp em với.
            Liệu có giao diện nào để đọc file hex từ con ATMEGA16L hoặc là ghi một file hex có sẵn xuống con này qua "AVR 910 USB programmer" không? Help me!

            Comment


            • #21
              các anh cho em hỏi con ATmega16 của em bị chạy nhanh như ngựa là sao à?(chả là em có dùng con AT16 đưa dữ liệu ra LCD, trước chạy bình thường rùi tự nhiên sau khi nạp lại dữ liệu, và dữ liệu xuất ra LCD nhanh kinh khủng mặc dù em để delay_ms(100) mà nó chạy nhanh lắm)

              Comment


              • #22
                Em đang có 4 con attiny2313 đang nằm chết đuối mà cứu mãi theo cách của mấy bác mà ko được! em dùng mạch nạp avr910. nhưng thấy trong list ko có hỗ trợ con này thì làm sao erase con này được. Cứu em gấp dùm cái, em cảm ơn mấy bác nhiều!

                Comment


                • #23
                  Hình như phương pháp này chỉ sử dụng được 1 lần, nếu sau đó AVR tiếp tục bị fuse sai thì không thể cứu bằng cách này được nữa. Em đang bị dính tình trạng này, lần đầu do ko để ý fuse, dùng cách này cứu được, lần sau bị sai tiếp (em chả hiểu sao nó sai nữa, trước khi fuse đã coi kỹ lắm (em dùng mạch của PonyProg)), em dùng cách này tới giờ vẫn chưa cứu được nữa, tội thằng nhỏ AVR.

                  Comment


                  • #24
                    Nguyên văn bởi laiquangtuye Xem bài viết
                    Em đang có 4 con attiny2313 đang nằm chết đuối mà cứu mãi theo cách của mấy bác mà ko được! em dùng mạch nạp avr910. nhưng thấy trong list ko có hỗ trợ con này thì làm sao erase con này được. Cứu em gấp dùm cái, em cảm ơn mấy bác nhiều!
                    Bác dùng thạch anh 12mhz hoặc 4mhz nhé, trong codevision khi nhận đc chip signature thì read lại fusebit, rồi nạp lại fusebit về mặc định của con tiny2313. Sau đó bỏ chip ra, rút usb ra rồi cắm lại rồi muốn làm gì thì làm. Chú ý cái fuse CKDIV8=0 nếu ko để các fuse khác theo default thì cái avr910 sẽ lúc nhận lúc ko Cái này mình cũng ko hiểu là lỗi bộ nạp hay chip nhưng kinh nghiệm mình là vậy.
                    Các bác cho em hỏi nạp flash trước hay nạp fuse trước với ? Trước h em toàn nạp fuse trước nhưng nạp sai fuse là đi, còn nạp flash trước thì có thể hoạt động có thể không, nhưng vì chip nó có default fusebit nên lúc nào bộ nạp cũng nhận để có thể nạp lại đc.

                    Comment


                    • #25
                      E chào các bác! e có 2 con atmega16 bị đơ do fuse bit sai nhưng đã thử cách mắc mạch RC vào 1 chân Xtal nhưng vẫn chưa làm cho nó hoạt động lại,giá trị điện trở lên nguồn e mắc 10k,tụ 33p
                      Cho e hỏi là giá trị RC này có cần phải chính xác không?Em xin cám ơn nhiều
                      [/B][/COLOR]

                      Comment


                      • #26
                        Mình vẩn chưa hiểu! như vậy là chỉ cần cấp xung 1Hz và dùng mạch nạp reset lại fuse bình thường à. dùng mạch nạp IsP hay AVR910 có được không

                        Comment


                        • #27
                          Nguyên văn bởi nvt2 Xem bài viết
                          Trước hết , xin chia buồn cùng bác nào bị vấn đề này với ATmega8/ATtiny2313 vì hai con này có chân RESET có thể bị disable nên cách này không áp dụng được, tuy nhiên nếu may mắn con AVR của bạn vì lý do gì đó không bị disable RESET thì cách này vẫn dùng được .


                          + Atmel nói rằng, fuse SPIEN không thể được đọc/ghi khi dùng mạch nạp ISP. do đó cứ an tâm , chip của bạn không bị "chết giấc" vì cái fuse này đâu.

                          + AVR có thể chạy với một nguồn xung cấp từ ngoài với các thiết lập dùng nguồn xung ngoài ( mạch RC ngoài, thạch anh ngoài, clock ngoài...).

                          Đa số AVR bị set fuse nhầm thường rơi vào trạng thái không hoat động được nên không thể nạp bằng mode ISP được, do đó , nếu khôi phục cho chip chạy lại thì hoàn toàn có thể chỉnh sửa fuse và nạp lại chương trình. Ít người chú ý rằng, AVR không chạy là do không được cấp xung giữ nhịp.

                          Để tạo được nguồn xung giử nhịp, bạn có thể dùng một con AVR khác được lập trình để tạo xung xuất ra một chân nào đó, sau đó nối nó vào chân XTAL1:
                          Code C đơn giản như sau:
                          Code:
                          while(1)
                          {
                          PORTB=0xFF;
                          PORTB=0x00;
                          } //loop forever;
                          Các chân trên portB sẽ xuất là một xung vuông có thể dùng đưoc trong trường hợp này, ngoài ra cũng có thể dùng mạch dao động RC mà các bạn đã được học rất nhiều hoặc một mạch dùng 555 timer như sơ đồ trong file đính kèm ! (các thông số tạo xung 1MHz)

                          Một trường hợp khá không may mắn là fuse setting chip về trạng thái dùng thạch anh 32KHz, nếu vậy thì bạn phải hạ xung từ mạch dao động xuống 32 - 40KHz. Sau đó điều bắt buộc là mạch nạp phải hỗ trợ xung SCK nhỏ hơn 8KHz, mà thật sự thì ít có mạch nạp miễn phí nào hỗ trợ việc này !

                          Sau khi có nguồn xung rồi, mắc mạch tương tự như hình trong file đính kèm, ở đây lấy thí dụ là con mega8535.

                          Sau khi nhận ra chip rồi thì viêc đầu tiên là erease chip một phát nhá, rồi muốn làm gì thì làm !
                          Ít nhất 1 con Mega8 ( của mình) đã được cứu theo cách này, thật may mắn vì cái Fuse RSTDISL đã không bị set.

                          Còn nếu bạn có điều kiện trang bị mạch nạp STK500 hoặc AVRISP xịn thì mọi chiện dể dàng hơn, xài cái này mà anh nào còn làm chip bị giật cà tưng thì thật là hết chổ nói !.
                          Phòng hỏa hơn cứu hỏa ! Không set fuse sai thì làm gì cần set lại cơ chứ!


                          Chúc bạn thành công !

                          NVT2
                          Vang! EM cảm ơn anh nhiều! Em sửa được con 8535 vứt só từ lâu rùi! Nhưng em ko hiểu làm sao mà khi cho các đèn sáng mà nó cứ nháy nháy! Code em đúng 100%! Cổng A,B,C,D đều bị!

                          Comment


                          • #28
                            Mạch nạp AVR 910 dễ điên quá, cà tưng 2 em 16 rồi. Nếu bạn nào muốn làm mạch nạp thì đừng nên xài AVR 910. Rất phiền phức, dễ fuse bit sai. Mỗi lần nạp xong chương trình mà cấp nguồn ngoài vào mà muốn nạp lại phải rút mạch ra khỏi máy tính, tắt phần mềm nạp, sau đó cắm lại mà đôi lúc phải rút ra cắm vào mấy lần mới đc.
                            Nhận làm mạch, ĐAMH sử dụng vđk Pic & AVR tại tp.HCM
                            Liên hệ sđt: 0902.808.371

                            Comment


                            • #29
                              Em đang làm đồ án về con Atmega128, em set fuse bits bị sai. may mà nhờ cái tiền bối chỉ giáo, k em thay con chip khác rồi.
                              cảm ơn các vị tiền bối nhiều nhé!

                              Comment


                              • #30
                                Cam on bac, em da cuu song may chien si roi

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X