Thông báo

Collapse
No announcement yet.

Tạo 10 tín hiệu sóng vuông bằng timer của Atmega16/32 với chu kỳ khác nhau.

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

  • Tạo 10 tín hiệu sóng vuông bằng timer của Atmega16/32 với chu kỳ khác nhau.

    Hiện mình đang làm bài tập môn học,đề bài như sau:Atmega 16/32 có 3 timer,mở rộng sử dụng 1 timer để tạo các sóng vuông có chu kỳ khác nhau.Các anh,các bạn giúp dùm.

  • #2
    Chào bạn cái này hồi trước mình có hỏi thầy rồi lên mình biết với đoạn code này 10 thời điểm hay 100 thời điểm vẩy được
    #define led PORTD;
    {
    TCNT0=178;
    unsigned char a,sl;
    if((a==0)&&(++sl>39))sl=0,a=1,led=0;
    elseif((a==1)&&(++sl>99)sl=0,a=2,led=1;
    elseif((a==2)&&(++sl>19)sl=0,a=3,led=0;
    elseif((a==3)&&(++sl>59)sl=0,a=4,led=1;
    }
    cứ thế tới bao nhiêu bạn tuỳ thích
    nhớ phải cho câu lệnh này vào trong ngắt nha
    k hiểu chỗ nào pm mình giải thích cho ^^

    Comment


    • #3
      Nguyên văn bởi cogaihalan Xem bài viết
      Chào bạn cái này hồi trước mình có hỏi thầy rồi lên mình biết với đoạn code này 10 thời điểm hay 100 thời điểm vẩy được
      #define led PORTD;
      {
      TCNT0=178;
      unsigned char a,sl;
      if((a==0)&&(++sl>39))sl=0,a=1,led=0;
      elseif((a==1)&&(++sl>99)sl=0,a=2,led=1;
      elseif((a==2)&&(++sl>19)sl=0,a=3,led=0;
      elseif((a==3)&&(++sl>59)sl=0,a=4,led=1;
      }
      cứ thế tới bao nhiêu bạn tuỳ thích
      nhớ phải cho câu lệnh này vào trong ngắt nha
      k hiểu chỗ nào pm mình giải thích cho ^^
      Đoạn code này của bạn có thể phát 10 xung khác nhau cùng một lúc k ?? hay mỗi lần phát dc 1 xung ?

      Comment


      • #4
        Tất nhiên là được rồi thì bạn phải viết thử đoạn code này đi rồi cho hiển thị ra LED là biết
        thanh ghi TCNT0=178 là 5ms tràn
        còn các số 39 99 19 59 là các số do bạn tính timer LED on hay off bao nhiêu ms thui!

        Comment


        • #5
          mình cảm ơn bạn cogaihlan nhiều^^

          Comment


          • #6
            Code đó mình làm thử rồi bạn.không hoạt động.Bạn có thể hướng dẫn chi tiết hơn không?

            Comment


            • #7
              Bạn tham khảo tại đây nhé! Cái này viết cho PIC nhưng giải thuật hoàn toàn áp dụng đc cho Atmega
              [Thảo luận]PWM với GPIO

              Comment


              • #8
                Cảm ơn bạn nha ^^

                Comment

                Về tác giả

                Collapse

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

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

                Collapse

                Đang tải...
                X