Nguyên văn bởi toan88_tnt
Xem bài viết
Thông báo
Collapse
No announcement yet.
AVR và triac
Collapse
X
-
ơ,vẫn phải có ngắt bắt điểm 0 chứ?Mà có nhất thiết phải dùng timer không vậy ,liệu có thể chơi thẳng anh delay_us() hoặc delay_ms() đựoc không vậy.Nguyên văn bởi Katecka Xem bài viếtOK đúng rồi. Giá trị đầu ra cao hay thấp do OCR quy định mà. Cứ quất OCR= xxx không cần can thiệp ngắt véo làm gì, mọi thứ có phần cứng lo
Sườn chương trình như này:
Xin mọi người giúp tiếp!int i=5;(i từ 0 đến 9)
chương trình ngắt ngoài()//sườn lên
{
delay_ms(i);//trẽ i ms rồi tạo xung mở triac
triac=1;//mo triac
delay_us(100);
triac=0;//tắt xung cực G
}
void main()
{
if(nhan_tang==0)// nhấn nút tăng
while(!nhan_tang);chờ nhả nút nhấn tăng
i--;
if(nhan_giam==0)// nhấn nút giảm
while(!nhan_giam);chờ nhả nút nhấn giảm
i++;
if(i>=9) i=9;
if(i<=0) i=0;
}Gian Khó Cuộc Đời Nuôi Ta Lớn!
Giang Hồ Đẫm Máu Dạy Ta Khôn!
(@_@)______________(@_@)
Comment
-
cứu cứu!!!!
xin moị người chỉ giúp,mạch này sai ở đâu mà khi em đo chân INT0 (cho chưong trình phục vụ ngắt mà không thấy gì cả), chẳng thấy có hiện tựong ji` cả.

Đây là đoạn code viết bằng codevision,lúc cài đặt,em chọn ngắt bàng sườn lên:
Xin giúp đỡ,cảm ơn!
Chip type : ATmega8
Program type : Application
AVR Core Clock frequency: 4.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
************************************************** ***/
#include <mega8.h>
#include <delay.h>
#define triac PORTB.1
#define tang PINC.0
#define giam PINC.1
int i=5;
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
{
delay_ms(i);
triac=0;
delay_us(100);
triac=1;
PORTB.0=1;//cai này để kiểm tra xem co' ngắt không
delay_ms(100);
}
void main(void)
{
PORTB=0x00;
DDRB=0xFF;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
// External Interrupt(s) initialization
// INT0: On
// INT0 Mode: Rising Edge
// INT1: Off
GICR|=0x40;
MCUCR=0x03;
GIFR=0x40;
// Global enable interrupts
#asm("sei")
while (1)
{
// Place your code here
if(tang==0)
while(!tang);
--i;
if(giam==0)
while(!giam);
++i;
if(i<=0) i=0;
if(i>=9) i=9;
};
}Gian Khó Cuộc Đời Nuôi Ta Lớn!
Giang Hồ Đẫm Máu Dạy Ta Khôn!
(@_@)______________(@_@)
Comment
-
Tôi hay dùng LM393 kèm theo một trở treo 4,7k lên 5V. Nếu bạn dùng LM358 thì bạn nên dùng một trở 10k kéo xuống đất(bạn dùng sườn lên mà). Chắc ăn hơn bạn dùng trở phân áp tạo một điện áp khoảng 0,5 volt ở chân 2 của LM358, làm thế này để cho chân ra 1 bằng 0 khi áp vào chân 3 < 0,5 volt.Nguyên văn bởi toan88_tnt Xem bài viếtxin moị người chỉ giúp,mạch này sai ở đâu mà khi em đo chân INT0 (cho chưong trình phục vụ ngắt mà không thấy gì cả), chẳng thấy có hiện tựong ji` cả.

