Tải bản đầy đủ (.docx) (20 trang)

ĐIỀU KHIỂN GIÁM SÁT VÀ THIẾT LẬP TỐC ĐỘ ĐỘNG CƠ SỬ DỤNG KEYPAD HỆ THỐNG NHÚNG( LẤY FILE CODE PIC+ FILE MÔ PHỎNG PROTEUS LIÊN HỆ ZALO 0327697318)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (249.15 KB, 20 trang )

TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
KHOA ĐIỆN TỬ

BÁO CÁO TIỂU LUẬN
Môn học: HỆ THỐNG NHÚNG

Đề tài: GIÁM SÁT VÀ THIẾT LẬP TỐC ĐỘ ĐỘNG
CƠ SỬ DỤNG KEYPAD
GVHD:
SVTH1:
MSSV:
SVTH2:
MSSV:

TĂNG CẨM NHUNG
NGÔ VĂN PHỤNG
K175520114040
LƯƠNG QUANG TRƯỜNG (TN)
K175520114059

Thái Nguyên, ngày

tháng

năm 2021

1


MỤC LỤC
Chương I: GIỚI THIỆU YÊU CẦU GIỚI HẠN CỦA ĐỀ TÀI……………......3


1.Giới thiệu đề tài………………………………………………………….……3
2.Mục đích đề tài…………………………………………………….………….3
3.Phạm vi nghiên cứu………………………………………………….…….….3
CHƯƠNG II: THIẾT KẾ……………………………………………….……....4
2.1 Giới thiệu ………………………….……….……………………………….4
2.2 Thiết kế sơ đồ khối: ……………….…………………………………….….4
2.2.1 Chức năng từng khối: …………………………………………………….4
2.2.2Thiết kế sơ đồ nguyên lý……………………………………………….….4
A. Khối hiển thị: …………………………………………....…………….….…4
B. Khối điều khiển………………………………………………………………7
C. Khối xử lý…………………………………………………………………….8
D. Khối nguồn: ………………………………………………………………….8
E. Khối băm xung PWM………………………...………………………………8
F. Khối động lực………………………….……………………….………….….8
2.2.3Nguyên lý hoạt động: …………………………….………………………..10
CHƯƠNG 3: KẾT QUẢ THỰC HIỆN VÀ KẾT LUẬN……...………………..11
1. Kết luận…………………………………………………….….……….……...11
2. Hướng phát triển………………………………………………...………….....11

2


CHƯƠNG I:
GIỚI THIỆU YÊU CẦU GIỚI HẠN CỦA ĐỀ TÀI
1.Giới thiệu đề tài
- Ngày nay thế giới đã bước vào một cuộc cách mạng khoa học kỹ thuật trong mọi lĩnh
vực. Con người biết ứng dụng khoa học kĩ thuật vào sản xuất để nâng cao năng suất chất
lượng rút ngắn thời gian sản xuất. Động cơ một chiều được sử dụng phổ biến và rộng rãi
trong tất cả các lĩnh vực từ quân sự đến công nghiệp và dân dụng. Những ứng dụng quan
trọng của nó bao gồm: nhà máy cán, nhà máy giấy, nhà máy dệt, nhà máy in, máy công

cụ, máy xúc, cần cẩu và đặc biệt là lĩnh vực robotic…
- Các mạch điều khiển động cơ yêu cầu thay đổi tốc độ quay của động cơ nhịp nhàng
và điều khiển chính xác. Phương pháp truyền thống để điều khiển tốc độ động cơ một
chiều là thay đổi giá trị điện áp cung cấp cho động cơ. Phương pháp đơn giản nhất là sử
dụng biến trở và phương pháp điều khiển này khơng chính xác như mong muốn do đặc
tuyến của biến trở, tầm hoạt động bị giới hạn, điều khiển không hiệu quả và gây ra hiện
tượng quá nhiệt của cuộn dây dẫn đến hư động cơ.
- Phương pháp PWM được biết đến từ những năm 1970 cải thiện được hạn chế của các
phương pháp truyền thống, tuy nhiên mạch điều khiển dùng linh kiện rời BJT hoặc vi
mạch số nên mạch điện phức tạp, khó đạt được độ chính xác cao. Ngày nay việc sử dụng
các vi mạch khả lập trình như vi xử lý trong các thiết bị điều khiển trở thành một xu thế
quan trọng, mang lại hiệu quả cao, tốc độ xử lý nhanh, độ chính xác cao, mạch phần
cứng tinh gọn, giảm giá thành sản phẩm, hạn chế rủi ro.

