Mua bán máy hàn điện tử chất lượng tại Nha trang và sửa máy hàn điện tử ở Nha trang, sửa chữa máy hàn điên tử CO2 MIG MAG, TIG, Plasma tại khánh hòa, sửa chữa máy hàn điên tử CO2 MIG MAG, TIG, Plasma ở khánh hòa, mua máy hàn điên tử cũ CO2 MIG MAG, TIG, Plasma ở khánh hòa.Sửa đồ điện gia dụng tận nhà ở khánh hòa, | Kỹ thuật Khánh Hoà #congnghieptudong, #chiasehuuich, #chiasekinhnghiem, #dientu, #daihoc, #caodang, #trungcap, #hocnghedien, #meovathay, #meovat, #diencongnghiep, #tudonghoa,

Saturday, May 3, 2014

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

IC vi điều khiển là gì?
Trước hết hãy làm quen với khái niệm điều khiển trong ngành điện tử. Điều khiển là dùng mức áp cao  hay thấp để đóng mở một thiết bị. Bạn xem thí dụ sau:
Trong hình này, Bạn thấy khi chân B của transistor Q1 cho đặt ở mức volt thấp, thì transistor ở trạng thái ngưng dẫn và không có dòng cấp cho Led. Led sẽ tắt.

Trong hình này, Bạn thấy khi chân B của transistor Q1 cho đặt ở mức volt cao thì transistor ở trạng thái bão hòa và có dòng cấp cho Led. Led sẽ sáng.
Với hình động chúng ta thấy rõ hơn tác nhân điều khiển, tức bit 0 hay bit 1 trên chân B, làm Led lúc tắt lúc sáng. Bạn xem hình.
Qua hai hình này có thể thấy, chúng ta có thể dùng mức volt cao thấp để tắt mở một thiết bị, ở đây là tắt mở Led. Chúng ta tạm chấp nhận định nghĩa sau:
* Mức volt thấp là bit 0.
* Mức volt cao là bit 1.
Vậy có thể nói để cho Led sáng, chúng ta dùng bit 1 và làm cho Led tắt chúng ta dùng bit 0. Trong tác động điều khiển đóng mở, chúng ta có thể đóng mở một Relay, đóng mở điện cho một motor DC. Bạn xem hình:
Trong hình này, trên chân C của transistor Q1, chúng ta thấy có:
* Led chiếu sáng.
* Relay 12V với tiếp điểm lá kim K1.
* Motor DC 12V
Vậy nếu đặt bit 1 trên chân B các thiết bị trên chân C của Q1 sẽ được cấp dòng và nếu dùng bit 0 trên chân B thì các thiết bị trên chân C sẽ bị cắt dòng. Qua các thí dụ trên, chúng ta thấy nếu có một linh kiện điện tử có thể xuất ra mức volt cao hay mức volt thấp theo câu lệnh do chúng ta soạn ra thì lúc đó chúng ta đã có thể điều khiển các thiết bị bằng câu lệnh. IC vi điều khiển có các cảng (port), ở các chân của cảng có thể xuất nhập mức áp cao hay thấp tùy theo các câu lệnh do chúng ta soạn ra, do đó nếu dùng ic vi điều khiển chúng ta sẽ có thể điều khiển nhiều thiết bị theo câu lệnh.
Hình vẽ sau đây cho thấy 4 cảng của ic vi điều khiển AT89C51.
Bạn biết mức volt trên các chân của mỗi cảng Bạn đều có thể chọn định ở mức volt cao hay mức volt thấp bằng câu lệnh.
Lệnh đặt chân lên mức volt cao là setb (set bit). Lệnh đặt chân xuống mức volt thấp là clr (Clear bit).
Thí dụ: Bạn muốn chân p1.0 (chân số 1) lên mức volt cao, Bạn gõ câu lệnh như sau:
setb p1.0
Bạn muốn chân p1.1 (chân số 2) xuống mức volt thấp. Bạn gõ câu lệnh như sau:
clr p1.1
Qua phần trình bày trên, tôi nghĩ Bạn đã hiểu điều khiển các thiết bị bằng câu lệnh là gì? và nó làm việc ra sao?
Hãy xem hình sau:
Trong mạch, R1 (4.7K) là điện trở hạn dòng chân B và diode D2 dùng dập điện áp nghịch, xuất hiện mỗi khi relay bị cắt dòng. Hình vẽ cho Bạn thấy chúng ta đã dùng câu lệnh để tắt mở Q1 và dùng relay 12V với tiếp điểm lá kim K1 để đóng mở các thiết bị volt cao khác (như motor công nghiệp, máy bơm…) theo câu lệnh.
 Một lệnh khác, lệnh mov (move) có thể cùng một lúc xác định trạng thái bit cho 8 chân của một cảng. Thí dụ: Cách dùng lệnh move qua các hình vẽ như sau:
Muốn có dòng cấp cho Led Bạn phải cho chân nối với Led xuống mức volt thấp với bit 0. Và muốn tắt Led Bạn dùng bit 1. Vậy với câu lệnh:
mov p3, #01010011b
Bạn nhìn vào hình sẽ thấy các Led ứng với chân có mức volt thấp phát sáng.
Để tắt hết 8 Led trên p3. Bạn dùng câu lệnh:
mov p3, #11111111b

Để 8 Led trên p3 sáng hết. Bạn dùng câu lệnh:
mov p3, #00000000b
Có thể dùng nhiều cảng để điều khiển các Led trên bảng Led ma trận. Bạn xem hình:
Hình cho thấy muốn Led D1 sáng, Bạn phải dùng câu lệnh:
clr p3.1 ;
Lệnh này đặt chân p3.1 xuống mức volt thấp và làm transistor Q1 bão hòa, cùng lúc Bạn dùng câu lệnh:
setb p1.1 ;
Lệnh này đặt chân p1.1 lên mức volt cao và làm transistor Q3 bão hòa, như vậy sẽ có dòng cấp cho Led D1. Led D1 sẽ phát sáng, trong khi đó các Led còn lại không đủ điều kiện để sáng. Bằng cách dùng các câu lệnh thích hợp, Bạn có thể tạo ra các con chữ và cả hình ảnh hiện trên bảng đèn ma trận Led 8×8, như hình sau:

Hình trên cho thấy bảng đèn Led ma trận 8×8 dùng làm bảng quang báo, với ic vi điều khiển AT89C51 dó có 4 cảng nên Bạn có thể dùng nó để điều khiển trực tiếp 3 ma trận 8×8 và làm được bảng đèn quang báo đơn giản. Chúng ta sẽ có một bài khác chuyên nói về vấn đề này.
Ngoài ra Bạn có thể dùng lệnh nhẩy (có điêu kiện hay không điều kiện) để theo dõi các trạng thái bit trên các chân của các cảng. Như thí dụ sau:
Trong hình, dùng nút nhấn BP, chúng ta sẽ dùng câu lệnh nhảy để nhẩy theo điều kiện bit 1 hay bit 0 trên chân p0.0. Bạn thấy bình thường với điện trở treo áp R1 (10K) và nút nhấn ở trạng thái hở (chưa nhấn xuống), chân p0.0 sẽ ở mức áp cao, vậy với câu lệnh (jump no bit):
jnb p0.0, $  ;
Câu lệnh này có nghĩa là nếu chân p0.0 ở mức áp thấp thì dừng lại ở đây và chờ đến khi nó chuyển qua bit 1. Nếu chân p0.0 ở mức áp cao tức bit 1 thì câu lệnh này không có tác dụng. Nhưng nếu Bạn nhấn nút BP xuống thì sao? Lúc đó chân p0.0 sẽ ở mức áp thấp (tức bit 0), lúc đó với câu lệnh nhẩy: (jnb p0.0, $) chương trình sẽ dừng lại chờ cho đến lúc Bạn bỏ phím, khi Bạn bỏ phím nó sẽ xuống chấp hành câu lệnh tiếp theo, đó là:
jmp chtrinh_1  ;
Đây là lệnh nhẩy không điều kiện, nó sẽ nhẩy ngay đến chương trình con có tên nhãn là chtr_1 (viết tắt của chương trình_1) và chấp hành chương trình con này.
Bạn cũng có thể dùng ic vi điều khiển kết hợp với đủ loại cảm biến (sensor,  như cảm biết quang, cảm biến nhiệt, cảm biến mức ẩm…) để tạo ra các thiết bị điều khiển tự động theo các tác nhân không thuộc điện. Một thí dụ, Bạn xem hình trên:
Chúng ta dùng một quang trở (SCd) để dò sáng. Bạn biết, khi trời tối, nội trở của quang trở rất lớn, vậy transistor Q1 sẽ ở trạng thái bão hòa, nó đặt chân p0.7 ở mức volt thấp (tức ở bit 0), với câu lệnh nhẩy theo điều kiện bit viết như sau:
jnb p0.7, $  ;
thì chương trình sẽ dừng lại ở câu lệnh này. Vì sao? Vì lúc này chân p0.7 đang ở trạng thái bit 0. Nếu trời sáng, nội trở của quang trở sẽ nhỏ và nó sẽ làm ngưng dẫn transistor Q1, vậy lúc này chân p0.7 sẽ lên mức volt cao (bit 1), chương trình sẽ thoát ra câu lệnh jnb p0.7, $ và xuống thực hiện câu lệnh kế bên dưới. Do câu lệnh tiếp theo của Bạn viết là:
jmp b_sáng  ;
Nên chương trình sẽ nhẩy không điều kiện đến chương trình con có tên nhãn là b_sang (viết tắt của chữ báo sáng).
Bạn cũng có thể dùng lệnh nhẩy theo phép so sánh trạng thái của 8 bit  trên cảng để tạo ra các chương trình điều khiển hấp dẫn hơn. Bạn xem hình minh họa sau:
Trong hình này, chúng ta dùng lệnh nhẩy có điều kiện và dùng phép so sánh để xác định nơi đến. Bạn thấy với câu lệnh:
cjne p2, #01011011b, chtr_1
jmp t_tuc
Trạng thái 8 bit này không giống với trạng thái 8 bit hiện đang có trên cảng 2 (8 bit hiện có trên cảng 2 là 11011010b), vậy nó sẽ nhẩy đến chấp hành chương trình con có tên nhãn là chtr_1 (viết tắt của chữ chương trình_1). Nếu 8 bit dùng trong phép so sánh giống nhau thì sao? Chương trình sẽ xuống dòng lệnh bên dưới và sẽ nhẩy đến chấp hành chương trình con có tên nhãn là  t_tuc (viết tắt của chữ tiếp_tục)
Qua phần trình bày trên, Bạn thấy ic AT89C51 có 4 cảng 4×8 (32 chân), trạng thái mức volt cao hay thấp trên các chân này có thể điều khiển theo các câu lệnh. Vậy vấn đề của chúng ta là phải hiểu rõ các câu lệnh dùng để xác định trạng thái trên các chân của 4 cảng sao cho phù hợp với ý muốn của mình. Và ic AT89C51 là một trong các ic vi điều khiển rất đơn giản, hiện nay rất phổ dụng.
Thế nào là ic làm việc theo các câu lệnh?
Qua phần trình bày trên, Bạn thấy với ic AT89C51, trạng thái mức volt cao hay thấp trên các chân của 4 cảng hoàn toàn chấp hành theo các câu lệnh do Bạn đã viết ra. Hiện nay có rất nhiều ic thuộc loại này, người ta nói đó là các ic lập trình, hay là loại ic vi điều khiển hay cao hơn là các ic vi xử lý. Với các ic logic  TTL họ 74xxx hay họ CMOS 40xx thì các công năng đã cố định, các ic này không làm việc theo các câu lệnh nên tính linh động không cao và thường có cấu trúc phần cứng rất phức tạp, hiện nay nó thường chỉ dùng  làm các linh kiện phụ trợ cho các ic vi điều khiển.
Có thể nói, khi có một ic vi điều khiển, Bạn cần xác định các chân cố hữu của nó, các chân này dùng vận hành ic và các chân của các cảng dùng chấp hành các câu lệnh. Tất cả các mạch điện chịu điều khiển đều thông qua các chân của các cảng. Theo trục phát triển, trước hết chúng ta có nhóm ic vi điều khiển họ MSC-51 như nhóm AT89C51, phát triển hơn là nhóm PIC, rồi AVR và rồi ARM…, nhưng với các Bạn mới làm quen với loại ic lập trình, Bạn nên khởi đầu từ các ic vi điều khiển thuộc nhóm MSC-51, như AT89C51…Vì các ic này rất trực quan, dễ học dễ dùng, dĩ nhiên dễ kiếm được tiền hơn.
Để dùng ic AT89C51 (40 chân) cho công việc điều khiển của Bạn, Bạn chỉ cần ráp một mạch điện cơ bản như hình vẽ sau:
Giải thích mạch điện: Hình vẽ cho thấy, với ic vi điều khiển lập trình, làm việc theo câu lệnh, nó dùng số linh kiện ngoại vi rất ít. Ở đây trên chân 18, 19 gắn thạch anh định tần, nếu dùng thạch anh có tần số 12MHz thì chu kỳ thực hiện 1 lệnh sẽ là 1us. Chân số 9 cho nối với mạch reset, nó xác lập trạng thái khởi đầu khi chân 9 ở mức áp cao. Cấp nguồn với chân 20 cho nối masse và chân 40 cho nối với mức nguồn +5V.
Ở đây có 2 chú ý:
* Trên cảng p0 Bạn nhớ dùng 8 điện trở treo áp.
* Trên chân 31 cho nối vào mức áp 5V để xác nhận là chỉ chạy chương trình của bộ nhớ tron.
Để dùng ic AT89C2051 (20 chân) cho công việc điều khiển của Bạn, Bạn chỉ cần ráp một mạch điện cơ bản như hình vẽ sau:
Giải thích mạch điện: Hình vẽ cho thấy, với ic vi điều khiển lập trình, làm việc theo câu lệnh, nó dùng số linh kiện ngoại vi rất ít. Ở đây trên chân 4, 5 gắn thạch anh định tần, nếu dùng thạch anh có tần số 12MHz thì chu kỳ thực hiện 1 lệnh sẽ là 1us. Chân số 1 cho nối với mạch reset, nó xác lập trạng thái khởi đầu khi chân 1 ở mức áp cao. Cấp nguồn với chân 10 cho nối masse và chân 20 cho nối với mức nguồn +5V.
Ở đây có 1 chú ý:
* Trên cảng p3 thiếu chân p3.6.
Điều Bạn cần nhớ là mọi thiết bị điều khiển đều sẽ được cho kết nối với các chân của các cảng của ic vi điều khiển và Bạn điều khiển các thiết bị này bằng các câu lệnh do Bạn viết ra. Mọi việc chỉ có thể.
Chú ý: Nếu như mạch điện AT89C51 mà Bạn ráp không hoạt động như ý, Bạn hãy đo thử tín hiệu xung nhịp. Cách đo: lấy máy đo volt AC, nhớ cắm lổ OUT, trên lổ cắm này có tụ cách ly DC, rồi đo volt AC trên chân 18, nếu kim không lên là ic có vấn đề (thay thạch anh hay thay thử ic khác). Kim lên là có xung nhịp ( Bạn xem hình).