Đây là đoạn code viết bằng codevision,lúc cài đặt,em chọn ngắt bàng sườn lên:
Xin giúp đỡ,cảm ơn!
Tôi cũng chưa rõ switch của bạn đấu đúng chưa, và mạch reset thiếu trở 10k kéo lên 5V.
Bạn thử khắc phục xem, nếu có gì tôi sẽ thảo luận tiếp với bạn.
Chúc bạn thành công!!!
Comment
-
Hi,
Thông thường những project này thì người ta dùng trực tiếp điện lưới luôn, không dùng biến áp để cấp nguồn cho VĐK như vậy mạch sẽ gọn nhẹ hơn. Hãy tưởng tượng bạn dùng để điều chỉnh tốc độ quạt mà phải gắn thêm một hộp điều khiển bên ngoài nữa thì rất chuối, nếu kích thước mạch đủ nhỏ để nhét toàn bộ vào chân đế của máy quạt sẽ tốt hơn, vã lại các mạch này thường thao tác bằng điều khiển không dây (hồng ngoại hoặc RF) hoặc đơn giản là các phím bấm nên cũng chẳng có nguy hiểm gì cả. Nếu bác muốn làm theo kiểu này thì bác search tài liệu Transformerless power supply sẽ có những thông tin bổ ích. Nếu muốn cụ thể hơn có thể search tài liệu giao tiếp X10 dùng PIC của Microchip. Nếu bác muốn dùng theo kiểu của bác củng tốt nhưng mạch phát hiện điểm 0 (zero detector) dùng luôn 1 điện trở đấu thẳng từ nguồn xoay chiều luôn khỏi cần dùng BJT thì sẽ phát hiện chính xác điểm 0 hơn.
Thân ái.Đường đến những ngày vinh quang không còn xa
Con đường chúng ta... chúng ta đã chọn.
Comment
-
Uhm,mình cũng hướng làm điều khiển quạt bằng sóng RF mà,phần RF thì mình giao tiếp điều khiển được qua các LED đơn rồi, còn đến mấy ông Triac này thìa bị mắc chưa được.Ý bạn là đấu thẳng vào chân ra cầu diode bằng 1 R vào chân INT ah.Thế có ổn không.vì mình search thì thấy mạch Zezo detector này người ta thường cho qua một bộ so sánh OA mà.Nguyên văn bởi Hard Xem bài viếtHi,
Thông thường những project này thì người ta dùng trực tiếp điện lưới luôn, không dùng biến áp để cấp nguồn cho VĐK như vậy mạch sẽ gọn nhẹ hơn. Hãy tưởng tượng bạn dùng để điều chỉnh tốc độ quạt mà phải gắn thêm một hộp điều khiển bên ngoài nữa thì rất chuối, nếu kích thước mạch đủ nhỏ để nhét toàn bộ vào chân đế của máy quạt sẽ tốt hơn, vã lại các mạch này thường thao tác bằng điều khiển không dây (hồng ngoại hoặc RF) hoặc đơn giản là các phím bấm nên cũng chẳng có nguy hiểm gì cả. Nếu bác muốn làm theo kiểu này thì bác search tài liệu Transformerless power supply sẽ có những thông tin bổ ích. Nếu muốn cụ thể hơn có thể search tài liệu giao tiếp X10 dùng PIC của Microchip. Nếu bác muốn dùng theo kiểu của bác củng tốt nhưng mạch phát hiện điểm 0 (zero detector) dùng luôn 1 điện trở đấu thẳng từ nguồn xoay chiều luôn khỏi cần dùng BJT thì sẽ phát hiện chính xác điểm 0 hơn.
Thân ái.
Xin các bạn giúp tiếp!
Cảm ơn nhiều!Gian Khó Cuộc Đời Nuôi Ta Lớn!
Giang Hồ Đẫm Máu Dạy Ta Khôn!
(@_@)______________(@_@)
Comment
-
Vì đầu vào Into0 của vi điều khiển cũng là đầu vào số nên nếu đưa tín hiệu tương tự vào nó vẫn hiểu là 1 và 0 cơ mà cần j OA cho vuông cạnh xung nữa, độ chệch điểm 0 mình có thể sử lý trong chương trìnhThiết kế chế tạo các loại máy xoáy nắp, chiết rót định lượng dùng trong dược phẩm và thực phẩm.
Comment
-
tức là cho thẳng chân dương cầu Diode vào INT0 mà không qua OA, hay tran gì hả bạn. Bạn có thể nói rõ hơn giúp mình không.Nguyên văn bởi Le Thi Bich Xem bài viếtVì đầu vào Into0 của vi điều khiển cũng là đầu vào số nên nếu đưa tín hiệu tương tự vào nó vẫn hiểu là 1 và 0 cơ mà cần j OA cho vuông cạnh xung nữa, độ chệch điểm 0 mình có thể sử lý trong chương trìnhGian Khó Cuộc Đời Nuôi Ta Lớn!
Giang Hồ Đẫm Máu Dạy Ta Khôn!
(@_@)______________(@_@)
Comment
-
Cho qua OA tức là thêm một bộ so sánh nhằm mục đích tạo ra một cạnh xung tương đối vuông (chuẩn hóa cạnh xung) vì nếu cho thẳng đầu vào thì cạnh xung dốc (hình sin), Nhưng chân vi điều khiển nhận vào là tín hiệu số luôn có một mốc điện áp, cứ trên mốc đó nó hiểu là 1 dưới mốc đó nó hiều là 0 mặc kệ cạnh đầu vào có dốc đứng hay dốc thoai thoải,
Cho thêm OA càng tốt không sao cả nhưng không cần OA vẫn hoạt động được bạn cho chân dương cầu đi ốt qua một điện trở khoảng 100 Omh cẩn thận thì thêm một con zenner 5V là được. Nên chọn xung vào int0 là cạnh xuống sau đó thêm một tí tẹo delay cho đúng điêm 0 thật là okThiết kế chế tạo các loại máy xoáy nắp, chiết rót định lượng dùng trong dược phẩm và thực phẩm.
Comment
-
ôk.Mình đã xử lí được ngắt, bắt điểm 0 rồi.Nhưng không hiểu triac sao ý.
Mình cho chân "triac=0" mà tải là 1 bóng đèn quả nhót không sáng.Lạ một điều là khi dùng 1 vật kim loại chạm vào chân G thì đèn lóe sáng rồi tắt ngay.Mình lắp mạch như trong datasheet của MOC3020.
Xin chỉ giúp.
Cảm ơn các bạn nhiều!
Gian Khó Cuộc Đời Nuôi Ta Lớn!
Giang Hồ Đẫm Máu Dạy Ta Khôn!
(@_@)______________(@_@)
Comment
-
Cảm ơn mọi người, mình mở đc triac rồi nhưng chác bắt 0 chưa chính xác nên đèn bị nháy.Phải không nhỉ.
Đây là đoạn code chương trình trong phần ngắt sườn lên để điều khiển chân "triac".khi có ngắt t tạo một xung kích ra chân "triac" mà sao đèn quả nhót cứ nhấp nháy.
xin hãy chỉ giúp!interrupt [EXT_INT0] void ext_int0_isr(void)
{
// Place your code here
delay_ms(4);
triac=0;
delay_us(10);
triac=1;
}Last edited by toan88_tnt; 25-04-2010, 07:50.Gian Khó Cuộc Đời Nuôi Ta Lớn!
Giang Hồ Đẫm Máu Dạy Ta Khôn!
(@_@)______________(@_@)
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Tìm bạn thân quen cũ.bởi mèomướpDạ cháu đọc 1 số bài viết của bác vi... thì nhớ đc bác là 1 cụ già gần 80 tuổi, sức khỏe yếu. Đam mê và làm vc về kỹ thuật điện. Thích thơ ca. Có nhìu bài chia sẻ quý báu cho thế hệ sau. Tuy nhiên già rồi nên khái tính, bảo thủ, nhưng vẫn đáng kính ạ... còn lão nhathung... thì kiểu bố đời
-
Channel: Tâm tình dân kỹ thuật
31-07-2026, 12:52 -
-
bởi lvhnHãng nào tùy thích thôi bác! bây giờ các hãng đều hỗ trợ xem qua máy tính hay điện thoại đều được. Gắn Trước tiên mua về cắm nguồn set ip hết xong hãy lắp lên, cam poe chỉ cần 4 lõi là hoạt động bình thường nên 1 dây kéo cho 2 cam vẫn ok
-
Channel: Tâm tình dân kỹ thuật
30-07-2026, 15:49 -
-
Trả lời cho Tìm bạn thân quen cũ.bởi lvhnNhớ không nhầm thì lúc còn đi học có gặp chú 1 lần cf bãi xe Nguyễn Kim, giờ quán cf đó nghỉ bán rồi
-
Channel: Tâm tình dân kỹ thuật
30-07-2026, 15:44 -
-
Trả lời cho Thắc mắc pin 21v ?bởi lvhnCon số đấy biểu thị gần đúng thôi, cái đồng hồ đó có đảm bảo chính xác hay không? pin có cục lên 4v4 vẫn bình thường. Cái gì cũng có sai số trong phạm vi không quá lớn thì không ảnh hưởng gì đâu, bàn ngay ngón ngắn ngón dài mà
-
Channel: Điện tử dành cho người mới bắt đầu
30-07-2026, 15:32 -
-
Trả lời cho Amply bị rò DC 22 voltbởi lvhnThay mấy con transisto nhỏ đầu vào, thường vi sai lỗi hay bị. Khám tổng quát chân các linh kiện xem có bị rỉ sét nhiều không?
-
Channel: Điện thanh
30-07-2026, 15:24 -
-
bởi dinhthuong92Mạch này hiệu suất ra led đạt khoảng 90.7% tại 12V in, 40W out.
-
Channel: Nguồn!
27-07-2026, 10:15 -
-
bởi dinhthuong92Có lẽ nguồn viết bài này chỉ mang tính định tính để nói rằng cần thay đổi tổng trở tải để có Pmax chứ trình bày chưa chi tiết và thấu đáo một cách định lượng. Công thức tổng quát phải có mặt L mới được, và nói là "tổng...
-
Channel: Nguồn!
27-07-2026, 10:09 -
-
Trả lời cho [Chia sẻ] Tổng hợp các công ty AI Việt Nam đang làm gì thật sự — Từ voicebot, computer vision đến AI agentsbởi nguyendinhvanCàng ngày, CNTT càng trở nên lôi thôi , rách việc.
Cái AI và Ge... trên trình duyệt chỉ tổ làm vướng mắt, mất thì gian.
Tôi toàm phải mất cộng tắt nó đi.-
Channel: Xu hướng, nhu cầu và thị trường
25-07-2026, 14:59 -

Comment