mọi người cho mình hỏi mình muốn dùng Píc6f877a để điều chế 2 xung từ 2 chân ccp1 và ccp2 nhưng có tần số khác nhau vd như 10Khz và 15khz thì có làm được không và làm như thế nào.Và nếu không được thì mình có thể làm cho xung1 high-->low nhưng xung2 thì low--> high được không. tức là trong 1 chu kỳ thì mức thấp trước juj mới đến mức cao ấy?
Thông báo
Collapse
No announcement yet.
Pwm pic16f877a
Collapse
X
-
Bác ơi cho e xin nốt cái công thức tính điện áp điNguyên văn bởi caovanhuong Xem bài viếtCode:/* Công thuc tinh goc kich triac: do 1 buoc nhay ADC la 4.88mV => khi ngo vao ADC =5V thi gia tri thu duoc la 1023. tan so luoi dien la 50Hz => 1/2 chu ky=10ms => goc kich lon nhat tuong ung 180do là 10ms. giá tr? sau khi chuyehn doi ADC la 1023. ma ta chi can 10ms => ta chia 1023/102.3 se ra duoc 10ms. 180do=10ms => ap dung cong quy tac tam suat ta tinh duoc goc kich = (thoi gian kich*180)/10. vd sau khi phat hien diem zero va sau do 3ms ta kich triac thi goc_kich= 3*180/10=54do Công thuc tinh nhiet do: LM35 co muc dien ap ra la 10mV/oC. 1 buoc ADC la 4.88mV => ap dung cong tac tam suât ta tinh duoc nhiet_do= (gai tri ADC*4.88)/10 vd: nhiet do la 30oC => dien ap ra cua LM35 la 300mV => ADC thu duoc =61 => nhiet_do=(61.5*4.88)10=30oC Công thuc tinh dien ap:*/