2.Mục đích đề tài
- Trong bài này chúng em tập trung nghiên cứu phương pháp điều chế độ rộng xung
PWM để điều khiển tốc độ động cơ DC sử dụng dòng vi điều khiển PIC 16F877A và các
giải thuật tạo xung PWM sau đó lập trình cho vi điều khiển bằng ngơn ngữ C.

3.Phạm vi nghiên cứu
-Trong bài này chúng em sử dụng keypad để xác định 9 trạng thái của động cơ và mỗi
trạng thái có 1 tốc độ riêng và dùng 1 Led 7 đoạn để hiện thị trạng thái của động cơ đang
quay ở tốc độ nào, sử dụng nguồn pin hoặc điện từ lưới 220V.

3


CHƯƠNG II:
THIẾT KẾ
2.1 Giới thiệu

- Với đề tài “giám sát và thiết lập tốc độ động cơ sử dụng keypad” chúng em sẽ thiết kế
theo yêu cầu như sau:
+ Sử dụng 1 keypad để xác định 9 cấp tốc độ quay của động cơ.
+ Hiển thị trạng thái của động cơ ra Led 7 đoạn (Đang quay ở tốc độ nào trong 9 cấp
tốc độ).

2.2 Thiết kế sơ đồ khối:

Hình 2.1 Sơ đồ khối mạch đếm sản phẩm.

2.2.1 Chức năng từng khối:
+ Khối nguồn: có chức năng cấp nguồn cho tồn bộ hệ thống.
+ Khối điều khiển: có chức năng điểu khiển chế độ làm việc hệ thống và là tín hiệu đầu
vào của khối xử lý.
+ Khối xử lý: có chức năng thu thập và xử lý tín hiệu (từ tín hiệu đầu vào của khối điều
khiển và xuất ra tín hiệu cho khối hiển thị và khối phát xung PWM).
+ Khối hiển thị: có chức năng hiển thị cấp độ làm việc của động cơ.
+ Khối băm xung PWM: có chức năng cấp xung cho động cơ chạy.
+ Khối động lực: có chức năng vận hành động cơ theo xung được cấp.

2.2.2Thiết kế sơ đồ nguyên lý
A. Khối hiển thị:
-Led 7 đoạn có chức năng hiển thị số thập phân cho biết kết quả sau khi xử lý, trong
mạch đếm sản phẩm sẽ cho biết kết quả đếm là số lượng sản phẩm. Có 2 loại led 7 đoạn
là anode chung và cathode chung.
-Led 7 đoạn có kí hiệu, sơ đồ chân như hình sau:


Hình 2.2 Ký hiệu và hình ảnh led 7 đoạn
-Led 7 đoạn có cấu tạo là các led đơn được sắp xếp theo vị trí để khi sáng hoặc tắt tạo

thành 1 số thập phân từ 0 đến 9.
-Dòng cho mỗi đoạn từ 5 đếm 15 mA và điện áp cho các led nhỏ là 2V.
-Em tiến hành chọn led loại anode chung.
-Cách đấu nối LED 7 đoạn trong mạch mơ phỏng

Hình 2.3 Sơ đồ đấu nối LED 7 đoạn trong mạch mơ phỏng
-Chương trình điều khiển LED 7 đoạn:
+Khai báo mảng mã LED 7 đoạn từ 0-9:
int8 maled[]={0xC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90
};
Hiển thị số trên led 7 đoạn:
void hthi(){//----------------QUET LED---------------output_D(maled[j/100]);
output_HIGH(pin_A0);


delay_ms(1);
output_LOW(pin_A0);
output_D(maled[j%100/10]);
output_HIGH(pin_A1);
delay_ms(1);
output_LOW(pin_A1);
output_D(maled[j%10]);
output_HIGH(pin_A2);
delay_ms(1);
output_LOW(pin_A2);
}
- LCD
+Cách đấu nối LCD trong mạch mơ phỏng

Hình 2.4 Sơ đồ đấu nối lcd trong mạch mô phỏng

+Khai báo LCD trong CCS
#use delay(clock=20M)
#define LCD_ENABLE_PIN PIN_A5
#define LCD_RS_PIN PIN_A3
#define LCD_RW_PIN PIN_A4
#define LCD_DATA4 PIN_C4
#define LCD_DATA5 PIN_C5
#define LCD_DATA6 PIN_C6
#define LCD_DATA7 PIN_C7
#include <lcd.c>

B. Khối điều khiển