Câu lệnh được viết như thế nào?
Câu lệnh là các câu chữ dễ hiểu dễ nhớ, nhưng phải viết đúng cú pháp. Một file .asm thường có dạng thức như sau:
org 0000h
(gõ các câu lệnh, mỗi dòng chỉ gõ một câu lệnh…)
end
Trên mỗi dòng Bạn chỉ gõ có một câu lệnh duy nhất mà thôi. Khi chương trình chạy xong một câu lệnh sẽ xuống dòng thực hiện câu lệnh kế tiếp và cứ như vậy cho đến hết… Nếu nó gặp lệnh nhẩy thì sẽ nhẩy đến tên nhãn để chạy các chương trình con.
Một thí dụ: Bạn gõ các câu lệnh để 8 Led trên cảng p2 sáng lan lên rồi tắt dần xuống và qui trình trên được cho lập lại.
Chương trình nguồn sẽ gõ như sau: 
org 0000h
start:
mov p2, #11111111b
call delay
mov p2, #11111110b
call delay
mov p2, #11111100b
call delay
mov p2, #11111000b
call delay
mov p2, #11110000b
call delay
mov p2, #11100000b
call delay
mov p2, #11000000b
call delay
mov p2, #10000000b
call delay
mov p2, #00000000b
call delay
mov p2, #10000000b
call delay
mov p2, #11000000b
call delay
mov p2, #11100000b
call delay
mov p2, #11110000b
call delay
mov p2, #11111000b
call delay
mov p2, #11111100b
call delay
mov p2, #11111110b
call delay
jmp start
delay:
mov r7, #20
v6: mov r6, #50
v5: mov r5, #200
djnz r5, $
djnz r6, v5
djnz r7, v6
ret
end

Sau khi dịch ra mã 16, chúng ta có file .hex với nội dung như sau: 
:1000000075A0FF12006275A0FE12006275A0FC12BE
:10001000006275A0F812006275A0F012006275A06F
:10002000E012006275A0C012006275A0801200622A
:1000300075A00012006275A08012006275A0C01247
:10004000006275A0E012006275A0F012006275A057
:10005000F812006275A0FC12006275A0FE12006228
:0F006000809E7F147E327DC8DDFEDEFADFF62241
:00000001FF
 Bạn cho nạp các mã lệnh dạng 16 này vào bộ nhớ EEP-ROM của ic vi điều khiển AT89C51, và cấp điện cho mạch, Bạn thấy gì? 8 Led trên cảng p2 sẽ có biến đổi như hình sau:
Giải thích từng câu lệnh trong file nguồn trên:

org 0000h    ; Khởi đầu từ thanh ghi reset.
start:             ; tên nhãn được dùng cho lệnh nhảy.
mov p2, #11111111b    ; đặt 8 bit của p2 đều ở mức volt cao, nên 8 Led đều tắt.
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11111110b    ; cho Led trên chân p2.0 sáng, (nó sáng với bit 0, tức mức volt thấp)
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11111100b    ; cho Led trên chân p2.0, p2.1 sáng
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11111000b    ; cho Led trên chân p2.0, p2.1, p2.2 sáng
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11110000b   ; cho Led trên chân p2.0, p2.1, p2.2, p2.3 sáng
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11100000b    ; cho Led trên chân p2.0, p2.1, p2.2 , p2.3, p2.4 sáng
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11000000b    ; cho Led trên chân p2.0, p2.1, p2.2 , p2.3, p2.4, p2.5 sáng
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #10000000b    ; cho Led trên chân p2.0, p2.1, p2.2 , p2.3, p2.4, p2.5, p2.6 sáng
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #00000000b    ; cho 8 Led sáng hết.
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #10000000b    ; cho Led p2.7 tắt (tắt với bit 1, tức mức volt cao)
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11000000b    ; cho Led p2.7, p2,6  tắt
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11100000b    ; cho Led p2.7, p2,6, p2.5  tắt
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11110000b     ; cho Led p2.7, p2,6, p2.5, p2.4  tắt
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11111000b     ; cho Led p2.7, p2,6, p2.5, p2.4, p2.3  tắt
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11111100b     ; cho Led p2.7, p2,6, p2.5, p2.4, p2.3, p2.2  tắt
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
mov p2, #11111110b     cho Led p2.7, p2,6, p2.5, p2.4, p2.3, p2.2, p2.1  tắt
call delay                         ; cho gọi chương trình con dùng làm trễ, có tên nhãn là delay.
jmp start                          ; nhẩy không điều kiện về tên nhãn start, tức cho bắt đầu lại.
delay:       ; tên nhãn dùng cho lệnh nhẩy, ở đây chúng ta dùng lệnh call.
mov r7, #20       ; nạp trị thập phân 20 cho thanh ghi r7.
v6: mov r6, #50       ; nạp trị thập phân 50 cho thanh ghi r6.
v5: mov r5, #200     ; nạp trị thập phân 200 cho thanh ghi r5.
djnz r5, $            ; cho trị có trong r5, giảm theo bước -1, chờ cho đến khi bằng 0.
djnz r6, v5          ; cho trị trong r6 giảm theo bước -1, nếu chưa bằng 0, nhẩy đến v5.
djnz r7, v6          ; cho trị trong r7 giảm theo bước -1, nếu chưa bằng 0, nhẩy đến v6.
ret                       ; quay lại thực hiện dòng lệnh sau lệnh gọi call.
end                           ; dừng chương trình biên dịch tại đây.

 Tôi nghĩ nếu chịu khó đọc đến đây chắc Bạn cũng hiểu được phần nào cách dùng ic vi điều khiển AT89C51 và Bạn sẽ hỏi với AT89C51, chúng ta có các câu lệnh nào? Ý nghĩ của các câu lệnh ra sao? và cách dùng của từng câu lệnh?
 Sau đây chúng ta sẽ lần lượt tìm hiểu các câu lệnh thường dùng trong nhóm 254 câu lệnh của AT89C51. Các câu lệnh chia ra làm 5 nhóm.
Nhóm 1: Các câu lệnh liên quan đến số học:

NHóm 2: Các câu lệnh liên quan đến logic:


Nhóm 3: Các câu lệnh liên quan đến chuyển dữ liệu:


Nhóm 4: Các câu lệnh liên quan đến biến Bun (Boolean):


Nhóm 5: Các câu lệnh liên quan đến nhẩy:



Trên đây là các câu lệnh được dùng để viết các chương trình nguồn cho ic vi điều khiển AT89C51. Mỗi câu lệnh tương ứng với mã Code 16  ghi ở đầu dòng (khi nạp vào ic luôn sẽ dùng mã nhị phân). Bạn hãy dùng các câu lệnh này để viết chương trình theo ý tưởng riêng của Bạn, cho đổi ra mã nhị phân và dùng hộp nạp, nạp các dòng mã này vào nằm trong bộ nhớ EEP-ROM của ic vi điều khiển AT89C51 là xong.

Giải thích bằng một thí dụ:

org 0000h
mov p1, #11110000b
mov r7, #100
mov a, #0ffh
mov a, r7
end

Sau khi cho dịch đoạn chương trình trên ra mã Code 16, Bạn có kết quả như sau:

:080000007590F07F6474FFEFBE
:00000001FF

Nhìn vào các đoạn mã (viết theo hệ 16) này Bạn sẽ thấy:

:08000000—7590F0—7F64—74FF—EFBE
:00000001FF

:08000000 (mã địa chỉ)

