RP Store Tìm linh kiện theo mã, gửi BOM nhận báo giá Gửi BOM

Cần giúp đỡ về vòng lặp trong c lập trình cho pic 12f675

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • kaka_hjtmjss
    Thành viên tích cực
    • Jan 2012
    • 264

    #1

    Cần giúp đỡ về vòng lặp trong c lập trình cho pic 12f675

    TÌnh hình là e lập trình cho con pic 12f675 cũng tham khảo rất nhiều ý kiến của các a(chị )trong diễn đàn. mọi người cho e hỏi e có đoạn code sau bây giờ e muốn dùng 1 lệnh hay vòng lặp nào đó giúp cho code của e ngặn gọn và dễ nhìn hơn. đây là code của e nó. mong mọi người giúp đỡ.
    e cũng thử dùng vòng lặp for lồng cho chính nó nhưng tex vẫn chưa ộn. híc
    thân gửi. thank mọi ngưởi trước. :-d



    #include <12F675.h>
    #device ADC=10
    #fuses INTRC_IO,NOWDT,NOPUT,NOPROTECT,NOCPD,NOMCLR
    #use delay(clock=4000000)
    #define GP0 PIN_A0
    #define GP1 PIN_A1
    #define GP2 PIN_A2
    #define GP3 PIN_A3_OFF
    #define GP4 PIN_A4
    #define GP5 PIN_A5
    void main()
    {
    int16 k,t,p,i;
    while(1){
    set_tris_a(0b00001000);//GP3=input
    output_a(0x00);
    output_a(0x00);delay_ms(300);
    output_a(0xFF);delay_ms(300);
    set_tris_a(0);
    for(k=0x40; k>0; k=k>>1){
    if(k==0x08)
    {
    }
    else
    {
    output_a(k);delay_ms(200);}
    }
    for(k=0x01; k<0x40; k=k<<1){
    if(k==0x08)
    {
    }
    else
    {
    output_a(k);delay_ms(200);
    }
    }
    }
    }
  • ladykiller
    Thành viên tích cực
    • Aug 2008
    • 748

    #2
    làm sao ngắn hơn được bạn, vậy chắc là gọn lắm ùi
    Khoa học công nghệ mới là chìa khóa của sự phát triển!

    Comment

    • kaka_hjtmjss
      Thành viên tích cực
      • Jan 2012
      • 264

      #3
      vẫn gọn đk nữa đấy bạn à. chẳng qua mình chưa hiểu sâu về các hàm và câu lệnh trong c để rút gọn và tối thiểu hóa nó thôi.

      Comment

      • sang_dientu
        Thành viên tích cực
        • Oct 2009
        • 1563

        #4
        Nguyên văn bởi kaka_hjtmjss Xem bài viết
        vẫn gọn đk nữa đấy bạn à. chẳng qua mình chưa hiểu sâu về các hàm và câu lệnh trong c để rút gọn và tối thiểu hóa nó thôi.
        sao trong các hàm if lại không có câu lệnh nào vạy hết bạn.
        email:
        chỉ được liên lạc từ 19h00 - 21h30



        Comment

        • kaka_hjtmjss
          Thành viên tích cực
          • Jan 2012
          • 264

          #5
          đúng thế. m đây là if(đủ) mà b. có nghĩa là trong if nếu sai đúng thì m dùng câu lệnh 1 còn sai thì mình dùng câu lệnh 2. đây trường hợp của m là sai. nên m bỏ trống khối lệnh 1. chỉ dùng khối lệnh 2. :-d

          Comment

          • sang_dientu
            Thành viên tích cực
            • Oct 2009
            • 1563

            #6
            Nguyên văn bởi kaka_hjtmjss Xem bài viết
            đúng thế. m đây là if(đủ) mà b. có nghĩa là trong if nếu sai đúng thì m dùng câu lệnh 1 còn sai thì mình dùng câu lệnh 2. đây trường hợp của m là sai. nên m bỏ trống khối lệnh 1. chỉ dùng khối lệnh 2. :-d
            bạn có thể làm như sau

            ....
            if(k!=0x08)
            {
            các câu lệnh cần thực hiện
            }

            bạn bỏ phần else đi là nó ngắn ngủn lại thôi à.
            email:
            chỉ được liên lạc từ 19h00 - 21h30



            Comment

            • kaka_hjtmjss
              Thành viên tích cực
              • Jan 2012
              • 264

              #7
              không bạn ơi, nếu như thế là sai cú pháp rồi. m nhớ trong if chỉ có thể là ==,>,< thôi.

              Comment

              • sang_dientu
                Thành viên tích cực
                • Oct 2009
                • 1563

                #8
                Nguyên văn bởi kaka_hjtmjss Xem bài viết
                không bạn ơi, nếu như thế là sai cú pháp rồi. m nhớ trong if chỉ có thể là ==,>,< thôi.

                eo. bó tay. nhớ sao mà bằng người hay làm việc với nó.
                email:
                chỉ được liên lạc từ 19h00 - 21h30



                Comment

                • kaka_hjtmjss
                  Thành viên tích cực
                  • Jan 2012
                  • 264

                  #9
                  ừ. dù gì cũng thank bạn đã đóng góp ý kiến.hi

                  Comment

                  • embracelife
                    Thành viên mới
                    • Nov 2010
                    • 5

                    #10
                    ai giup minh voi sao ko con pic 12f675 ko chay hic

                    Comment

                    Về tác giả

                    Collapse

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

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

                    Collapse

                    Đang tải...