bác có mạch mô phỏng thì cho e xin luôn đc không
e đang làm bài tập lớn phần đo điện áp dùng con pic này, mong bác giúp đỡ
tks bác trước. nếu tiên bác gửi luôn vào mail cho e đc không, cảm ơn bác nhiều: ngocnam.dhgt@gmail.com
Comment
-
Anh Cao Văn Hưởng còn cái mạch nguyên lý không cho em tham khảo với ạ....mail của em: hoxuanson16091991@gmail.com. Thank anh trước...!!Nguyên văn bởi caovanhuong Xem bài viếtnếu thay đổi góc kích của triac bằng PWM thì không được. bác chỉ cần kích bình thường, nhưng phải tính toán được góc kích. tần số lưới điện là 50Hz => T=1/f=1/50=20ms => 1/2 T là 10ms tương ứng với 180 độ.
bác tham khảo cái này em viết cho con PIC16F877A, đo nhiệt độ, điện áp, và hiển thị góc kích lên LCD
Code://=================================================================== ========== // Ten chuong trinh: Hien thi nhiet do, dien ap, goc pha // Nguoi thuc hien : Cao Van Huong // Email : caovanhuong@webdien.com // Cell phone : // Ngon ngu : CCS-C 4.107 // Ngay thuc hien : 3/5/2010 //****************************************************************************** // MCU : PIC16F877A // Crystal : 20MHz // Sensor : LM35D // Display : LCD 2x16 //****************************************************************************** // Ngay hoan thanh : 3/5/2010 // Ky ten : Cao Van Huong //=================================================================== ========== #include <16F877A.h> #include <def_877a.h> #fuses NOWDT,HS,NOPUT,NOPROTECT,NODEBUG,NOBROWNOUT,NOLVP,NOCPD,NOWRT #device *=16 adc=10 //khoi tao ADC 10bit #use delay(clock=20000000) #include <lcd_lib.c> //khai bao chuong trinh con LCD #bit led_bao=portb.4 //gán led bao hieu la portb.4 #bit xung_kich=portc.0 //gán xung kich triac la portc.0 int8 nhiet_do; int16 a,b; float goc_kich,dien_ap,c; #int_ext //khoi tao ngat ngoai void ngat_ngoai() //chuong trinh xu ly ngat khi phat hien diem zero { delay_ms(c); //c la goc kich xung_kich=1; //tao xung kich delay_us(10); //thoi gian ton tai xung_kich xung_kich=0; //ngat xung kich } // ***********************khai báo các chuong trinh con************************* void do_nhiet_do(); void do_dien_ap(); void do_goc_kich(); void bao_dong(); void hien_thi(); //**************************chuong trinh chinh********************************** void main() { trisa=0x0b; //khoi tao thanh ghi trisa co A0 A1 A3 nhan analog trisb=0x01; //khoi tao thanh ghi trisb co bit b0 nhan du lieu trisc=0x00; //khoi tao thanh ghi trisc xuat du lieu trisd=0x00; //khoi tao thanh ghi trisd xuat du lieu setup_ADC_ports(AN0_AN1_AN3); //cau hinh AN0 AN1 AN3 nhan analog, Vref=Vdd setup_ADC(adc_clock_internal); enable_interrupts(int_EXT); //cho phep ngat ngoai enable_interrupts(GLOBAL); //cho phep ngat toan cuc ext_int_edge(L_TO_H); //khai bao ngat ngoai tac dong canh len lcd_init(); // khoi tao lcd lcd_putcmd(0x80); lcd_putc("Do an tot nghiep"); lcd_putcmd(0xc0); lcd_putc("SV:............."); delay_ms(1000); while(1) { do_nhiet_do(); //goi chuong trinh con do_nhiet_do do_dien_ap(); //goi chuong trinh con do_dien_ap do_goc_kich(); //goi chuong trinh con_do_goc_kich bao_dong(); //goi chuong trinh con bao_dong hien_thi(); // goi chuong trinh con _hien_thi } } // ***************************chuong trinh con********************************** void do_nhiet_do() //chuong trinh con do nhiet do { set_ADC_channel(0); //doc du lieu analog tu kenh AN0,do nhiet do delay_us(10); a=read_adc(); //luu du lieu ADC vao a nhiet_do=(a*4.88)/10; } void do_dien_ap() //chuong trinh con do dien ap { set_ADC_channel(1); //doc du lieu analog tu kenh AN1, do dien ap delay_us(10); b=read_adc(); //luu du lieu ADC doc tu AN1 vào b dien_ap=b*0.21506; } void do_goc_kich() //chuong trinh con do goc kich { set_ADC_channel(3); //doc du lieu analog tu kenh AN3, do goc kich delay_us(100); c=read_adc(); //luu du lieu ADC doc tu kenh AN3 vào c c=c/102.3; //chu ky luoi dien la 10ms => goc kich lon nhan la 180 ung voi 10ms goc_kich=(c*180)/10; //10ms ung voi 180 do => ap dung quy tac tam xuat de tim goc kich } void bao_dong() //chuong trinh con bao dong { if(nhiet_do>=70) { led_bao=1; } else { led_bao=0; } } void hien_thi() //chuong trinh con hien thi { lcd_putcmd(0x80); //gui lenh dieu khien lcd printf(lcd_putc,"Nd:%u Volt:%fV",nhiet_do,dien_ap); //in gia tri cua nhiet do,dien ap len lcd lcd_putcmd(0xc0); //gui lenh dieu khien lcd printf(lcd_putc,"goc_kich:%f",c); //in gia tri goc kich len man hinh lcd } /* Công thuc tinh goc kich triac: do 1 buoc nhay ADC la 4.88mV => khi ngo vao ADC =5V thi gia tri thu duoc la 1023. tan so luoi dien la 50Hz => 1/2 chu ky=10ms => goc kich lon nhat tuong ung 180do là 10ms. giá tr? sau khi chuyehn doi ADC la 1023. ma ta chi can 10ms => ta chia 1023/102.3 se ra duoc 10ms. 180do=10ms => ap dung cong quy tac tam suat ta tinh duoc goc kich = (thoi gian kich*180)/10. vd sau khi phat hien diem zero va sau do 3ms ta kich triac thi goc_kich= 3*180/10=54do Công thuc tinh nhiet do: LM35 co muc dien ap ra la 10mV/oC. 1 buoc ADC la 4.88mV => ap dung cong tac tam suât ta tinh duoc nhiet_do= (gai tri ADC*4.88)/10 vd: nhiet do la 30oC => dien ap ra cua LM35 la 300mV => ADC thu duoc =61 => nhiet_do=(61.5*4.88)10=30oC Công thuc tinh dien ap:*/
Comment
Bài viết mới nhất
Collapse
-
bởi chinhnguyen9Công thức
Gain (dB) = 20 × log₁₀(A)
Thí dụ 1; 60dB
log₁₀(A)=60/20=3
⇒ A=V_out / V_in = 10³ = 1.000
Thí dụ 2; 100dB
log₁₀(A)=100/20=5
⇒ A=V_out / V_in = 105 = 100.000
Tí dụ 3; LM 358
Large Signal Open Loop Voltage Gain AVOL V/mV RL = 2.0...-
Channel: Hướng dẫn sử dụng diễn đàn
Hôm qua, 08:44 -
-
Trả lời cho Mạch 3s bị giảm điện áp đầu rabởi minhtri0405chả biết bạn xử lý được chưa , kích sạc hoặc điện áp > điện áp khối pin vào 2 chân P - P+ , nhiều mạch phải yêu cầu có kích lần đầu sau đó mới chạy...
-
Channel: Điện tử dành cho người mới bắt đầu
18-03-2026, 10:01 -
-
bởi minhtri0405đây có phải là 1 cách để test mosfet xịn hay dỏm khi mua đồ tàu không nhỉ , vì ko thể đập ra để coi lõi rồi trả hàng được....
-
Channel: Tâm tình dân kỹ thuật
18-03-2026, 09:57 -
-
Trả lời cho Giúp mình vẽ sơ đồ và phân tích nguyên lý làm việc của khảo sát các mạch nguồn ổn áp vớibởi Tuyenvc345
-
Channel: Hỗ trợ học tập
16-03-2026, 18:05 -
-
Trả lời cho Giúp mình vẽ sơ đồ và phân tích nguyên lý làm việc của khảo sát các mạch nguồn ổn áp vớibởi Tuyenvc345
-
Channel: Hỗ trợ học tập
16-03-2026, 18:04 -
-
bởi bqvietDiễn đàn vốn vắng, muốn vào viết bài trả lời chút nhưng cứ thấy luồng nào thành viên này mở thì cũng đồng thời xuất hiện ở Otofun, thế là chùn tay ... Thôi thì dientuvietnam không thể so sánh được về độ phổ cập, biết thân biết phận vậy.
-
Channel: Tâm tình dân kỹ thuật
16-03-2026, 17:49 -
-
bởi chinhnguyen9So sánh sóng 2 mạch nguồn Push-pull
· Sóng vuông giửa 2 cực D của mạch Pushpull trong module inverter 24-220V sine giả của TQ. Mạh điện này khá đặc biêt ở chổ, không thấy mạch snubber mà hiêu quả triêt sóng hài quá tốt dù hoạt...-
Channel: Nguồn!
16-03-2026, 14:27 -
-
bởi chinhnguyen9Mạch điên bếp tù gộm 2 khối:
Khối điêu khiển:
-Thiết lập công suất nấu
-Thiết lập thời gian nấu
-Kiểm tra có đặt nồi hay không, đúng loại hay không?
-Có quá nhiệt không?
Khối công suất:
- Nắn+ lọc điên AC ra 310VDC +loọc nhiểu...-
Channel: Hướng dẫn sử dụng diễn đàn
16-03-2026, 14:05 -

Comment