7590F0  được hiểu như sau:
(mov data addr, #data, cần 3 byte),
Con số 75 là lệnh mov (trị địa chỉ), số 90h là trị địa chỉ của cảng p1 và số F0 là trị của 11110000b

7F64 được hiểu như sau:
(mov r7, #data, cần 2 byte)
Con số 7F là lệnh mov r7, #data, con số 64h là trị hệ 16 của con số 100 (trị thập phân).

74FF được hiểu như sau:
(mov a, #data, cần 2 byte)
Con số 74 là lệnh mov a, #data, con số FFh là trị hằng.

EFBE được hiểu như sau:
(mov a, r7, chỉ cần 1 byte)
Con số EFBE là mã của lệnh: mov a, r7.
:00000001FF Đoạn kết thúc.
Qua thí dụ trên Bạn thấy mỗi câu lệnh nó có mã Code riêng của nó, trình biên dịch sẽ dịch các câu lệnh này ra dạng mã tương ứng. Nói chung Bạn cũng không cần để ý đến các mã Code của câu lệnh làm gì, Bạn hãy học cách dùng các câu lệnh trên để viết ra các chương trình nguồn cho đúng với ý tưởng của Bạn là được. Cách viết các câu lệnh rất đơn giản, cứ theo đúng cú pháp mà gõ, mỗi lệnh trên một dòng, các chú thích nếu có phải đặt sau dấu “;”. Với trị có thể dùng số hệ thập lục phân (hệ đếm 16), hay hệ thập phân, hay hệ nhị phân đều được.
Ghi nhận của chúng tôi: Bạn không cần biết hết 254 lệnh, nhưng với các lệnh thường dùng thì phải hiểu cho thật rõ, cố gắng viết các chương trình nguồn ít tốn hao bộ nhớ, trình tự chương trình nên phân minh, dễ đọc, dễ thêm bớt, dễ sửa. Viết trước các đoạn chương trình con thường dùng để khi cần thì chỉ việc chọn và cắt dán vào chương trình đang soạn, làm vậy sẽ ít tốn thời gian và tránh được lỗi. Viết các chương trình nguồn, công việc nhìn giống như chơi cờ tướng, ai cũng chỉ có bấy nhiêu lệnh mà thôi, nhưng có người cao cờ giải quyết vấn đề theo cách khác, người thấp cờ thì giải quyết theo cách khác. Thời gian chơi nhiều, làm nhiều Bạn cũng sẽ trở thành cao thủ lập trình thôi.
Muốn làm thực hành với các ic vi điều khiển, cần gì?

Đó là câu hỏi nhiều Bạn thường hỏi tôi. Theo tôi, Bạn cần có các thứ sau đây:
(1) Một hộp nạp file mã lệnh (file có họ .hex) vào bộ nhớ của các ic vi điều khiển.
(2) Cần biết dùng một máy tính và nên tìm một phần mềm soạn thảo để gõ chương trình nguồn và nó làm được công việc biên dịch ra file mã (file có họ .hex).
(3) Một bo thực hành cơ bản với ic vi điều khiển AT89C51 và nhiều mạch điện ứng dụng ngoại vi.
Chúng ta sẽ thử nói đến các vấn đề này
 Làm thực hành với bộ Kit lập trình đa năng
Giới thiệu bộ Kit thực hành với IC AT89C51. Hình chụp toàn phần cho thấy: Muốn tự học lập trình cho IC vi điều khiển AT89C51, tốt nhất Bạn vừa tìm hiểu câu lệnh vừa làm thực hành. Như vậy, Bạn hãy có trong tay bo thực hành đa năng này và một hộp nạp chương trình, dùng nạp file .hex vào bộ nhớ EEP-ROM trong ic vi điều khiển AT89C51. Trình tự làm thực hành thường như sau:
(1) Bạn tạo các kết nối giữa ic AT89C51 và các mạch điện chung quanh.
(2) Phát triển các ý tường và cụ thể hóa bằng cách viết ra file chương trình nguồn, với họ .asm.
(3) Dịch file nguồn có họ .asm ra file mã Code có họ là .hex
(4) Gắn ic AT89C51 vào bo thực hành, mở nguồn cấp điện để kiểm tra.



Hình chụp và sơ đồ mạch điện cho thấy:
IC vi điều khiển AT89C51 cho gắn trên một chân cấm 40 pin. Chung quanh IC trên 4 cảng là các port 0, port 1, port 2, port 3, mỗi port đều có dùng thêm một IC logic 74245 dùng làm tầng khuếch đại tín hiệu trên các đường xuất nhập của các cảng.
Một khóa điện tắt mở nguồn dùng để cấp điện cho mạch, mạch chạy với đường nguồn 5V.
Một khóa SW (DIP 4: 1, 2, 3, 4) dùng định hướng cho tín hiệu đi vào hoặc đi ra qua các IC 74245. Bo có 3 nút nhấn, một nút Reset (Key 3), 2 nút nhấn đặt trên chân 15 (Key 1, P3.2/T1) và chân 14 (Key 2, P3.3/T0). Trên mạch còn dùng một tụ điện 0.047uF và điện trở 100K và nút nhấn Reset dùng để xác lập lại trạng thái khởi đầu cho IC vi điều khiển AT89C51.
Sơ đồ mạch điện bộ phận vi điều khiển trung ương với IC AT89C51 như hình sau:
Mạch dùng một thạch anh 12MHz (gắn trên chân 18, chân 19) để định tần cho mạch dao động tạo xung nhịp, do trong ic AT89C51 có mạch chia tần 1/12, vậy trong ic AT89C51 có xung nhịp chính có tần số 1MHz (hay có chu kỳ lệnh là 1us). Trong mạch dùng 2 tụ điện nhỏ 33pF để bù nhiệt ổn tần.
Trong mạch còn dùng 3 thanh điện trở RN6, RN5, RN4 để treo (Pull up) cho các cảng p3, p2, p0 lên mức áp cao. Trị số các điện trở trong thanh đều lấy 10K.
Ngoài ra trên mạch còn cho gắn nhiều chân cấm dạng 8 bit dùng để tạo kết nối giữa bộ phận điều khiển trung ương với các mạch điện ngoại vi khác.
Nguyên lý vận hành của mạch điện như sau: Ngay khi Bạn nhấn nút mở điện, Led chỉ thị trong mạch sẽ phát sáng, lúc này mạch đã được cấp điện và bắt đầu cho chạy các chương trình đã có trong bộ nhớ EEP-ROM. Bạn có thể kiểm tra tác động của các chương trình thông qua các kết nối với các dạng mạch Test (cùng có trên bo thực hành) thông qua các cảng, p0, p1, p2, p3 của IC vi điều khiển AT89C51.
Ở bộ phận này, Bạn làm các phép đo kiểm tra như sau:
 * Dùng Volt kế DC đo kiểm tra mức áp +5V trên các chân 40 của U8 (AT89C51), trên chân 20 của các IC00 (74245), IC11 (74245), IC33 (74245), IC22 (74245).
* Dùng Volt kế AC (đủ nhậy) để kiểm tra tín hiệu dạng Sin trên chân 18, 19 của U8 (AT89C51), nếu thấy kim lên là mạch dao động có chạy.
 * Set các khóa điện S4 để chọn hướng đi của các tín hiệu qua các IC logic chọn đường 74245. Nếu cho chân 1 của các IC 74245 nối masse thì tín hiệu sẽ đi ra (từ IC AT89C51 đến các mạch bên ngoài) và nếu cho chân 1 lên mức áp cao thì hướng đi của tín hiệu sẽ đi từ ngoài vào IC AT8951.
Các mạch điện thực hành:
(1) Thực hành với 32 Led:
Hình chụp cho thấy: Trên Kit thực hành IC vi điều khiển AT89C51 có một dãy 32 Led, chia ra làm 4 nhóm, mỗi nhóm 8 Led. Tất cả các Led đều có chân cathode cho nối masse và ở mỗi Led đều có dùng điện trở hạn dòng 100 ohm.  Vậy các Led này sáng với mức áp cao.
Sơ đồ mạch điện cho thấy, Bạn có thể dùng bó dây 8 đường để kết nối các dãy Led với các cảng xuất nhập trên IC vi điều khiển AT89C51. Việc dùng Led để theo dõi trạng thái mức áp cao  (úng với bit 1)  và mức volt thấp (ứng với bit 0) trên các port của IC AT89C51 sẽ giúp cho chúng ta nhanh chóng biết được hoạt động của các chương trình đã nạp vào EEP-ROM  của AT89C51. Tên đặt cho các nhóm 8 Led là JP4, JP7, JP2 và JP3. Bạn hãy dùng bó dây cho nối các nhóm Led này vào các port của  AT89C51 và cho chạy thử các chương trình đã viết và đã nạp vào IC AT89C51. Hãy kiểm tra hoạt động của chương trình thông qua sự sáng tắt của các Led.

(2) Thực hành với các đèn số dùng Led 7 đoạn.




Bạn xem hình và sơ đồ mạch điện:
Hình chụp cho thấy trên bo Kit thực hành có gắn 8 bộ Led dùng làm các đèn hiện số theo dạng mã 7 đoạn (các đoạn đánh dấu a, b, c, d, e, f, g và dot).

Ở đây đèn số 7 đoạn dùng loại Led có cực anode chung. Để làm hiện các con số trong dãy 8 đèn số này,  mạch dùng tính tắt mở của các transistor pnp (2SA564). Các chân a, b, c, d, e, f, dot, là các chân cathode của các Led trong đèn số 7 đoạn, các chân này cho nối vào một trạm nối 8 bit với các điện trở hạn dòng. Ở đây có 2 bộ kết nối JP5 (dùng lấy tín hiệu giải mã con số) và bộ kết nối JP16 (dùng cấp mã quét cấp cho chân B của 8 transistor 2SA1015).
Trong mạch, chân chung anode ( chân Common) của các đèn số 7 đoạn được cho nối vào chân C của các transistor pnp 2SA564, trên chân B của các transistor này có điện trở hạn dòng 10K cho nối vào bộ chân cấm JP16. Từ bộ chân cấm 8 dây này Bạn sẽ cho kết nối với một cảng của IC vi điều khiển AT89C51 để nhận xung quét (để mỗi lần chỉ cho hiện một con số).
Các chân cấp dòng cho các cathode (a, b, c, d, e, f, dot) cho nối với bộ chân cấm JP5 qua các điện trở hạn dòng 220 ohm. Bộ chân cấm này cũng sẽ cho nối với một cảng (tùy chọn) trên IC vi điều khiển AT89C51 để cấp dòng cho các Led trong các đèn số để phát sáng.

(3) Thực hành với Led ma trận 8×8.











Bạn xem hình và sơ đồ mạch điện:
Ở đây dùng bảng ma trận Led 8×8 (trên bảng Led có 64 Led đỏ và 64 Led xanh) dùng để cho hiện ra các hình ảnh và con chữ và số. Vậy trên bảng ma trận này Bạn có thể tạo ra các hình ảnh tùy ý bằng các điểm sáng tắt của các Led (Led đỏ cho hình màu đỏ, Led xanh cho hình màu xanh và phối hợp Led đỏ, Led xanh sẽ có hình màu vàng).
Để tăng độ ổn định và độ sáng, trên mạch dùng thêm các ic khuếch đại ULN2803A. Trong ic ULN2803 là 8 mạch khuếch đại với các cặp transistor ráp theo kiểu darlington, nên ngả vào có trở kháng rất lớn và không gây nặng tải lên các đường ra trên các chân của các cảng, mạch khuếch đại còn dùng các diode hạn biên và diode ghim áp để tăng độ an toàn.
Nguyên lý làm việc của bảng đèn ma trận 8×8 như sau:
Khi chân số 24 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 1 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led đỏ ở cột 1.
Khi chân số 23 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 1 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 1.
Khi chân số 22 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 2 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led đỏ ở cột 2.
Khi chân số 20 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 2 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 2.
Khi chân số 18 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 3 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led đỏ ở cột 3.
Khi chân số 17 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 3 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 3.
Khi chân số 16 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 4 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác đinh trạng thái sáng tắt của 8 Led đỏ ở cột 4.
Khi chân số 15 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 4 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 4.
Khi chân số 1 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 5 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led đỏ ở cột 5.
Khi chân số 2 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 5 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 5.
Khi chân số 4 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 6 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led đỏ ở cột 6.
Khi chân số 5 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 6 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 6.
Khi chân số 7 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 7 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led đỏ ở cột 7.
Khi chân số 8 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 7 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 7.
Khi chân số 9 cho xuống mức áp thấp thì lúc này cathode của 8 Led đỏ ở cột 8 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led đỏ ở cột 8.
Khi chân số 10 cho xuống mức áp thấp thì lúc này cathode của 8 Led xanh ở cột 8 sẽ cho nối masse, lúc này 8 bit cho ra trên 8 chân 22, 19, 16, 13, 3, 6, 9, 12 sẽ xác định trạng thái sáng tắt của 8 Led xanh ở cột 8.
(4) Thực hành với bàn phím ma trận 4×4.


Trên bo test đặt 16 phím nhấn dùng ma trận 4×4, như vậy mạch dùng 8 dây. trong đó có 4 dây cho treo lên mức áp cao với một thanh điện trở. Sơ đồ mạch điện như hình vẽ:

mạch điện cho thấy, trên ma trận 4×4 có 16 phím nhấn. Ở đây Bạn có thể cho bộ kết nối J27 nối vào port 1. Bạn sẽ viết một chương trình để vận hành 16 phím này, Bạn có thể qui định một phím sẽ cho chạy một chương trình đã chọn định trước.
Bạn xem sơ đồ mạch điện:
Bạn dùng các đường trên các chân p1.0, p1.1, p1.2, p1.3 làm các hàng (row). Trong lập trình bàn phím, các hàng cho là ngả vào, vậy bình thường cho ở mức “0”. Dùng các chân p1.4, p1.5, p1.6 và p1.7 làm các cột (column). Trong lập trình bàn phím, các cột cho là ngả ra, vậy bình thường cho ở mức “1”.
Mã quét bàn phím sẽ cho tìm bit “0” trên các cột, chúng ta biết, khi có một phím nhấn xuống thì lúc này sẽ xuất hiện bit “0” trên các cột. Chương trình sẽ chuyển qua cho quét tìm phím nhấn, sau đó nhẩy đến chương trình con của phím và cho chạy chương trình này.
(5) Thực hành với khối biến đổi A/D.

Chúng ta biết, tín hiệu trong thế giới tự nhiên thường ở dạng analog (tín hiệu analog lấy mức volt để chỉ trạng thái khác nhau của tín hiệu), như nhiệt độ, sức gió, âm thanh…Trong khi đó, các ic vi điều khiển (cũng như các ic vi xử lý) chỉ làm việc với tín hiệu dạng số (digital, tín hiệu digital còn gọi là tín hiệu bit, nó lấy mức áp cao thấp để chỉ trạng thái khác nhau của tín hiệu). Bài thực hành này dùng chuyển đổi tín hiệu dạng analog (có trong thế giới tự nhiên) ra dạng digital (được dùng trong các mạch điện máy tính). Mạch  ADC dùng ic ADC0809.
Bạn xem sơ đồ mạch điện:
IC ADC0809 có 8 ngả vào trên các chân in0, in1, in2, in3, in4, in5, in6, in7. Việc xác định chân vào sẽ tùy theo cách đặt bit trên các chân a0, a1, a2.  Thí dụ: với a0=0, a1=0 và a2=0, Bạn đã chọn ngả vào là chân in0 (chân 26). Việc lấy mẫu chuyển mức áp dạng analog ở ngả vào ra dạng bit cho ra trên các chân d0, d1, d2, d3, d4, d5, d6, d7 (8 bit). Xung lấy mẫu đưa vào trên chân 10, nó được tạo ra với mạch dao động 7414 (IC05F), tần số xung lấy theo trị số R70 (1K) và tụ C4 (102), IC05E làm chức năng khuếch đại trigger. mức áp chuẩn dùng xác định độ phân giải sẽ tùy theo điện áp DC đưa vào trên chân 12 (+Reference) và trên chân 16 (-Reference).
Chân 22 (ALE, address latch enable) dùng chốt dữ liệu trong thanh ghi.
Chân 6 (Start) cho bắt đầu lấy mẫu.
Chân 7 (EOC, end of conversion), tín hiệu báo kết thúc qui trình chuyển đổi.
Chân 9 (OE, output enable), cho xuất dữ liệu 8 bit ra.

(6) Thực hành với khối biến đổi D/A.



Chúng ta biết các tín hiệu làm việc trong các ic vi điều khiển, vi xử lý đều để ở dạng bit, nghĩa là tín hiệu chỉ xác lập theo mức áp cao hay thấp, tín hiệu này được gọi là tín hiệu dạng digital. Trong khi đó, trong thế giới thật, chúng ta thường làm việc với các tín hiệu dạng analog. Do vậy, muốn sử dụng được các tín hiệu có trong các máy tính, chúng ta phải dùng mạch biến đổi tín hiệu, đổi dạng digital ra dạng analog. Ở đây, mạch thực hành gọi là mạch Analog output. Bạn xem sơ đồ mạch điện:
Mạch dùng ic DAC0808. Tín hiệu vào dạng digital trên các chân a1, a2, a3, a4, a5, a6, a7, a8. Tín hiệu này sau khi chuyển xong sẽ cho ra trên hai đường. Đường 4 (IOUT) và đường 2 (IOUT đảo). Tín hiệu ra trên chân 4 cho qua một tầng khuếch đại op-amp với ic LM741, sau cùng tín hiệu dạng analog sẽ cho ra trên chân 6 của LM741.
Mức áp chuẩn (Voltage reference) đưa vào trên chân 14 (Vr+) và chân 15 (Vr-). Chân số 16 mắc tụ bù 0.1uf. Loại mạch này cần nguồn nuôi hai dấu. V+ trên chân 13 và V- trên chân 3, Bạn cho cấp điện “5V trên chân cắm J32 và J31. Với ic LM741, Bạn cấp nguồn “5V trên chân JP29.

(7) Thực hành với khối khuếch đại đệm với ULN2803A.





Trên bo thực hành có trang bị mạch khuếch đại đệm dùng tăng công suất tín hiệu kết nối. Sơ đồ mạch điện như hình vẽ (Bạn xem hình chụp mạch khuếch đại đệm trên bo thực hành).
IC ULN2803A dùng khuếch đại tín hiệu ra cho các port của ic vi điều khiển AT89c51.
Sơ đồ đẳng hiệu của một tầng khuếch đại trong ic ULN2803Acho thấy: mạch dùng 2 transistor npn, ghép dạng phức hợp (còn gọi là ghép darlington). Tín hiệu lấy ra trên chân C của Q2, và chân C để hở nên ngả ra của tầng khuếch đại này có thể cho kết hợp với các loại tải Volt cao, như  relay 12V, motor  DC12V…người ta dùng các diode zener để ghim mức áp ngả vào, ngả ra. Các điện trở trên chân B-E có công dụng làm tăng độ ổn định nhiệt. Điện trở 2.7K dùng hạn dòng cho chân B, diode nối vào đường nguồn Vcc có tác dụng hạn biên, giữ cho mức áp trên chân C không lên cao hơn mức áp của nguồn.










Share:

Friday, May 2, 2014

Sửa chữa đồ điện gia dụng tại nhà ở khánh hòa

Trung tâm sửa chữa tận nhà 01E nhận sửa chữa các thiết bị điện gia dùng tại nhà . Nhận thiết kế thi công, lắp đặt, và sửa chữa hệ thống điện gia đình. Ngoài ra nhận mua các thiết bị cũ không sử dụng được, cung cấp các thiết bị mới với giá cả hợp lý, trong quá trình sử dụng nếu còn trong thời gian bảo hành được sửa chữa miễn phí hoặc thay mới nếu lỗi do nhà cung cấp.Trung tâm sửa chữa tận nhà 01E  giúp kiệm thời gian cho quý khách hàng mang lại những sản phẩm tốt giá cả vừa phải, bảo hành tận nơi .  Rất mong được ủng hộ của các quý khách hàng. 




+Hãy gọi điện cho chúng tôi:
      Phiếu công tác:

Share:

Sửa chữa mạch nguồn ATX

Một số điểm giúp các bạn định hướng sửa chữa dạng nguồn này:
1. Mạch Chỉnh lưu:
- Lỗi thường gặp là đứt cầu chì F1, chết Varistors Z1 và Z2, chết các cầu Diod D21..D24. Nguyên nhân chủ yếu là do gặt công tắc 115/220V sang 115V rồi cắm vô điện 220V. Hoặc có chạm tải ở ngỏ ra. Nên ta phải kiểm tra các ngỏ ra trước khi cấp điện cho mạch. Như ở bài phân tích, cuối mạch này có điện áp 300V là OK.

- Một số trường hợp cặp tụ lọc nguồn C5, C6 (hai tụ to đùng dể thấy nhất đó) bị khô hoặc phù sẽ làm cho nguồn không chạy hoặc chạy chậm chờn, tuột áp.
2. Mạch nguồn cấp trước:
- Khi một bộ nguồn không chạy, việc đầu tiên trước khi ta mở vỏ hộp nguồn là kiểm tra xem dây màu tím có 5V STB hay không? Nếu không là mạch nguồn cấp trước đã hư.

- Thường thì chết Q12 C3457, zener ZD2, Diod D28 đứt hoặc chạm, chết IC 78L05.

- Mạch này OK thì khi ta cắm điện là nó luôn luôn được chạy.

- Tuy nhiên dạng mạch cấp trước này ít thông dụng bằng lọai có OPTO và IC họ 431 (Sẽ đề cập ở bài viết khác).
3. Mạch công tắc (Còn gọi Power ON)
- Sau khi kiểm tra dây tím có 5V STB thì việc thứ hai cần làm là kiểm tra xem dây công tắc xanh lá cây có mức CAO (khoảng 2,5V ~ 5 V) hay không? Lưu ý là dây xanh lá chỉ cần có mức CAO (tức 2,5V ~ 5V) mà không cần thiết phải là 5V. Một số bạn kiểm tra thấy chưa đủ 5V thì lo đi sửa lỗi chổ này và loay hoay mãi.

- Mạch này chạy với điện áp và dòng thấp nên rất ít hư hỏng. Việc mất áp này rất ít xảy ra (Vì nó lấy từ nguồn 5V STB của dây tím mà). Lỗi thường gặp là có mức CAO nhưng kick nguồn không chạy. Lỗi này do các mạch ở phía sau như "Nguồn chính không chạy", có chạm tải bị "mạch Bảo vệ" ngăn không cho chạy.

- Nói tóm lại mạch này gần như không hư. Nếu kiểm tra mọi thứ đều bình thường mà kích nguồn không chạy thì thay thử IC điều xung TL494. Vì chân số 4 của IC sẽ quyết định việc chạy hay không chạy mà bị lỗi thì kick đến sáng IC cũng không chạy.
4. Mạch nguồn chính:
- Nguyên nhân hư hỏng chủ yếu vẫn là khu vực này. Lỗi thường gặp: chết cặp công suất nguồn Q1, Q2 2SC4242. Transistor này có dòng chịu đựng 7A, chịu áp 400V, công suất 400W. Có thể thay tương đương bằng E13005, E13007 có bán trên thị trường. Chạm các diod xung nắng điện ở ngỏ ra (thường là diod đôi hình dạng 3 chân như Transistor công suất) D18, D28, D83-004... đo đây là Diod xung nên chỉ thay bằng diod xung (tháo ra từ các nguồn khác) hoặc thay đúng Diod xung không thay bằng các diod nắng nguồn thông thường được. Chết IC điều xung TL494 ít nhưng vẫn thường xảy ra. Thường thấy các tụ lọc ngỏ ra bị khô hay phù có thể gây chập chờn không ổn định hoặc sụt áp.
* Lưu ý: Các Transistor công suất và diod xung nắng điện mạch này bị chạm sẽ gây đứt cầu chì và làm chết các diod nắng điện ở mạch chỉnh lưu.

5. Mạch ổn áp, Power Good, bảo vệ quá áp:
- Mạch ổn áp chỉ làm nhiệm vụ lấy mẫu áp ngã ra và đưa về cho IC điều xung TL494 để xử lý. Còn mạch Power Good và bảo vệ quá áp cũng lấy mẫu rồi cân đo đong đếm thông qua IC2 LM393 để quyết định có cho IC điều xung TL494 họat động hay không. Các mạch này chạy sai đa phần do một hoặc cả 2 IC bị lỗi.

Lời kết:
- Đa số các nguồn ATX trên thị trường đều tương tự mạch này, với IC điều xung TL494 (KA7500) ngòai ra còn dạng chạy với IC điều xung họ KA3842 với công suất là một MOSFET và một tụ lọc nguồn ngã vào (khác với dạng này là 2 Transistor và hai tụ lọc nguồn ngã vào). NGuồn cấp trước thì dạng chạy với OPTO và IC 431 thì nhiều hơn. Tôi sẽ tìm lại sơ đồ mạch nguồn ATX của lọai vừa nêu và có bài phân tích. Riêng các nguồn "máy hiệu" như DELL, Compaq... sẽ có bài viết riêng vì nó hơi khác chút xíu.


Share:

Thursday, May 1, 2014

Sửa chữa vợt muỗi đơn giản mà hiệu quả - Kỹ thuật khánh hòa

Nhiều lần định hướng dẫn anh em sửa cái này nhưng lười quá nên chưa post được. Thật ra cái vợt muỗi sửa không khó nhưng có thể ra khá nhiều pan bệnh chứ không phải chỉ dập khuôn vài bệnh . 
Vậy khó ở đâu??? Thứ nhất linh kiện như biến áp, tranzitor , tụ đúng số không có.... 
Giải pháp mình sẽ hướng dẫn chi tiết từ sơ đồ nguyên lý tới các linh kiện có thể thay thế rất sẵn có.

Hôm nay lang thang trên mang vớ được bài viết của một bác viết ở kythuatphancung khá đầy đủ nhưng một số cái vẫn còn rất máy móc nên mình xin post lại và bổ xung thêm .

Nội dung bài viết đó như sau:
------------
Từ khi có cái vợt diêt muỗi thì khoái thật, thấy là xong, không em nào thoát. 
Dân điện tử - tin học chuyên cày đêm nên ghét muỗi nhất trên đời, lại càng khoái cái dụng cụ này.
Nhà nhà vợt muỗi, có nhà đến 2-3 cái vợt, phải nổ tanh tách liên tục hàng đêm nên cũng chóng hỏng. 
Khổ nỗi, đồ rẽ tiền nên có mấy anh thợ nhận sửa cái món này đâu. Vậy thì:
1. Hư cái nào sắm lại cái đó, không vấn đề gì.
2. Phải tự ra tay thôi, dân điện tử mà! 

Riêng mình thấy cái vợt muỗi là dụng cụ rẽ tiền mà hiệu quả. 
Về điện tử, nó là một mạch điện tử mini mà lý thú đấy, hiệu suất cao. Rất đáng được dân điện tử nghiệp dư bỏ chút thời gian ngâm cứu, nhất là các bác có cảm hứng với bộ nguồn xung. Vợt muỗi là họ hàng của nguồn xung mà ! 

SƠ ĐỒ VỢT MUỖI
vot-muoi-1


A/NGUYÊN LÝ
1. Nguồn: Điện lưới 220v được hạ áp đơn giản bằng tụ điện 1000nF sau đó nắn lọc qua cầu diode, sạc cho Pin 4 vol. Điện trở 390k xả điện cho tụ (có loại xài 860nF // 680K)
2. Mạch dao động: Tương tự nguồn cấp trước của bộ nguồn ATX, dùng mạch dao động nghẹt, tuy nhiên ở đây chỉ cần lấy điện áp ra, không cần ổn áp và cách ly nên mạch chỉ có 1 transitor (thường là D965 hoặc D882). BA gồm cuộn sơ cấp L1, cuộn hồi tiếp L2 tạo dao động, cuộn thứ cấp L3 lấy điện áp ra sau biến áp (xem thêm điện tử căn bản). 
3. Mạch nhân điện áp ngõ ra: Nhân 4 điện áp thứ cấp U ra trên 2 đầu cuộn L3. Gồm 2 mạch nhân đôi ghép song song. 
- Mạch nhân đôi thứ nhất gồm C1, D1, C2, D2 như sau:
+ Khi đầu A dương, D1 nạp cho C1, điện áp nạp U 
+ Khi đầu A âm, D2 nạp cho tụ C2, điện áp nạp = điện áp thứ cấp + điện áp trên C1 = U + U = 2U
- Mạch nhân đôi thứ hai ghép song song gồm C3, D3, C4, D4. Tương tự ta có C4 cũng được nạp điện áp 2U
- Cuối cùng tụ ra C5 có điện áp tổng = UC2 + UC4 = 4U. Hai đầu tụ C5 nối với lưới cao áp.
4. Đóng mở: Sau khi đóng khoá an toàn K1, mõi lần nhấn K2 thì mạch được nối thông masse với âm nguồn, mạch dao động xuất điện cao áp ra lưới. 
Ngoài ra có 1 đèn led báo dòng sạc Pin và 1 đèn soi nhỏ bằng Led hoặc sợi đốt. Phần mạch cao áp được nhúng chất cách điện (parapin thì phải)

B. KHẢO SÁT MẠCH:
1. Đo nguội: 
- L1 có điện trở thuần 0,3 om
- L2 có 2 om
- L3 có 290 om
2. Đo nóng:
- Transitor: Ve = 0,1 vol, Vb = -2,5 vol. Đây là dấu hiệu mạch dao động chạy tốt. Nếu Vb = 0,7vol : mất dao động, nếu Vb ít âm hoặc gần bằng 0 : dao động yếu.
- L1 có điện áp 4 vol ac (nhớ dùng thang đo thấp)
- L2 có điện áp 18 vol ac
- L3 có điện áp trên 1.000 vol ac ( vượt thang đo 1000AC, không rõ là ngàn mấy). Vậy điện cao áp trên lưới vợt ước phải gần 2.000 vol. Nó là giá trị điện áp một chiều trung bình, sau khi qua mạch nhân 4 ngõ ra (trị số điện áp chịu của tụ C5 ghi là 2.000 vol).

C. HƯ HỎNG SỬA CHỮA: Chủ yếu là hư contac bấm và hư Pin
1. Nhiều nhất là hư khoá K2: vì bấm suốt, phải thay mới, mấy quầy linh kiện bán đầy. Hư cái khoá này mà vứt cái vợt đi thì phí lắm.
2. Dùng lâu ngày Pin chai phải thay. Ngại nhất anh này, Pin khó tìm, chủ yếu lấy từ xác. Loại 2,4v dễ kiếm hơn.
3. Hai đầu nối bên trong của píc nạp điện cho Pin tiếp xúc kém do rĩ, dẫn đến Pin kiệt.
4. Hư transitor D965 (hoặc D882). Không biết thị trường có con nào thay được ?
5. Chạm biến áp: Hiếm nhưng đã gặp (đồng thời chạm BA và hỏng Trans)
6. Rò điện giữa các lớp lưới (có tiếng kêu): Dùng máy sấy tóc, không được thì tháo ra dùng cồn 90 vệ sinh khung nhựa.

* Dùng vợt muỗi muốn bền Pin thì đừng nên bật bóng đèn soi, vì loại đèn sợi đốt ăn dòng lớn, mau chai pin (cắt đứt dây đèn luôn cho chắc)

D. THỬ VỢT MUỖI KHI CHỌN MUA: Nhấn khóa rồi nhả, chọc đầu to vit (kim loại) vào lưới (nối thông 1 lớp lưới biên với lớp lưới giữa) có tia điện kèm tiếng nỗ. Lại nhấn khóa rồi nhả, chờ khoảng 10 giây, nếu chọc to vit vào vẫn có tia điện và tiếng nỗ là OK. 

Một số mạch vợt muỗi thông dụng:
vot-muoi-1

Thêm 1 pan thực tế cho vợt muỗi - dễ mà khó, khó mà dễ: 
Hư hỏng: Thanh kim loại tiếp xúc trượt tại đầu Pic cắm điện bị bong, không sạc được Pin. Làm sao đây: dùng mỏ hàn dí vào, dùng keo dán lại ... cũng được chỉ vài hôm lại bong ngay.

Thanh kim loại này được gắn vào đế nhựa bằng 2 chấm nhẻo nhỏ, xuyên qua hai lỗ trên thanh kim loại.

Xử đẹp nè:
Dùng mũi kim nhọn, nung nóng dùi 2 lỗ trên đế nhựa trùng với vị trí 2 nhẻo nhựa đã bong.
Dùng 1 cái gim bấm giấy xuyên qua cặp lỗ này, kẹp giữ chặt thanh kim loại thay cho 2 chút nhẻo nhựa kia. OK
Đảm bảo không đẹp không ăn tiền ! 
---------------
Mình xin bổ sung thêm:
Ngoài D965 hoặc D882 còn có C5707 ,D1691 và 1 số tranzitor có tần số ngang d882 (tra data nhé) cũng có thể thay được.

Đối với tụ gốm nguồn thì chỉ cần là tụ gốm có điện áp 250v trở lên còn bao nhiêu pf thì không quan trọng phang được tất . Tuy nhiên nó sẽ ảnh hưởng tốc đọ sạc (cái này không quan trọng lắm)

Tụ cao áp cũng vậy nhé chỉ cần tụ gốm có điện áp 1600v trở lên còn bao nhiêu pf thì không quan trọng phang được tất . Nhưng tụ có chỉ số điện dung càng cao thì càng khỏe .

Mình không phải tự hào gì nhưng nói đến vợt muỗi thì mình bắt đầu biết sửa từ năm lớp 8 tính đến nay khoảng 7 năm sửa khoảng gần 500 cái, đốt hết hơn 20 lọ axit sunfuric ... Gập nhiều pan công nhận là ngớ ngẩn .

Có một hôm mẹ đứa bạn gái (bạn thôi nhé) mang vợt muỗi sang nhà mình sửa nói là "mới mua hôm qua mà giờ sạc không vào bóng báo không sáng nữa...". Mình mở ra thì thấy toi con led báo nguồn rồi , mình phang led mới vào cứ nghĩ là ok.... Cắm điện xifiii... ôi cái đệt cái led lại đen xì khói um . Mình tra mạch nguồn ra thì ... đậu xanh rau má cái vợt tàu nó làm ăn như L ... Nó thiếu hẳn một con điot nắn nguồn anh em ak . Vì thiếu diot nên điện áp 220v sộc thẳng vào led đen xì luôn . Qua vụ đó mình mới quạt cho mấy bà đó trận "vợt mới mà ngon ak . xí". Từ dạo đó mình có nhiều người nhận sửa vợt muỗi và đồ điện khác hơn với tâm lý "của tốt còn hơn mốt mới".

Vậy nên có bạn hỏi vợt mua 3 ngày không nổ nữa mặc dù led nguồn và led kích xung vẫn ok . Mới không phải đã là tốt bạn mở ra xem lại tran và biến áp đi nhé , trường hợp mới mua mới cứng mình đã sửa không phải ít.

Có bạn hỏi vợt của bạn ấy dùng lâu rồi nhưng vẫn chạy tốt chỉ có điều giờ muỗi bay vào khoảng 10 phút mới chết chứ không nổ đen đét nữa... Pan này phải xem là acquy (hoặc pin còn tốt ko) nếu còn tốt thì 100% là tụ cao áp (con tụ từ 1600v > 2000v) đã rất kém rồi nên thay mới hoặc kiếm con tụ nào còn tốt đo là ok.

Có bạn hỏi là vợt của bạn ấy đo biến áp, tụ, tran đều ok nhưng cấp điện thì vợt vẫn không nổ . Mình nghĩ nếu bạn không chuyên thì pan này cực kỳ hóc ... Mình khảng định nó đã chết biến áp rồi . Mình đã gặp nhiều trường hợp đo tương đương với cái vợt muỗi sống thì như nhau nhưng thật ra đã chết lắp vào ko nổ nữa . Bên trên có ghi: 
- L1 có điện trở thuần 0,3 om
- L2 có 2 om
- L3 có 290 om
Nhưng các bạn phải hiểu là vợt muỗi có vô cùng nhiều loại ko phải cái nào cung jin như thế , Đấy là còn chưa nói đến sai số của đồng hồ . Ai dám nói cái đồng hồ nào đo chính xác 100% chứ chỉ có thể là tương đối thôi .

Cảm ơn các bạn đã xem bài viết của mình . Nếu có pan nào lạ anh em pm mình phân tích thêm nhé ^^.
Nguồn :http://tienthinhpro.com/
Share:

Sửa chữa máy hàn điện tử ở khánh hòa CO2-MIG/MAG, TIG, Plasma

Trung tâm sửa chữa tận nhà 01E nhận sửa chữa máy hàn  CO2-MIG/MAG, TIG, Plasma, board điều khiển, board công suất máy hàn CO2-MIG/MAG, TIG, Plasma , sửa chữa phần cứng điện tử.Trung tâm nhận đặt hàn và cung cấp ic, board điều khiển hay công suất với giá cả phải chăng :
MOSFET POWER: 2SK2698, 2SK2837, 2SK2370, 2SK2611, 2sk4107, 2sk4108 ...
IGBT: 40N60, 60N60...
DIODE CHỈNH LƯU: ESAD 92-02, RURG30U60...
BIẾN ÁP HÀN: EER43X15 22:3, EER43X15 22:4...
BIẾN ÁP CAO ÁP: FLYBACK, EER43X15 7:22:70...
BIẾN ÁP CT: E25 300:1
BIẾN ÁP NGUỒN: EE25 200:6, EEL25 200:16:33:33, EEL25200:12:22:22...
BIẾN ÁP DRIVE: EI28 15:7, EI33 15:8, EEL25 15:15...Cảm ơn quý khách đã ghé thăm.






*Liên hệ với chúng tôi:


Share:

Bài viết

Lưu trữ Blog