Thông báo

Collapse
No announcement yet.

tại sao nó không đảo chiều quay khi bấm button

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

  • tại sao nó không đảo chiều quay khi bấm button

    tìm mãi mà ko thấy nguyên nhân khi biên dich CCS nó chỉ có 1 cảnh báo là function not void and does not return and value EXT_ISR
    sửa giúp mình chỉ là 1 bài cực kỳ đơn giảnClick image for larger version

Name:	aaaaaaaa.png
Views:	1
Size:	38.5 KB
ID:	1420368

    #include<16f877a.h>
    #include<def_877a.h>
    #FUSES NOWDT,HS,NOPUT,NOPROTECT,NODEBUG,NOBROWNOUT,NOLVP, NOCPD,NOWRT
    #use delay(clock=20000000)
    int8 mode;
    #INT_EXT
    EXT_ISR()
    {
    mode++;
    if(mode==2)
    mode=0;
    }
    void quaythuan();
    void quaynguoc();
    void main()
    {
    trisb=0xff;
    trisd=0x00;
    enable_interrupts(int_EXT);
    ext_int_edge(H_TO_L);
    enable_interrupts(GLOBAL);
    mode=0;
    while(true)
    {
    switch(mode)
    {
    case 1:quaythuan();break;
    case 2:quaynguoc();break;
    }
    }
    }
    void quaythuan()
    {
    portd=0b11111110;
    }
    void quaynguoc()
    {
    portd=0b11111101;
    }

  • #2
    Quá đẳng cấp !

    Comment


    • #3
      Nguyên văn bởi chelseaboy Xem bài viết
      tìm mãi mà ko thấy nguyên nhân khi biên dich CCS nó chỉ có 1 cảnh báo là function not void and does not return and value EXT_ISR
      sửa giúp mình chỉ là 1 bài cực kỳ đơn giản[ATTACH=CONFIG]81732[/ATTACH]

      #include<16f877a.h>
      #include<def_877a.h>
      #FUSES NOWDT,HS,NOPUT,NOPROTECT,NODEBUG,NOBROWNOUT,NOLVP, NOCPD,NOWRT
      #use delay(clock=20000000)
      int8 mode;
      #INT_EXT
      EXT_ISR()
      {
      mode++;
      if(mode==2)
      mode=0;
      }
      void quaythuan();
      void quaynguoc();
      void main()
      {
      trisb=0xff;
      trisd=0x00;
      enable_interrupts(int_EXT);
      ext_int_edge(H_TO_L);
      enable_interrupts(GLOBAL);
      mode=0;
      while(true)
      {
      switch(mode)
      {
      case 1:quaythuan();break;
      case 2:quaynguoc();break;
      }
      }
      }
      void quaythuan()
      {
      portd=0b11111110;
      }
      void quaynguoc()
      {
      portd=0b11111101;
      }
      EXT_ISR() /// Chỗ này thiếu void nó sẽ hiện cảnh báo , hàm đếm, nút bấm không xử lý khéo, không chống rung sẽ không chạy nổi đâu.

      Mô phỏng thì nối RD6, RD7 ... chương trình thì RD0, RD1 chẳng hiểu nó sẽ chạy ra sao ?

      Thử chương trình này xem :

      Nhớ nối mô tơ vào RD0, RD1 ... điều chỉnh moto 5V không có khi nó đếch thèm chạy !
      Code:
      #include<16f877a.h>
      #FUSES NOWDT,HS,NOPUT,NOPROTECT,NODEBUG,NOBROWNOUT,NOLVP, NOCPD,NOWRT
      #use delay(clock=20000000)
      int8 mode;
      #INT_EXT
      void EXT_ISR()
      {
      
      if(mode<2)mode++;
      else mode =1;
      
      }
      void quaythuan();
      void quaynguoc();
      void main()
      {
      set_tris_b(0xff);
      set_tris_d(0x00);
      enable_interrupts(int_EXT);
      ext_int_edge(H_TO_L);
      enable_interrupts(GLOBAL);
      mode=0;
      while(true)
      {
      switch(mode)
      {
      case 1:quaythuan();  break;
      case 2:quaynguoc();break;
      }
      }
      }
      void quaythuan()
      {
      output_d(0b11111110);
      }
      void quaynguoc()
      {
      output_d(0b11111101);
      }
      Click image for larger version

Name:	moto.jpg
Views:	1
Size:	153.6 KB
ID:	1391610
      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


      • #4
        Nguyên văn bởi thangbk92 Xem bài viết
        Quá đẳng cấp !
        bạn ơi mình mới học mà có cần phải nói đểu vậy không . chỉ mình thì mình cảm ơn

        Comment


        • #5
          cảm ơn bạn nhiều nhá queduong

          Comment

          Về tác giả

          Collapse

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

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

          Collapse

          • bqviet
            Trả lời cho Đấu tắt điện cho máy tính bảng
            bởi bqviet
            Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
            06-12-2025, 17:17
          • nguyendinhvan
            Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
            bởi nguyendinhvan
            Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
            05-12-2025, 19:59
          • afrendly
            Trả lời cho Đấu tắt điện cho máy tính bảng
            bởi afrendly
            Có vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
            04-12-2025, 01:27
          • nick22
            Trả lời cho Máy điện châm ?
            bởi nick22
            Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
            01-12-2025, 13:23
          Đang tải...
          X