Thông báo

Collapse
No announcement yet.

giúp nút bấm cơ bản

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

  • #16
    đây là đoạn code dùng 4 nut nhấn cho 4 led. nhấn nút 1 thì đèn 1 sáng, nhả ra thi tắt, tương tự cho các dèn khác nha.
    Code:
    INCLUDE 89C51.MC
    					ORG 00000H
    					
    					MOV P1,#0FH
    		loop3:			
    					JB P1.0,LEDOFF1
    					JNB P1.0,LEDON1
    		loop:
    					JB P1.1,LEDOFF2
    					JNB P1.1,LEDON2
    		loop1:
    					JB P1.2,LEDOFF3
    					JNB P1.2,LEDON3
    		looP2:
    					JB P1.3,LEDOFF4
    					JNB P1.3,LEDON4
    					SJMP loop3
    
    ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    
    					
    					
    	LEDOFF1:
    							
    					CLR P1.4
    					SJMP loop
    					
    	LEDON1:
    					SETB P1.4
    					SJMP loop
    					
    	LEDOFF2:
    							
    					CLR P1.5
    					SJMP loop1
    					
    	LEDON2:
    					SETB P1.5
    					SJMP loop1
    					
    	LEDOFF3:
    							
    					CLR P1.6
    					SJMP loop2
    					
    	LEDON3:
    					SETB P1.6
    					SJMP loop2
    					
    	LEDOFF4:
    							
    					CLR P1.7
    					SJMP loop3
    					
    	LEDON4:
    					SETB P1.7
    					SJMP loop3
    					END

    Comment


    • #17
      Nguyên văn bởi 89c52 Xem bài viết
      cảm ơn các bạn đã giúp đỡ.
      vì mình mới học 12. ở trường đã dạy sẵn pascal nên sang đây mình học c luôn.
      thực ra kích led bằng nút bấm chỉ là khởi đầu thôi. sau này mình sẽ thay led bằng trán, fet, relay....
      nên bạn nào có thể giúp dùm mình code c. vì ám mình chẳng biết tẹo gì
      mình nhận ra đây cũng là khuyết điểm nên cũng đang định học ám đây
      Nếu bạn cần code C thì làm vầy nè:
      Nối P1 với các đầu dương của các LED, đầu âm các led qua trở 220 ohm rồi nối xuống gnd.
      Nối P2 qua các nút, đầu còn lại nối xuống GND. Đồng thời nối các chân P2 qua trở 10k lên VCC.
      Code:
      #include<reg51.h>
      void main(void)
      {
         while(1)
         {
            P2 = 0xff;
            P1 = ~P2;   
         }
      }
      Bạn nói dùng C nên mình viết bằng C luôn cho bạn.
      Chẳng có ý khuyên bảo gì, vì mình cũng là nghiệp dư, nhưng theo mình bạn nên học qua chút các phần tử tải điện cơ bản. ASM cho 8051, cách dùng Keil C....
      Bạn là học sinh lớp 12 có hứng thú vậy quả thật vui mừng.
      Chúc bạn thành công. Có gì bạn cứ post lên mọi người sẽ tận tình giúp đỡ.
      YM: Noname_vnatr.
      Project mã nguồn mở:
      Học điện tử online:

      Comment


      • #18
        Nguyên văn bởi ckd-ir Xem bài viết
        Không biết thì hỏi, có gì đáng cười? Chủ thớt mới học 12 thôi mà.
        Chắc bác pro lắm!!! Em thấy bác chẳng có 1 bài viết nào có ít cả. Còn tự xưng ẩn danh lâu ngày nữa chứ =))
        Mình cũng nghĩ như bạn này, theo mình chẳng biết chẳng có gì đáng cười, đáng cười là những người không biết mà cho rằng mình biết cuối cùng chẳng biết gì, hoặc những người biết mà giữ khư khư chẳng giúp đỡ cho ai cả.
        Bạn đó mới học lớp 12 thôi những câu hỏi vậy âu cũng là bình thường. Cái gì cũng phải vậy, học từ những thứ đơn giản nhất.
        YM: Noname_vnatr.
        Project mã nguồn mở:
        Học điện tử online:

        Comment


        • #19
          Hi,
          Theo tui thì beginner cũng bắt đầu bằng C được, quan trọng là cấu trúc bên trong của VDK là phải biết và cần phải hiểu khi mình dùng một câu lệnh bất kỳ nào thì các thanh ghi, ngoại vi nó biến đổi như thế nào để khai thác chúng. Như kiểu học tin ngày xưa, học Pascal thì chỉ cần biết lệnh write là nó ghi ra màn hình dòng gì đấy vậy là được rồi đâu cần phải hiểu sâu hơn về máy tính đâu. ASM thì nó gần với tầm thấp nhất của VXL nên dễ hình dung sự biến đổi trong các thanh ghi qua từng câu lệnh hơn thôi. Tóm lại bắt đầu bằng ASM thì sẽ hiểu sâu hơn về phần cứng nhưng để khai thác thì bắt đầu bằng C vẫn không sao.
          Thân ái.
          Đường đến những ngày vinh quang không còn xa
          Con đường chúng ta... chúng ta đã chọn.

          Comment

          Về tác giả

          Collapse

          89c52 Tìm hiểu thêm về 89c52

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

          Collapse

          Đang tải...
          X