-keypad
Cách đấu nối KEYPAD trong mạch mơ phỏng

Hình 2.5 Sơ đồ đấu nối keypad trong mạch mô phỏng
-Khai báo trong CSS:
int quet_phim(){//----------------QUETPHIM---------------int8 mp=0xFF;
int8 quet[]={0xEF,0xDF,0xBF,0x7F};
for(int8 cot=0;cot<=3;cot++){
OUTPUT_B(quet[cot]);
while(!input(pin_b0)){
hthi();
mp=cot*1+1;
}
while(!input(pin_b1)){
hthi();
mp=cot*1+4;

}
while(!input(pin_b2)){
hthi();
mp=cot*1+7;
}
while(!input(pin_b3)){
hthi();
mp=cot*1+17;
}
}
return mp;
}


C. Khối xử lý
-Đây chính là khối trung tâm, có chức năng điều hành toàn bộ sự hoạt động của hệ
thống, nhờ có vi điều khiển thơng minh thì hệ thống mới hoạt động hiệu quả. Các dòng
vi điều khiển thường được sử dụng như: Vi điều khiển ARM, AVR, vi điều khiển PIC, vi
điều khiển 8051, Arduino...
-Ở đây em sử dụng vi điều khiển PIC 16F877A để lập trình:

Hình 2.6: Cấu trúc tổng quát của PIC16F877A trong phần mềm Proteus
-Chức năng các chân sử dụng trong hệ thống:
+Ở đây, em sử dụng các chân vi điều khiển như sau:
+Chân RB của VDK là chân được nối với các chân của KEDPAD và RESPACK-8
+Chân RA3, RA4, RA5, RC4, RC5, RC6, RC7: được nối với các chân của LCD
+Chân RD và RA0, RA1, RA2 của VDK là chân sẽ được nối với các chân LED 7 đoạn
+Chân RC1và RC2 nối vào chân IN1 và IN2 của L298

D. Khối nguồn:

-Ở đây nguồn em sử dụng là nguồn điện 220V nối qua mạch giảm áp cấp điện áp hoạt
động cho VDK.
-Điện áp từ VDK cấp cho động cơ, LED7 đoạn, KEYPAD, LCD

E. Khối băm xung PWM
- thay đổi độ rộng xung, tần số f
F. Khối động lực
-Khối động lực có chức năng vận hành động cơ theo xung được cấp.
- Lựa chọn: động cơ 1 chiều (Motor).
- Động cơ:
-Cách đấu nối động cơ trong mạch mô phỏng


Hình 2.7 Sơ đồ đấu nối động cơ trong mạch mô phỏng
-Khai báo:
long map(long x, long in_min, long in_max, long out_min, long out_max)
{
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}
Set up:
void setup(){ //----------------SETUP DIEU KHIEN DONG CO---------------set_tris_c(0xff);
setup_adc(ADC_CLOCK_DIV_32);
setup_adc_ports(AN0);
set_adc_channel(0);
delay_us(100);
setup_timer_2(T2_DIV_BY_16,254,1);
setup_ccp1(CCP_PWM);
setup_ccp2(CCP_PWM);
set_pwm1_duty(0);
set_pwm2_duty(0);

}


-Sơ đồ nguyên lý mạch

Hình 2.8 Sơ đồ nguyên lý toàn mạch

2.2.3Nguyên lý hoạt động:
-Khi cấp nguồn 5-12V cho PIC16f8877a Chân RB của VDK là chân được nối với các
chân của KEDPAD và RESPACK-8, chân RA3, RA4, RA5, RC4, RC5, RC6, RC7 được
nối với các chân của LCD, chân RD và RA0, RA1, RA2 của VDK là chân sẽ được nối
với các chân LED 7 đoạn. Từ tín hiệu nhận được của KEYPAD được gửi tới chân RB
của vi điều khiển PIC16f877a gửi tín hiệu theo cấp độ tới chân CP1 và CP2 của RC để
điều khiển động cơ qua L298 cấp tốc độ được hiển thị lên LCD, tốc độ hiển thị lên LED
7 thanh (7SEG-MPX3-CA).


CHƯƠNG 3:
KẾT QUẢ THỰC HIỆN VÀ KẾT LUẬN
1. Kết luận

