• Webdien.com - Cầu nối dân điện


    1. [HOT] - Webdien đang tuyển các vị trí quản lý cao cấp

      ntech.com.vn

  • Kết quả 1 đến 7 của 7

    Chủ đề: Gà VDK cần giúp

    1. #1
      Tham gia
      23-03-2011
      Bài viết
      30
      Cảm ơn
      10
      Được cảm ơn 0 lần, trong 0 bài

      Mặc định Gà VDK cần giúp


    2. #2
      Tham gia
      18-05-2010
      Địa chỉ
      Long Hải
      Bài viết
      1,565
      Cảm ơn
      226
      Được cảm ơn 907 lần, trong 605 bài

      Mặc định Ðề: Gà VDK cần giúp

      Trích dẫn Gửi bởi gaga Xem bài viết
      Viết chương trình như sau: led đơn sáng từ 1 to 8 sau đó tắt rồi sáng ngược lại từ 8 về 1. nhìn cũng dể nhưng e làm không được hihi. chỉ làm cho sáng từ 1 to 8. còn ngược lại thì không hihi. ai rảnh viết dùm e với. viết = atmega16 nha
      tôi thấy bạn tập viết chương trình dịch led thì tưởng bạn học 89C51. thế là ngồi viết cho bạn, và còn làm cả cái ảnh mô phỏng nữa. lúc định post thì lại thấy bạn viết bằng atmega16. nhưng lỡ làm rồi thì post lên luôn.
      với bài của bạn thì bạn dùng lệnh dịch trái và dịch phải là được.
      đây là bài mẫu sử dụng 89c51

      Code:
      ORG 000H
      TD:    MOV P0,#0
          MOV A,P0
      HU1:    SETB C
          LCALL DELAY
          RLC A
          MOV P0,A
          LCALL DELAY
          JNC HU1
          LCALL DELAY
          MOV A,#0
          MOV P0,A
          LCALL DELAY
      HU2:    SETB C
          LCALL DELAY
          RRC A
          MOV P0,A
          LCALL DELAY
          JNC HU2
          JMP TD
      DELAY:    MOV R7,#0FFH
      DEL2:    MOV R6,#0FFH
      DEL1:    DJNZ R6,DEL1
          DJNZ R7,DEL2
          RET
      END
      Cao Văn Hưởng
      Email: vanhuongcao@gmail.com

    3. Những thành viên đã cảm ơn caovanhuong vì bài viết hữu ích:


    4. #3
      Tham gia
      03-10-2011
      Địa chỉ
      Lớp học HMI Intouch 10.1
      Bài viết
      599
      Cảm ơn
      51
      Được cảm ơn 325 lần, trong 215 bài

      Mặc định Ðề: Gà VDK cần giúp

      Ngồi một chút viết được cái code mình cho là tối ưu. Bạn dùng phép dịch bit nhá:
      #include <mega16.h>
      #include<delay.h>

      // Declare your global variables here
      int i=0,x=1;
      void main(void)
      {
      while (1)
      {
      // Place your code here
      for(;i<8;i++) //nhay led tu` trên xuống dưới
      {
      delay_ms(100);
      PORTC=x;
      x=x<<1;
      }

      for(;i>0;i--)// nháy Led ngược lại
      {
      delay_ms(100);
      PORTC=x;
      x=x>>1;
      }
      };

      }

      Bạn tạo File theo kiểu Project ấy.

      Mình thấy viết cách này là hay nhất rồi!Mạch mô phỏng!


    5. Những thành viên đã cảm ơn binhcdt43 vì bài viết hữu ích:


    6. #4
      Tham gia
      03-10-2011
      Địa chỉ
      Lớp học HMI Intouch 10.1
      Bài viết
      599
      Cảm ơn
      51
      Được cảm ơn 325 lần, trong 215 bài

      Mặc định Ðề: Gà VDK cần giúp

      Đây là kết quả mô phỏng lặp lại!Hehe.



      Hehe!Đã học được cách làm ảnh động.Dễ thật đấy!ôi!Google muôn năm!

    7. Những thành viên đã cảm ơn binhcdt43 vì bài viết hữu ích:


    8. #5
      Tham gia
      23-03-2011
      Bài viết
      30
      Cảm ơn
      10
      Được cảm ơn 0 lần, trong 0 bài

      Mặc định Ðề: Gà VDK cần giúp

      hihi dù sao cũng cảm ơn các bạn. dich chuyển led thì mình biết rồi. cái mình làm không được là sáng dần từ 1 to 8 tắt rồi sáng ngược lại ý. 1 sáng rồi 2 sáng 3 sáng... đến 8 rồi mới tắt hết. sau đó sáng ngược lại
      +++---o0o---+++
      y như của anh caovanhuong viết ý nhưng a ý viết bang cái gì đó em không được học nên không hiểu. ai có thể viết lai bằng atmega16 giúp em được không

    9. #6
      Tham gia
      03-10-2011
      Địa chỉ
      Lớp học HMI Intouch 10.1
      Bài viết
      599
      Cảm ơn
      51
      Được cảm ơn 325 lần, trong 215 bài

      Mặc định Ðề: Gà VDK cần giúp

      Oki!Bạn khai báo thêm một biến y nữa và thiết lập giá trị cho x,y sau mỗi vòng lặp. Code của chưong trình ở bên dưới.Chúc bạn thành công trong học tập:

      #include <mega16.h>
      #include<delay.h>

      // Declare your global variables here
      int i=0,x=1,y=1;
      void main(void)
      {
      while (1)


      {
      // Place your code here
      y=1;x=1; //thiet lap lai gia tri cho vong lap
      for(;i<8;i++) //nhay led tu` phai qua trai
      {
      delay_ms(100);
      PORTC=y;
      x=x<<1;
      y=y+x;
      }
      delay_ms(100);
      PORTC=0;
      delay_ms(100);
      y=128;x=128; //thiet lap lai gia tri cho vong lap
      for(;i>=0;i--)
      {
      delay_ms(100);
      PORTC=y;
      x=x>>1;
      y=y+x;

      }
      delay_ms(100);
      };
      }



      Phần mô phỏng thì giống bác Hường đó!

    10. Những thành viên đã cảm ơn binhcdt43 vì bài viết hữu ích:


    11. #7
      Tham gia
      23-03-2011
      Bài viết
      30
      Cảm ơn
      10
      Được cảm ơn 0 lần, trong 0 bài

      Mặc định Ðề: Gà VDK cần giúp

      ồ vậy à . thank ban nhiều nha. mai thi lại VDK haha

    Trả lời với tài khoản Facebook

    Văn Võ Trạng Nguyên
    Hắc Hiệp Đại Chiến Thánh Bài 2
    Đặc Cảnh Diệt Ma
    Khử Ma Đạo Trưởng
    Cương Thi Diệt Tà
    Sự Hình Thành Của Đế Chế Mông Cổ
    NHỮNG KHOẢNH KHẮC ĐÁNG NHỚ CỦA GIẢI GOLF PHÚ MỸ HƯNG 2016