Chân adj trong mạch cao áp chạy bao nhiêu vôn năm 2024

Từ khi con người chế tạo ra được các loại ic lập trình, làm việc với các câu lệnh, thì ngành điện tử đã chuyển qua một thời kỳ mới với rất nhiều ứng dụng hấp dẫn, hay lạ. Từ các ic lập trình chúng ta bắt đầu làm quen với khái niệm "phần xác" và "phần hồn", hay còn được gọi là phần cứng và phần mềm.

Phần xác là gì? Là các linh kiện tạo ra mạch điện, tạo ra thiết bị. Nó giống như bắp thịt, đầu mình và tay chân của chúng ta, phần xác thường như là các vật thể hữu hình có khối lượng và vô tri vô giác.

Phần hồn là gì? Là các câu lệnh vô hình, mà chúng ta đã soạn ra và cho nạp vào bộ nhớ của các ic lập trình, dùng các câu lệnh này chúng ta có thể điều khiển các dạng hoạt động của phần xác. Chúng ta thấy cũng chỉ trên một bộ nhớ mà khi chúng ta cho thay đổi các câu lệnh mới, với các câu lệnh mới này thì phần xác lại có thể tạo ra các đáp ứng mới, các động tính mới.

Đó chính là cấu trúc của các mạch điện thời đại, của các loại thiết bị đời mới, trong đó làm việc với các loại ic lập trình. Từ hiểu biết trên chúng ta sẽ thấy công việc của người thiết kế điện tử ngày nay sẽ gồm các bước như sau:

Bước 1: Tạo ra các vật thể giống như công việc tạo ra một cái xác có đủ đâu mình và tứ chi. Với các cái xác không hồn thì vô tri vô giác, không làm được trò trống gì cả.

Bước 2: Viết các chương trình nguồn để điều khiển các bộ phận của phần xác. Như chương trình điều khiển sự đi đứng, chương trình điều khiển tay chân, đầu mình...

Bước 3: Dịch các chương trình nguồn vốn là các câu lệnh thành các dòng mã lệnh và cho nạp các dòng mã lệnh vào nằm trong bộ nhớ của thiết bị.

Bước 4: Cho vận hành thử các thiết bị để xem xét các hoạt động của nó có đúng với ý muốn của người thiết kế không? Nếu chưa vừa ý thì cho hiệu chỉnh lại, thường công việc là viết lại các chương trình nguồn.

Ngày nay người ta chế tạo ra biết bao thứ thiết bị thông minh, kết hợp tài tình giữa phần xác và phần hồn, nó hoàn toàn có thể làm được nhiều việc giống như một sinh vật sống. Trong nghề nghiệp, chúng ta không muốn mình bị "lạc hậu", thụt lùi, vậy phải tìm hiểu loại ic lập trình này thôi. Nhưng khởi đầu phải từ bước nhập môn, vậy làm quen với ic lập trình AT89C51 vậy.

Giới thiệu bo thực hành với ic lập trình AT89C51

1. Tìm hiểu hoạt động của ic lập trình AT89C51.

Hình trên cho thấy ic lập trình đơn phiến AT89C51 có 40 chân, công dụng của các chân như sau:

☆ Chân cuối của hàng dưới, chân 20, cho nối masse, chân cuối của hàng trên, chân 40, cho nối nguồn 5V

☆ Chân 9 là chân reset, khi chân này ở mức áp cao, IC sẽ ở trạng thái reset.

☆ Chân 18, 19 dùng gắn thạch anh để định tần cho xung nhịp, với thạch anh 12MHz, chu kỳ lệnh sẽ là 1us.

☆ Chân 31 dùng khai báo IC sẽ làm việc với bộ nhớ nào, khi treo chân này lên mức áp cao, IC sẽ chỉ làm việc với bộ nhớ trong.

☆ IC AT89C51 có 4 cảng dạng 8-bit dùng xuất nhập bit. Các cảng được đặt tên là p0, p1, p2 và p3.

☞ Cảng p0 gồm các chân: 39, 38, 37, 36, 35, 34, 33, 32.

☞ Cảng p1 gồm các chân: 1, 2, 3, 4, 5, 6, 7, 8.

