[Thắc mắc] Lỗi lập trình Keil C

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • lee_trieu
    Thành viên tích cực
    • Jun 2012
    • 302

    #16
    Nguyên văn bởi viboyth.haui Xem bài viết
    Có thể thay đổi,xem tại đây : http://www.dientuvietnam.net/forums/...den-led-78519/
    à không anh !
    ý em là mình có thể lập trình cho 1 LED nó sáng từ từ không á?

    Comment

    • tan0710
      Thành viên tích cực
      • Mar 2010
      • 471

      #17
      cái đấy là PWM..cứ từ từ mà học..mới học mà hỏi nhiều thế cũng k làm gì đâu...học đến đâu rồi bàn đến đấy.Ok.?

      Comment

      • lee_trieu
        Thành viên tích cực
        • Jun 2012
        • 302

        #18
        Nguyên văn bởi tan0710 Xem bài viết
        cái đấy là PWM..cứ từ từ mà học..mới học mà hỏi nhiều thế cũng k làm gì đâu...học đến đâu rồi bàn đến đấy.Ok.?
        vâng ! em cứ tưởng nó là vi điều khiển chứ ! cảm ơn anh !

        Code:
        void nhicduoi()
        {	P0=P1=P2=P3=0xff;
        	for(j=0;j<8;j++)
        	{
        	P2=~nhicthuan(j);
        	P3=~nhicnguoc(j);
        	delay(2000);
        	}
        	P2=P3=0xff;
        		for(j=0;j<8;j++)
        	{
        	P0=P1=~nhicnguoc(j);
        
        	delay(2000);
        	}
        	P3=0xff;
        }
        anh cho em hỏi trong đoạn code trên "P2=~nhicthuan(j);" có nghĩa là P2 có giá trị đảo ngược của hàm nhicthuan(j) hả anh ???

        Comment

        • tan0710
          Thành viên tích cực
          • Mar 2010
          • 471

          #19
          nó cũng làm bằng vi điều khiển thôi..nhưng cứ từ từ mà học...còn nhiều cái hay mà

          Comment

          • lee_trieu
            Thành viên tích cực
            • Jun 2012
            • 302

            #20
            các anh cho em hỏi cái, em viết code như thế này :
            Code:
            #include<at89x51.h>	
            //ham delay
            void delay(int time)
            {    
               while(time--)
                    { 
                int temp = 121;   
                while(temp--);   
                    }
            }  	  
            unsigned int i,j;
            void hieuung();
            
            void hieuung(){
            while(1){
            P1=P2=P3=1; //cho cac port nay o muc cao
            P0=0xAA;   delay(500);
            P0=0x55;     delay(500);
            
             }
             }
            void main(){
            hieuung();
            }
            có một chỗ mà em không hiểu là:
            "P1=P2=P3=1;"
            em đã cho 3 port này lên mức cao hết
            vậy mà chẳng hiểu sao ở các chân P1.0, P2.0 , P3.0 vẫn ở mức 0 như thế này ???
            Click image for larger version

Name:	code.PNG
Views:	1
Size:	17.1 KB
ID:	1368120

            Comment

            • viboyth.haui
              Thành viên tích cực
              • Feb 2012
              • 300

              #21
              Muốn gán cho cả Port của nó bằng 1 thì phải viết P0=11111111 (thường ko dùng cách này) hoặc P0=0xff chứ gán với số 1 thì chỉ là 1 bit,ko hợp lệ,qua đây đọc lại nè:
              vanduc0211@gmail.com

              Comment

              • lee_trieu
                Thành viên tích cực
                • Jun 2012
                • 302

                #22
                Anh cho em hỏi sao em viết code này:
                Code:
                #include <at89x52.h>
                
                	void delay(int time) 
                	{
                		while(time--) 
                		{
                		int temp=125;
                		while(temp--);
                		}
                	}	
                		  
                		void chay()
                		{	
                		
                			int i;
                			int a[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};
                			{ 
                			P1=P2=P3=0xFF;
                			for(i==1;i<=8;i++)
                				{
                				P0=a[i];
                				delay(100);	
                				}
                			}
                		}					
                		void main ()
                		{
                		chay();
                		}
                mục đích của em là cho các Port 1,2,3 ở mức cao. rồi để Port 0 chạy từ P0.0->P0.7 ;
                nhưng sao nó chạy từ P0.0->P0.7 rồi mà không dừng lại??? (nó cứ chạy hoài à ) em chỉ dùng 1 vòng lặp thôi mà????

                Comment

                • kidteam
                  Thành viên tích cực
                  • Nov 2010
                  • 1633

                  #23
                  bạn thêm while(1); ngay sau chay(); trong hàm main()

                  Comment

                  • lee_trieu
                    Thành viên tích cực
                    • Jun 2012
                    • 302

                    #24
                    Nguyên văn bởi kidteam Xem bài viết
                    bạn thêm while(1); ngay sau chay(); trong hàm main()
                    ủa?? sao thêm lênh này nó lại chạy đúng vậy anh ??
                    giải thích giúp em nha !

                    Comment

                    • tan0710
                      Thành viên tích cực
                      • Mar 2010
                      • 471

                      #25
                      cái này là C căn bản mà...
                      while(1); là vòng lặp vô hạn ( Điều kiện = 1 luôn true )
                      vòng lặp vô hạn nhưng nó k làm gì cả. vì k có lệnh nào trong vong lặp while cả

                      Comment

                      • lee_trieu
                        Thành viên tích cực
                        • Jun 2012
                        • 302

                        #26
                        Nguyên văn bởi tan0710 Xem bài viết
                        cái này là C căn bản mà...
                        while(1); là vòng lặp vô hạn ( Điều kiện = 1 luôn true )
                        vòng lặp vô hạn nhưng nó k làm gì cả. vì k có lệnh nào trong vong lặp while cả
                        Em hiểu While(1) là lặp vô hạn rồi, nhưng không hiểu chỗ "không làm gì ấy" giờ thì hiểu rồi, cảm ơn anh nha !

                        Comment

                        Về tác giả

                        Collapse

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

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

                        Collapse

                        Đang tải...