Thông báo

Collapse
No announcement yet.

Hướng dẫn làm quen với vi điều khiển 8051

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

  • Hướng dẫn làm quen với vi điều khiển 8051

    Hi all,

    Bắt đầu học kỹ thuật vi xử lý. ai cũng gặp khó khăn bởi rất khó hình dung ra các vấn đề vi cả về không gian và thời gian. Về không gian, đó là cả một hệ thống các mạch điện tử với hàng trăm triệu các phần tử được tích hợp trên một diện tích nhỏ bằng đầu ngón tay. Về thời gian, đó là các thao tác tính toán xử lý diễn ra chỉ trong micro giây, thậm chí là nano giây.

    Tôi có rất ít thời gian rảnh rỗi, nhưng tôi muốn tận dụng chút thời gian đó để đổi lấy khoảng thời gian lớn hơn nhiều và khá vất vả của các bạn mới học. Đó là lý do tôi viết một số tài liệu và hôm nay up lên diễn đàn. Tất nhiên sẽ vì nhiều lý do mà tài liệu không thể tránh khỏi sai sót (kể cả lỗi chính tả), tôi sẽ rất vui nếu nhận được phản hồi từ các thành viên.

    Dưới đây là một số tài liệu hướng dẫn làm quen với vi điều khiển 8051:

    - mô tả phần cứng.

    - cách sử dụng các ngoại vi onchip (cổng vào ra, timer, ngắt ...).

    - các chế độ địa chỉ và tập lệnh.

    - cấu trúc một chương trình hợp ngữ.

    - một số ví dụ về cách lập trình giải quyết một số bài toán đơn giản.

    Với những bạn còn lạ lẫm với kỹ thuật vi xử lý, các bạn có thể tham khảo tài liệu ở link dưới đây:
    http://dientuvietnam.net/forums/showthread.php?t=2962

    Mọi ý kiến đều được hoan nghênh.

    Thân mến,
    blackmoon
    Attached Files
    Last edited by blackmoon; 22-08-2006, 17:12.

  • #2
    làm phát này
    Attached Files
    SHARE KHO PHIM LỚN

    Comment


    • #3
      Còn nữa nè :
      TUT-8051 của Nguyễn tăng Cường, không biết UP lên có vi phạm bản quyền tác giả không ? (chắc có...hihi... )... nhưng mà không sao... cái này chủ íu là phục vụ cho các newbies mà... bác Cường chắc cũng thông cảm... vì sự phát triển chung của ngành Điện tử nước nhà... cứ coi như cúng "rằm tháng bảy vậy ..hihi... )
      Attached Files

      Comment


      • #4
        ... còn cái luận văn này là của bác Hard... xin phép bác cho em share cùng các newbies nhá
        Attached Files

        Comment


        • #5
          ... à mà quên... TUT-8051 của bác Nguyễn tăng Cường dùng dạng file*.doc (Font .VnTime) còn luận văn của bác Hard dùng Font VNI-Times...

          Comment


          • #6
            8051 for PRE-BEGINER

            Em xin hưởng ứng một bài cho các pre-beginer! Đây là những cái cơ bản nhất cho những người mới học 8051 lần đầu cũng như những người không rành về điện tử, đây cũng là tinh trạng của nhiều bạn, cũng như chính mình khi mới chập chững học VDK! Tut được minh họa hoàn toàn bằng hình ảnh!
            Rất mong nhận được ý kiến đóng góp của các bạn!
            Attached Files

            Comment


            • #7
              mạch quét led 7 thanh

              chao anh black moon
              cho em hỏi về quét led 7 thanh!
              em muon cho lan lượt từng led sáng.
              sau đó thì đếm thời gian
              cho led1 sáng tu 0 đến 9 rồi led1 nhay ve 0
              đồng thời thì led 2 nhảy lên 1, lần lượt nhế.Như chúng ta đếm thời gian o nhà vây?
              anh chi cho em voi bang asembly nếu được =c thi tốt hơn.vi asembly em không biết mấy a!

              Comment


              • #8
                cam on anh rat nhieu.
                anh co the cung cap them cho em ve kien thuc ma tran LED de em co kien thuc lam viec voi mach nay
                em du dinh lam mot mach hien chu don gian. bac nao da lam roi thi xin hay tu van giup em
                xin chan thanh cam on

                Comment


                • #9
                  có bạn biết có thể cho mình biết : để viết chương trình .asm cho 89c51 sử dụng MACRO thi cách khai báo như thế nào có thể dùng ASM51 để dịch qua .lts và .hex .Mong sự chỉ giáo của các bạn

                  Comment


                  • #10
                    Nguyên văn bởi phamkhuyen Xem bài viết
                    có bạn biết có thể cho mình biết : để viết chương trình .asm cho 89c51 sử dụng MACRO thi cách khai báo như thế nào có thể dùng ASM51 để dịch qua .lts và .hex .Mong sự chỉ giáo của các bạn
                    Code:
                    ;------------- Định nghĩa Macro So sánh bằng
                    	%*DEFINE	(PH_EQU (BD, BN, BKQ)) 
                    			LOCAL B_L1
                    		(	CLR	%BKQ
                    			MOV	SC1, C
                    			MOV	SA1, A
                    			MOV	A, %BD
                    			CJNE	A, %BN, %B_L1
                    			SETB	%BKQ
                    		%B_L1:
                    			MOV	A, SA1
                    			MOV	C, SC1
                    		)
                    Gọi hàm
                    SELECT:
                    	%PH_EQU (SELED, #1, MNFL)	;
                    	JNB	MNFL, SEL_L1		;
                    	MOV	SELED, #2		;
                    	RET				;
                    SEL_L1:
                    	%PH_EQU (SELED, #2, MNFL)	;
                    	JNB	MNFL, SEL_L2		;
                    	MOV	SELED, #3		;
                    	RET				;
                    SEL_L2:
                    	MOV	SELED, #1		;
                    
                    	RET
                    Chương trình đính kèm bên dưới. Đó là 1 chương trình đã chạy.
                    Chúc bạn thoả mãn!
                    hpecom
                    Last edited by VNarmy; 07-07-2007, 17:58.
                    Một bông hồng cho những ai đang còn mẹ,
                    Đang còn mẹ để lòng vui sướng hơn ..

                    Comment


                    • #11
                      Nguyên văn bởi phamkhuyen Xem bài viết
                      có bạn biết có thể cho mình biết : để viết chương trình .asm cho 89c51 sử dụng MACRO thi cách khai báo như thế nào có thể dùng ASM51 để dịch qua .lts và .hex .Mong sự chỉ giáo của các bạn
                      Thì ra là nó khoái file .rar
                      Attached Files
                      Một bông hồng cho những ai đang còn mẹ,
                      Đang còn mẹ để lòng vui sướng hơn ..

                      Comment


                      • #12
                        Không biết up file lên thế nao đây!
                        Attached Files

                        Comment


                        • #13
                          Chào các bạn. Tôi cũng mới làm quen với VDK . Xin hỏi các bạn một chút mong mọi người giúp đỡ.
                          Bình thường nếu viết chương trình đồng hồ cho 89C51. Thì mỗi time cho một ĐH (time0 cho 1 cái, time1 cho 1 cái). Nhưng nếu chỉ dùng 1 time (tức chỉ dùng 1 bộ định thời )để chạy 2 ĐH ví dụ: 1 cái đếm từ 0-> 20ph thì dùng tiếp đó cái thứ 2 đếm từ 0-> 25ph thì dừng toàn bộ,cho hiển thị trên LCD là:
                          20 Min 25 Min
                          thì có được không? Tôi đã làm được với 1 ĐH. Còn nếu 2 cái thì nó đếm song song và dừng đồng thời luôn. Nếu làm được như trên có thể tiết kiệm được 1 time để dùng tạo xung hoặc làm bộ đếm sự kiện.
                          Địa chỉ của tôi: viethungrrc@yahoo.com

                          Comment


                          • #14
                            Chào viethung!

                            Bạn làm như sau:
                            _ Dùng Timer0 làm bộ timer chuẩn: Trong ngắt Timer0 bạn đếm, cho đến khi đủ 1 giây thì gọi Hàm xử lý các biến thời gian.
                            _ Trong Hàm xử lý các biến thời gian: Thực hiện tăng các biến định thời.
                            _ Trong chương trình chính: kiểm tra giá trị các biến định thời, biến nào đạt giá trị thì thi hành tác vụ của biến đó.

                            Tóm lại: Timer0 chạy làm xung gõ chuẩn, Dùng các biến làm timer.
                            Lưu ý: Các biến phải khai báo toàn cục.

                            Tôi đã viết bộ Timer 9 kênh chỉ dùng 1 con AT89C51, nhưng chương trình viết bằng ASM. Trong chương trình còn quét phím và quét LED và sắp xếp các kênh timer, kênh nào sắp hoàn tất sẽ nằm chờ trên LED. Nếu bạn cần mình sẽ up lên tham khảo, nhưng cái schematic bị thất lạc rồi.

                            Chúc bạn thành công!
                            hpecom.
                            Một bông hồng cho những ai đang còn mẹ,
                            Đang còn mẹ để lòng vui sướng hơn ..

                            Comment


                            • #15
                              Cảm ơn bạn HPECOM tôi cũng đã làm được rồi .Xin Post đoạn code lên để các bạn khác tham khảo & góp ý:
                              Code:
                                           ORG  00H
                              ....................
                              MAIN:
                              	MOV  12H,#0
                              	MOV  15H,#0
                              ............
                              NGAT_TIME_0:
                                   	CLR  TR0
                                   	DEC  26H
                                   	MOV  A ,26H
                                   	CJNE A ,#0 ,EXIT
                                   	MOV  26H ,#8
                              	LCALL  DEM
                              EXIT:	
                                   	SETB TR0
                                   	RETI
                              DEM:
                              	MOV  A,12H
                              	CJNE  A,#20,DEM_THOI_GIAN_A        ;SAU KHI ĐẾM ĐỦ 20 PH SẼ TỰ ĐỘNG -> DEM_THOI_GIAN_B
                              	JNC  DEM_2
                              	RET
                              DEM_2:
                              	MOV  A,15H
                              	CJNE  A,#25,DEM_THOI_GIAN_B   ;ĐẾM HẾT B TỰ ĐỌNG DỪNG
                              	LCALL  DUNG
                              	RET 
                              DEM_THOI_GIAN_A:
                              ..............
                              ..............
                              	RET
                              DEM_THOI_GIAN_B:
                              ..............
                              ..............
                              	RET
                              ..............
                              	END
                              Last edited by VNarmy; 07-07-2007, 17:59.

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X