☞ Cảng p2 gồm các chân: 21, 22, 23, 24, 25, 26, 27 ,28.

☞ Cảng p3 gồm các chân: 10, 11, 12, 13, 14, 15, 16, 17.

Ghi nhớ: Để tiện dụng trên các chân của các cảng đều đã cho đặt tên riêng, do vậy chúng ta có thể xử dụng các tên này trong các câu lệnh mà không cần phải nhớ số chân của IC. Cũng chú ý có một số chân đa nhiệm, nghĩa là chân đó có thể làm nhiều nhiệm vụ. Nhất là các chân của cảng p3. Người ta thường dùng 2 cảng p0 và p2 để truy cập địa chỉ 16-bit của các bộ nhớ ngoài, với khả năng truy cập địa chỉ 16-bit, nó có thể làm việc với các bộ nhớ có 65536 thanh nhớ.

Khi dùng ic lập trình đơn phiến AT89C51, Bạn chú ý đến 4 điều sau đây:

①. Vấn đề cấp nguồn, IC AT89C51 làm việc với mức nguồn 5V, nguồn nuôi cần có độ ổn định tốt. Do vậy Bạn nên dùng ic ổn áp 7805 để có nguồn 5V cấp cho IC này.

②. Ở mạch reset, Bạn dùng tụ khoảng 10μF và điện trở có trị 10KΩ để tạo ra mức áp cao ngay khi mạch được cấp điện, với mức áp cao xuất hiện trên chân số 9, IC sẽ vào trạng thái reset, nó trả các thanh ghi trong IC về trạng thái reset và quay lại chạy dòng lệnh từ thanh 0000h trong bộ nhớ ROM.

③. Muốn ic lập trình hoạt động Bạn phải gắn thạch anh trên chân 18, 19 dùng để định tần cho mạch dao động tạo xung nhịp. Thạch anh thường dùng trong thực nghiệm là 12MHz, vậy chu kỳ thực hiện lệnh sẽ là 1μs.

④. Nếu chỉ làm thực nghiệm với các câu lệnh có trong bộ nhớ ROM bên trong, nghĩa là không dùng bộ nhớ ngoài, Bạn cho treo chân 31 lên mức áp cao.

Khi đã thoả mãn 4 điều kiện trên, bây giờ Bạn đã có thể dùng các câu lệnh nạp vào bộ nhớ ROM và dùng ic AT89C51 để làm các công việc mà Bạn muốn.

2. Mạch điện ứng dụng cơ bản của ic lập trình AT89C51.

Trên bo thực hành đa dụng, Bạn thấy chung quanh ic lập trình đơn phiến AT89C51 có dùng đến các ic 74245 làm tầng khuếch đại dùng điều khiển việc xuất nhập của các bit ra vào trên các cảng của IC.

Trước hết chúng ta hãy tìm hiểu công dụng của các ic 74HC245.

Hình trên cho thấy, ic logic 74HC245 có 8 tầng khuếch đại song hướng. IC làm việc với chân cuối của hàng dưới, chân 10, cho nối masse và chân cuối của hàng trên, chân 20, cho nối nguồn 5V. Các tầng khuếch đại với A0 - B0, A1- B1, A2 - B2, A3 - B3, A4 - B4, A5 - B5, A6 - B6, A7 - B7. Chân 19 /OE dùng kích mở hoạt động của ic khi nó ở mức volt thấp, hay cho nối masse, khi chân này treo ở mức áp cao, các ngả xuất nhập sẽ cho ở trạng thái thứ ba, nghĩa là trạng thái có trở kháng vô cùng lớn, xem như hở mạch. Chân số 1 chọn hướng đi cho tín hiệu. Khi chân DIR ở mức áp cao, thì tín hiệu vào bên A ra bên B và khi chân DIR ở mức áp thấp thì tín hiệu vào bên B và ra bên A. Tóm lại, người ta dùng ic 74HC245 để khuếch đại tăng cường cho các cảng của ic lập trình AT89C51.

