Thông báo

Collapse
No announcement yet.

Fuse bit ATmega128 sai ở đâu?

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

  • Fuse bit ATmega128 sai ở đâu?

    Mình fuse bit bằng phần mềm Khazama như sau:
    JTAGEN = 1
    CKOPT = 0
    CKSEL3,2,1,0 = 1111 (vì mình muốn chạy bằng thạch anh ngoài 16MHz)
    Các bit còn lại mình giữ nguyên như mặc định (chíp mình mới mua), nhưng mình test thử bằng chương trình cho led bật, tắt thì được chứ dùng hàm delay để nhấp nháy hay timer, counter là đều không thấy chạy gì cả.
    Có ai biết mình đã set sai gì hay thiếu gì không?
    Thanks mọi người trước!

  • #2
    Ai biết giúp mình với

    Comment


    • #3
      Mình sửa được rồi. Hoá ra là do bit M103C của mình mới mua về mặc định là = 0 (programed) mình cho nó = 1 là chạy được.

      Comment


      • #4
        chào bạn mình cũng gặp vấn dề như bạn,bạn có thể chỉ cho mình dược không mình sài atmega128,chương trình nạp avr sutudio,core visonavr

        Comment


        • #5
          Nguyên văn bởi m_meomy Xem bài viết
          chào bạn mình cũng gặp vấn dề như bạn,bạn có thể chỉ cho mình dược không mình sài atmega128,chương trình nạp avr sutudio,core visonavr
          Bạn nói rõ xem bạn dùng thạch anh bao nhiêu và đã fuse bit như thế nào rồi? Mình có thể chỉ bạn cách fuse bit. hoặc bạn có thể vào page này xem: Thiết lập Fuse Bits
          Tác giả viết rất chi tiết. Chỉ thêm một điều với ATMega128 là có bit M103C, bạn muốn viết chương trình cho Mega128 thì cần set bit này = 1 (unprogram) nhé.

          Comment


          • #6
            mình dùng ta k11.0592 và set như sau:
            CKSEL0,1,2,3=1
            SUT0=1
            SUT0=0
            BODEN,BODLEVER=0
            BOOTRST,BOOTSZ0,BOOTSZ1,ESAVE=1
            CKOPT,JTAGEN,OCDEN=0
            WDTON,M103C=1
            mình set như thế và đã tiển 4 em át28 lên dường rồi.huhu,mong bạn cho ý kiến,cám ơn bạn nhiều

            Comment


            • #7
              à bạn ơi SUT0=1,SUT1=0

              Comment


              • #8
                Nguyên văn bởi m_meomy Xem bài viết
                mình dùng ta k11.0592 và set như sau:
                CKSEL0,1,2,3=1
                SUT0=1
                SUT0=0
                BODEN,BODLEVER=0
                BOOTRST,BOOTSZ0,BOOTSZ1,ESAVE=1
                CKOPT,JTAGEN,OCDEN=0
                WDTON,M103C=1
                mình set như thế và đã tiển 4 em át28 lên dường rồi.huhu,mong bạn cho ý kiến,cám ơn bạn nhiều
                Ơ hình như bạn set cả một số bit k liên quan đúng k?
                Nếu chip là mới mua và chỉ set để cho chip chạy được với thạch anh (>8MHz) của bạn thì chỉ cần set:
                CKSEL0,1,2,3=1 (unprogrammed)
                CKOPT=0 (programmed)
                M103C=1 (unprogrammed)
                JTAGEN=1(unprogrammed)
                nếu bạn muốn sử dụng mấy chân TCK,TMS, TDO, TDI tương ứng với 4 chân ADC4,5,6,7 (PF4,5,6,7) đấy nhế.
                Các bit khác thì để như mặc định (mặc định của chip mới mua sẽ là):
                OCDEN=1, ESAVE=1, BOOTRST=1, BOOTSZ0,1=0, BODEN,BODLEVER=1, WDTON=1
                SUT1=0, SUT0=1

                Mình nhấn mạnh một lần nữa là 1=Unprogrammed, 0=Programmed đấy nhé, bạn cẩn thận vì mình thấy mấy bit nên để ở mặc định ở trên của bạn có vẻ hơi ngược nên sợ bạn bị lộn giữa 2 giá trị 0 với 1 này.
                Một điểm cần lưu ý nữa là không biết bạn dùng phần mềm nạp gì. Vì một số phần mềm nó quy ước 0 với 1 khác nhau đấy nhé. VD:
                - ponyprog thì: check = 0, uncheck = 1, giống CodevisionAVR
                - trong khi thằng khazama thì ngược lại: check = 1 còn uncheck = 0

                À, bạn có chắc đã chết cả 4 chip k? Mình thấy chip khá là khó chết, bạn đừng vội vứt đi , 1 là sau này có khi biết nguyên nhân, 2 là dù có set fusebit sai thì chip cũng không chết được đâu, chỉ cần có mạch nạp song song STK là có thể reset fusebit một cách dễ dàng, nghe đâu trong diễn đàn mình cũng có người sẵn sàng reset miễn phí hay sao đấy. 4 con cũng vào tầm 600k chứ ít ỏi gì đâu
                Last edited by ddthanhpluto; 22-05-2012, 18:52.

                Comment


                • #9
                  bạn kiểm tra set lại cái bit mà là M103 thì phải. Mình không nhớ chính xác nhưng mà có số 103 bạn đổi trạng thái nó là ok

                  Comment

                  Về tác giả

                  Collapse

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

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

                  Collapse

                  Đang tải...
                  X