1 .2.4 Thiết bị điều khiển dòng công suất
3.1.3.4. Khâu điều khiển tạo xung sử dụng VĐK pic 16f877
Ngày nay, các bộ vi điều khiển đang có ứng dụng ngày càng rộng rãi trong các lĩnh vực kỹ thuật và đời sống xã hội, đặc biệt là trong kỹ thuật tự động hoá và điều khiển từ xa. Giờ đây với nhu cầu chuyên dụng hoá, tối ưu (thời gian, không gian,
giá thành), bảo mật, tắnh chủ động trong công việc... ngày càng đòi hỏi khắt khe. Việc đưa ra công nghệ mới trong lĩnh vực chế tạo mạch điện tử để đáp ứng những yêu cầu trên là hoàn toàn cấp thiết mang tắnh thực tế cao.
* Bộ Vi điều khiển 8 bit PIC16F877 (Đặc tắnh nổi bật của bộ vi xử lắ).
+ Sử dụng công nghệ tắch hợp cao RISC CPU.
+ Người sử dụng có thể lập trình với 35 câu lệnh đơn giản.
+ Tất cả các câu lệnh thực hiện trong một chu kì lệnh ngoại trừ một số câu lệnh rẽ nhánh thực hiện trong 2 chu kì lệnh.
+ Tốc độ hoạt động là: - Xung đồng hồ vào là DC- 20MHz - Chu kỳ lệnh thực hiện trong 200ns + Bộ nhớ chương trình Flash 8Kx14 words
+ Bộ nhớ Ram 368x8 bytes + Bộ nhớ EFPROM 256x 8 bytes Khả năng của bộ vi xử lắ này
+ Khả năng ngắt ( lên tới 14 nguồn ngắt trong và ngắt ngoài ) + Ngăn nhớ Stack được phân chia làm 8 mức
+ Truy cập bộ nhớ bằng địa chỉ trực tiếp hoặc gián tiếp. + Nguồn khởi động lại (POR)
+ Bộ tạo xung thời gian (PWRT) và bộ tạo dao động (OST)
+ Bộ đếm xuang thời gian (WDT) với nguồn dao động trên chắp (nguồn dao động RC ) hoạt động đáng tin cậy.
+ Có bảng lựa chọn dao động.
+ Công nghệ CMOS FLASH /EEPROM nguồn mức thấp ,tốc độ cao. + Thiết kế hoàn toàn tĩnh .
+ Mạch chương trình nối tiếp có 2 chân. + Xử lý đọc /ghi tới bộ nhớ chương trình . + Dải điện thế hoạt động rộng : 2.0V đến 5.5V + Nguồn sử dụng hiện tại 25 mA
+ Công suất tiêu thụ thấp:
Hình 3.6: Sơ đồ cấu trúc của PIC 16f877
< 0.6mA với 5V, 4MHz
20A với nguồn 3V, 32 kHz < 1A nguồn dự phòng.
Các đặc tắnh nổi bật của thiết bị ngoại vi trên chip
+ Timer0: 8 bắt của bộ định thời, bộ đếm với hệ số tỷ lệ trước
+ Timer1: 16 bắt của bộ định thời, bộ đếm với hệ số tỷ lệ trước, có khả năng tăng trong khi ở chế độ Sleep qua xung đồng hồ được cung cấp bên ngoài.
+ Timer 2: 8 bắt của bộ định thời, bộ đếm với 8 bắt của hệ số tỷ lệ trước, hệ số tỷ lệ sau
+ Có 2 chế độ bắt giữ, so sánh, điều chế độ rộng xung (PWM).
+ Chế độ bắt giữ với 16 bắt, với tốc độ 12.5 ns, chế độ so sánh với 16 bắt, tốc độ giải quyết cực đại là 200 ns, chế độ điều chế độ rộng xung với 10 bắt.
+ Bộ chuyển đổi tắn hiệu số sang tương tự với 10 bắt .
+ Cổng truyền thông nối tiếp SSP với SPI phương thức chủ và I2C(chủ/phụ) + Bộ truyền nhận thông tin đồng bộ, dị bộ(USART/SCL) có khả năng phát hiện 9 bắt địa chỉ.
* Cổng vào ra.
Một số chân của các cổng vào/ra được tắch hợp với một số hàm có thể thay đổi để phù hợp với những thiết bị ngoại vi. Nhìn chung khi thiết bị ngoại vi hoạt động, các chân có thể không sử dụng với mục đắch làm chân vào ra.
- Cổng A và thanh ghi TRISA:
Cổng A là cổng hai chiều với độ rộng đường truyền là 6 bit. Để điều khiển việc truy xuất dữ liệu người ta dùng thanh ghi TRISA . Nếu đặt bắt TRISA = 1 thì lúc này cổng A sẽ tương ứng có các chân là chân vào .Nếu xoá bắt TRISA = 0 thì lúc này cổng A sẽ tương ứng có các chân là chân ra. Việc đọc cổng A chắnh là đọc trạng thái của các chân, trong khi đó việc viết phải qua việc viết các chốt của cổng. Các chân của cổng A chủ yếu được sử dụng với mục đắch chắnh là nhận tắn hiệu tương tự hoặc làm các chân vào ra. Riêng chân RA4 có thể đa hợp với chân vào bộ Timer 0 và khi đó nó trở thành chân RA4/T0CKI. Chân này như một đầu vào của Schmitt Trigger và nó mở đầu ra. Các chân khác của cổng A là chân vào với bộ TTL. Việc điều khiển các chân này thông qua việc đặt hay xoá các bắt của thanh ghi ADCON1. Thang ghi TRISA điều khiển trực tiếp các chân của cổng A, khi sử dụng các chân này để nhận tắn hiệu tương tự vào ta phải chắc chắn rằng các bắt của thanh ghi TRISA đã được đặt rồi.
Cổng B (RB3/PGM, RB6/PGC, RB7/PGD) là cổng hai chiều với độ rộng đường truyền là 8 bit.Tương ứng với nó để điều khiển trực tiếp dữ liệu ta sử dụng thanh ghi TRISB. Nếu đặt bắt TRISB = 1 thì lúc này các chân của cổng B được định nghĩa là chân vào. Nếu xoá bắt TRISB = 0 thì lúc này các chân của cổng B được định nghĩa là chân ra. Nội dung của chốt ra có thể chọn trên mỗi chân.
- Cổng C và thanh ghi TRISC:
Cổng C là cổng hai chiều với độ rộng đường truyền là 8 bit .Tương ứng với việc điều khiển nó là thanh ghi TRISC. Nếu đặt bắt TRISC = 1 thì tương ứng với chân của cổng C là chân vào. Nếu ta xoá bắt TRISC = 0 thì tương ứng với nó chân của cổng C là chân ra . Đặt nội dung của chốt ra có thể đặt trên chân chọn. Cổng C đa hợp với việc vận hành thiết bi ngoại vi. Chân của cổng C thông qua bộ đệm Schmitt Trigger đầu vào.
- Cổng D và thanh ghi TRISD
Cổng D có 8 bắt có bộ đệm đầu vào Schmitt Trigger. Mỗi chân được sắp xếp riêng lẻ như đầu vào hoặc đầu ra. Cổng D cũng có thể được sắp xếp như là một cổng vi xử lý 8 bit (cổng phụ song song) bằng việc đặt bắt điều khiển PSPMODE(TRISE<4>) và trong chế độ này vùng đệm đầu vào là TTL.
- Cổng E và thanh ghi TRISE:
Cổng E có 3 chân là RE0/RD/AN5, RE1/WR/AN6, RE2/CS/AN7. Các chân này có thể sắp xếp riêng lẻ là các đầu vào hoặc các đầu ra, và các chân có vùng đệm đầu vào là các mạch Schmitt Trigger.
Cổng vào/ra E trở thành đầu vào điều khiển cho cổng vi xử lý khi bit PSPMODE(TRISE<4>) được đặt. Và trong chế độ này phải chắc chắn rằng các bit TRISE<2:0> được đặt (các chân được định dạng là các đầu vào số), thanh ghi ADCON1 phải được định dạng cho việc số vào/ra và vùng đệm đầu vào là TTL.
Các chân cổng E cũng được tắch hợp với các đầu vào tương tự và trong trường hợp này các chân sẽ đọc là Ấ0‟.
Thanh ghi TRISE điều khiển trực tiếp các chân RE, ngay cả khi chúng được dùng là các đầu vào tương tự.