Vậy, có thể thấy, trong sơ đồ mạch điện trên, khi 4 khóa điện trong S đều để hở thì các chân DIR đều cho ở mức áp cao, lúc này tín hiệu vào bên A và ra bên B, hay có thể nói nó dùng cho mode xuất bit trên 4 cảng của AT89C51. Nếu muốn nhập bit vào các cảng của ic AT89C51 chúng ta phải đặt chân DIR xuống mức áp thấp. Trong mạch người ta còn dùng các điện trở thanh để treo áp các chân lên mức áp cao.

Vậy sơ đồ mạch điện này cho thấy phần mạch trung tâm dùng chạy ic lập trình đơn phiến AT89C51, Bạn có thể dùng bó dây nối 8 đường cho kết nối các cổng p0, p1, p2 và p3 đến các bộ phận chịu tác động điều khiển khác cũng trang bị trên bo để làm thực hành với bo mạch đa dụng này.

3. Cấu trúc của các chương trình nguồn.

Bạn cho gắn 8 Led với các chân cathode nối masse và các chân anode nối vào cảng p1. Sơ đồ mạch điện như hình sau:

Bây giờ Bạn hãy viết một chương trình nguồn để 8 Led nầy lần lượt sáng lên từng Led và khi 8 Led đã sáng hết thì cho tắt hết 8 Led và rồi bắt đầu lại.

org 0000h ; thanh nhớ khởi đầu trong bộ nhớ ROM jmp loop ; dùng lệnh nhẩy, cho nhẩy qua các thanh nhờ dùng cho ngắt org 0080h ; sắp xếp các lệnh sau từ thanh nhớ nầy trở đi

loop: mov p1,

00h ; đặt 8 chân của cảng p0 xuống mức áp thấp, tắt hết 8 led

setb p1.0 ; cho sáng led trên chân p1.0 call delay ; gọi chương trình làm chậm setb p1.1 ; cho sáng led trên chân p1.1 call delay setb p1.2 ; cho sáng led trên chân p1.2 call delay setb p1.3 ; cho sáng led trên chân p1.3 call delay setb p1.4 ; cho sáng led trên chân p1.4 call delay setb p1.5 ; cho sáng led trên chân p1.5 call delay setb p1.6 ; cho sáng led trên chân p1.6 call delay setb p1.7 ; cho sáng led trên chân p1.7 call delay JMP LOOP ; quay lại, bắt đầu từ tên nhãn loop

delay: ; đoạn chương trình dùng làm chậm

mov r5,

20 ; nạp trị thập phân 20 vào thanh r5

d1: mov r6,

40 ; nạp trị thập phân 40 vào thanh r6

d2: mov r7,

248 ; nạp trị thập phân 248 vào thanh r7

djnz r7,$ ; cho trị trong r7 giảm theo bước -1, chờ r7 = 0 djnz r6,d2 ; giảm trị trong r6, chưa =0, quay lại d2 djnz r5,d1 ; giảm trị trong r5, chưa =0, quay lại d1 ret ; quay trở lại dòng lệnh sau lệnh call

end ; dừng công việc biên dịch ở đây.

Phân tích cách viết chương trình nguồn trên:

Các câu lệnh setb p1.x tiếp theo sẽ lần lượt làm cho các Led trên các chân p1.1, p1.2, p1.3. p1.4. p1.5, p1.6, p1.7 sáng lên. Chúng ta thấy như hình minh họa sau:

Phân tích đoạn chương trình dùng làm chậm:

Sau cùng dùng giả lệnh end để báo cho dừng biên dịch tại dòng này. Như vậy những dòng lệnh tiếp theo bên dưới giả lệnh end đều sẽ bỏ qua.

Sau đây là chương trình nguồn, cũng làm các công việc giống như trên, được viết theo ngôn ngữ lập trình C.

include // xác định các định nghĩa lấy trong file reg51.h

define uchar unsigned char // dùng định nghĩa đặt tên để tiện dùng

define uint unsigned int // dùng định nghĩa đặt tên để tiệnn dùng

define LED P1 // dùng định nghĩa đặt tên để tiện dùng

uchar led_value[]={0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f, 0xff}; // tạo các trị để cho 8 Led sáng lan lên uchar *p=led_value; // gán trị khởi đầu void delay[] // tạo hàm làm chậm { uchar ii,jj; for[ii=0;ii

Chủ Đề