-Mạch điều khiển động cơ sử dụng KEYPAD đã đạt được yêu cầu đặt ra. Kết quả
điều khiển chính xác. Hoạt động đúng định mức.
-Module nguồn: Hoạt động ổn định, không có hiện tượng sự áp. Đáp ứng được
dịng điện cho toàn bộ mạch.
-Module điều khiển động cơ L298: Cấp xung vng có chu kỳ xác định. Ngõ ra
chân OUT1 và OUT2 cấp xung cho động cơ điều khiển động cơ có độ chính xác
cao
-Module hiển thị: LED 7 đoạn hiển tốc độ hiện tại của động cơ
-Module vi xử lý: PIC16F877A hoạt động tốt trong việc giao tiếp với các module

mạch tạo xung vuông module hiển thị LED 7 đoạn, các chân VO hoạt động tốt.
Tần số để vi điều khiển PIC16F877A hoạt động 20MHz
-Mạch điều khiển động cơ ngày càng được sử dụng rộng rãi, và được ứng dụng
trong các thiết bị như: máy bơm, quạt….
- Hạn chế của đề tài: Do thời gian có hạn và kiến thức còn hạn chế nên mạch chỉ
dừng lại ở mức độ hiển thị tốc độ, giá thành cao.
2. Hướng phát triển
-Hướng phát triển đầu tiên là tăng thêm nhiều cấp tốc độ động cơ , và điều khiển
nhiều động cơ giao tiếp LED 7 đoạn với Port (. Sử dụng phương pháp chốt dữ
liệu cho LED 7 đoạn. Vì vậy số lượng sản phẩm nhiều nhất là 1 động cơ .
Hướng phát triển tiếp theo là điều khiển 2 động cơ thì giao tiếp LED 7 đoạn và sử
dụng phương pháp quét LED hiển thị tốc độ
Hướng phát triển tiếp theo là điều khiển nhiều động động cơ khác nhau .


PHỤ LỤC
CODE:
#include <16F877A.h>
#device ADC=10;
#use delay(clock=20M)
#define LCD_ENABLE_PIN PIN_A5
#define LCD_RS_PIN PIN_A3
#define LCD_RW_PIN PIN_A4
#define LCD_DATA4 PIN_C4
#define LCD_DATA5 PIN_C5
#define LCD_DATA6 PIN_C6
#define LCD_DATA7 PIN_C7
#include <lcd.c>
long map(long x, long in_min, long in_max, long out_min, long out_max)
{

return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}
int8 i=0,j=0,q=0, e=0,r=0,t=0,y=0,u=0,a=0,h=0;
int8 maled[]={0xC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};
void hthi(){//----------------QUET LED---------------output_D(maled[j/100]);
output_HIGH(pin_A0);
delay_ms(1);
output_LOW(pin_A0);
output_D(maled[j%100/10]);
output_HIGH(pin_A1);
delay_ms(1);
output_LOW(pin_A1);
output_D(maled[j%10]);
output_HIGH(pin_A2);
delay_ms(1);
output_LOW(pin_A2);
}
void setup(){ //----------------SETUP DIEU KHIEN DONG CO---------------set_tris_c(0xff);
setup_adc(ADC_CLOCK_DIV_32);
setup_adc_ports(AN0);
set_adc_channel(0);
delay_us(100);
setup_timer_2(T2_DIV_BY_16,254,1);
setup_ccp1(CCP_PWM);
setup_ccp2(CCP_PWM);
set_pwm1_duty(0);


set_pwm2_duty(0);
}

int quet_phim(){//----------------QUETPHIM---------------int8 mp=0xFF;
int8 quet[]={0xEF,0xDF,0xBF,0x7F};
for(int8 cot=0;cot<=3;cot++){
OUTPUT_B(quet[cot]);
while(!input(pin_b0)){
hthi();
mp=cot*1+1;
}
while(!input(pin_b1)){
hthi();
mp=cot*1+4;
}
while(!input(pin_b2)){
hthi();
mp=cot*1+7;
}
while(!input(pin_b3)){
hthi();
mp=cot*1+17;
}
}
return mp;
}
void cap1(){//----------------KHAI BAO CAC CAP TOC DO---------------j=50;
}
void cap2(){
j=70;
}
void cap3(){
j=90;

}
void cap4(){
j=100;
}
void cap5(){
j=120;
}
void cap6(){
j=150;
}
void cap7(){


j=200;
}
void cap8(){
j=230;
}
void cap9(){
j=250;
}
void main()
{
setup();
set_tris_a(0xf0);
set_tris_d(0x00);
set_tris_b(0x0F);
set_tris_e(0xfF);
OUTPUT_c(0x00);
lcd_init();

lcd_gotoxy(0,1);
printf(lcd_putc,"
DIEU KHIEN DONG CO");
lcd_gotoxy(1,0);
printf(lcd_putc,"GIAO DIEN NGUOI DUNG ");
delay_ms(2000);
lcd_putc('\f');
while(TRUE)
{
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:
TU 1->9");
Lcd_gotoxy(8,0);
printf(lcd_putc,"=>");
hthi();
int8 maphim=quet_phim();
if(maphim!=0xFF){
if(maphim==18){
maphim=0;
}
if(maphim==1){//----------------KHAI BAO PHIM SO 1---------------i++;
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(i==1){
hthi();
int8 maphim1=quet_phim();



if(maphim1!=0xFF){
}
if(maphim1==19){
i=0;
lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
}
else if(maphim1==17){
cap1();
hthi();
i=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}
}
if(maphim==2){//----------------KHAI BAO PHIM SO 2---------------q++;
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(q==1){
hthi();
int8 maphim2=quet_phim();
if(maphim2!=0xFF){
}
if(maphim2==19){
q=0;

lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
}
else if(maphim2==17){
cap2();
hthi();
q=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}
}
if(maphim==3){//----------------KHAI BAO PHIM SO 3---------------e++;


Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(e==1){
hthi();
int8 maphim3=quet_phim();
if(maphim3!=0xFF){
}
if(maphim3==19){
e=0;
lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");

}
else if(maphim3==17){
cap3();
hthi();
e=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}
}
if(maphim==4){//----------------KHAI BAO PHIM SO 4---------------r++;
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(r==1){
hthi();
int8 maphim4=quet_phim();
if(maphim4!=0xFF){
}
if(maphim4==19){
r=0;
lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
}
else if(maphim4==17){
cap4();
hthi();



r=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}
}
if(maphim==5){//----------------KHAI BAO PHIM SO 5---------------t++;
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(t==1){
hthi();
int8 maphim5=quet_phim();
if(maphim5!=0xFF){
}
if(maphim5==19){
t=0;
lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
}
else if(maphim5==17){
cap5();
hthi();
t=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}

}
if(maphim==6){//----------------KHAI BAO PHIM SO 6---------------y++;
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(y==1){
hthi();
int8 maphim6=quet_phim();
if(maphim6!=0xFF){
}
if(maphim6==19){


y=0;
lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
}
else if(maphim6==17){
cap6();
hthi();
y=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}
}
if(maphim==7){//----------------KHAI BAO PHIM SO 7---------------u++;
Lcd_gotoxy(3,1);

printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(u==1){
hthi();
int8 maphim7=quet_phim();
if(maphim7!=0xFF){
}
if(maphim7==19){
u=0;
lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
}
else if(maphim7==17){
cap7();
hthi();
u=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}}
if(maphim==8){//----------------KHAI BAO PHIM SO 8---------------a++;
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}



while(a==1){
hthi();
int8 maphim8=quet_phim();
if(maphim8!=0xFF){
}
if(maphim8==19){
a=0;
lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");}
else if(maphim8==17){
cap8();
hthi();
a=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}}
if(maphim==9){//----------------KHAI BAO PHIM SO 9---------------h++;
Lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
lcd_gotoxy(11,0);
lcd_putc(maphim+0x30);
}
while(h==1){
hthi();
int8 maphim9=quet_phim();
if(maphim9!=0xFF){
}
if(maphim9==19){
h=0;

lcd_putc('\f');
lcd_gotoxy(3,1);
printf(lcd_putc,"CHON CAP TOC DO:");
}
else if(maphim9==17){
cap9();
hthi();
h=0;
set_pwm1_duty(j);
set_pwm2_duty(0);
}
}
}
}
}


DANH MỤC HÌNH ẢNH
Hình 2.1 Sơ đồ khối mạch đếm sản phẩm……………………………..................3
Hình 2.2 Ký hiệu và hình ảnh led 7 đoạn………………………………...............4
Hình 2.3 Sơ đồ đấu nối LED 7 đoạn trong mạch mơ phỏng…………...………...4
Hình 2.4 Sơ đồ đấu nối lcd trong mạch mơ phỏng……………………………….5
Hình 2.5 Sơ đồ đấu nối keypad trong mạch mơ phỏng………………………......6
Hình 2.6: Cấu trúc tổng qt của PIC16F877A trong phần mềm Proteus……….7
Hình 2.7 Sơ đồ đấu nối động cơ trong mạch mơ phỏng…………………….…....8
Hình 2.8 Sơ đồ ngun lý toàn mạch…………………………………………….9




×