em có bo mạch quảng cáo 31 cổng(pic 28 chân) em thấy lạ chỗ là nó PWM được tất cả 31 cổng (có 2 con logic) để mở rộng cổng,không hiểu làm kiểu gì ta khi chỉ có 2 kênh PWM nó không PWM nguồn đâu nha
Thông báo
Collapse
No announcement yet.
PWM tất cả các chân của pic
Collapse
X
-
Cái này đơn giản mà. Ví dụ dùng cổng AND hoặc OR thì dùng 1chân ON/OFF, 1 chân PWM. Nếu dùng 74HC595 thì có thể PWM vào chính chân OE.
Bạn hãy xem con mở rộng cổng là gì, xem chân RST hoặc Enable ở đâu rồi dùng oscilloscope kiểm tra là thấy ngay.
Comment
-
cám ơn 2 cao thủ đã trả lời !
-bác DuyPhi sao lại dùng nick này vậy
-em thì dùng 1 con fet treo ở đầu nguồn PWM all bo luôn
-em thắc mắc là những chân không cho vào 595 mà nó vẫn PWM được ,tầm khoảng hơn chục chân không qua 595 mà vẫn PWM all bo chả nhẽ nó quét nhanh sao ? giải thích giúp em vớiSỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI
Comment
-
Thực tế để driver cho led tui ít khi dùng phần cứng vì k đủ chân PWM, với lại khi cần thay đổi độ rộng xung cho các chân khác nhau thì k được nên tui dùng phần mềm k à bác, dĩ nhiên tần số đạt được là k cao nhưng ứng dụng cho led thì ok.
Comment
-
Nguyên văn bởi kevo1tinh Xem bài viếtThực tế để driver cho led tui ít khi dùng phần cứng vì k đủ chân PWM, với lại khi cần thay đổi độ rộng xung cho các chân khác nhau thì k được nên tui dùng phần mềm k à bác, dĩ nhiên tần số đạt được là k cao nhưng ứng dụng cho led thì ok.SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI
Comment
-
Biến trở kết nối chân ADC nhé, giá trị này tùy chỉnh độ rộng xung hoặc tần số nha bác. Thông thường tui tùy chỉnh độ rộng xung, còn tần số tui cho cố định. Khi lập trình led, vì phải tạo hiệu ứng cho nhiều PIN nên tui khai báo 1 mảng lưu trạng thái của PIN với độ lớn tương ứng số PIN sử dụng, VD: PIN_PRE[31], trong đó PIN_PRE[0]....PIN_PRE[5] dành cho cụm led A, PIN_PRE[6]....PIN_PRE[10] dành cho cụm led B,.....Việc tạo hiệu ứng được thực hiện trên mảng này nha.
Tạo 1 hàm xuất trạng thái ra chân VXL, vd:
void xuat_pin()
{
output_bit(PIN_A1,PIN_PRE[0]);
output_bit(PIN_C2,PIN_PRE[1]);
.
.
.
}
để tạo PWM cần tạo 1 timer phụ, nằm trong ngắt timer, VD tui xử dụng timer 1, timer phụ lấy tên là "A_TIMER".
#int_TIMER1
void TIMER1_isr(void) //500us ngắt nha, vd thôi.
{
set_timer1(xxxxx);
if (A_TIMER>0) A_TIMER--;
else A_TIMER = nnn; //như vậy T=500us * nnn
}
sửa lại hàm xuất trạng thái
void xuat_pin()
{
if (A_TIMER<BBBB)
{
output_bit(PIN_A1,PIN_PRE[0]);
output_bit(PIN_C2,PIN_PRE[1]);
.
.
.}
else
{
output_bit(PIN_A1,OFF);
output_bit(PIN_C2,OFF);
.
.
}
giá trị BBBB lấy từ ADC thông qua 1 phép tính nào đó tùy bạn muốn.
Nếu muốn độ rộng xung cho từng PIN thì lồng hàm if vào cho mỗi lệnh output_bit(..,..)
Thân.
Comment
-
Bạn có thể tham khảo chương trình này để dễ hình dung, nhưng chương trình này chỉ dùng ADC để tăng giảm tốc độ chạy cho hiệu ứng chứ không PWM. Không đính kèm được, thôi paste vào vậy:
#define DB0 PIN_C5
#define DB1 PIN_C4
#define DB2 PIN_C3
//----------------------gia tri
#define SANG 1
#define TAT 0
//----------------------duong bien
#define ADD_DOWNDB 0 //dia chi duoi cho DB
#define ADD_UPDB 2 //dia chi tren cho DB
//----------------------noi dung 1
#define ADD_DOWN1 3 //dia chi duoi cho HU 1
#define ADD_UP1 3 //dia chi tren cho HU 1
int8 PIN[12];
int8 db_index=0,idb=0;
int8 value_adc=100;
int8 hu1_index=0;
int16 DB_TIMER=0,db_delay=500;
int16 A_TIMER=0,hu1_delay=500;
#int_TIMER1 //TA=16MHz, delay 0,5ms
void TIMER1_isr(void)
{
set_timer1(63535);
if (DB_TIMER>0) DB_TIMER--;
if (A_TIMER>0) A_TIMER--;
}
//-------------------------------------
void Db_tat()
{
int8 jdb;
for (jdb=ADD_DOWNDB;jdb<=ADD_UPDB;jdb++)
{
PIN[jdb]=TAT;
}
}
void Db_sang()
{
int8 jdb;
for (jdb=ADD_DOWNDB;jdb<=ADD_UPDB;jdb++)
{
PIN[jdb]=SANG;
}
}
void Hu1_tat()
{
int8 j1;
for (j1=ADD_DOWN1;j1<=ADD_UP1;j1++)
{
PIN[j1]=TAT;
}
}
void Hu1_sang()
{
int8 j1;
for (j1=ADD_DOWN1;j1<=ADD_UP1;j1++)
{
PIN[j1]=SANG;
}
}
//-------------------------------------
void Duong_bien()
{
int8 kdb;
if(db_index==0)
{
// db_delay=DELAY_DB_MIN;
idb=ADD_DOWNDB;
db_index=1;
}
else if (db_index==1)
{
if (DB_TIMER==0)
{
for (kdb=ADD_DOWNDB;kdb<=ADD_UPDB;kdb++)
{
PIN[kdb]=TAT;
}
PIN[idb]=SANG;
idb++;
if (idb>ADD_UPDB)
{
idb=ADD_DOWNDB;
}
DB_TIMER=db_delay;
}
}
else
{
idb=0;
}
}
//--------------------------------------
void Hu1()
{
if (hu1_index==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=1;
}
else if (hu1_index==1)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_tat();
hu1_index=2;
}
}
else if (hu1_index==2)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=3;
}
}
else if (hu1_index==3)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_tat();
hu1_index=4;
}
}
else if (hu1_index==4)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=5;
}
}
else if (hu1_index==5)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_tat();
hu1_index=6;
}
}
else if (hu1_index==6)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=7;
}
}
else if (hu1_index==7)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay * 5;
Hu1_sang();
hu1_index=1;
}
}
}
//------------------------------------
void Calculate_delay()
{
value_adc = read_adc ();
db_delay = make16(0,value_adc);
hu1_delay = db_delay *10;
db_delay = db_delay *2;
}
void Out_led()
{
//duong bien
output_bit(DB0,PIN[0]);
output_bit(DB1,PIN[1]);
output_bit(DB2,PIN[2]);
//noi dung 2
output_bit(PIN_C2,PIN[3]);
output_bit(PIN_C1,PIN[3]);
}
void main()
{
setup_adc_ports(sAN0|VSS_VDD);
setup_adc(ADC_CLOCK_INTERNAL);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);setup_wdt( WDT_2304MS);
setup_timer_1(T1_INTERNAL|T1_DIV_BY_1);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
enable_interrupts(INT_TIMER1);
enable_interrupts(GLOBAL);
set_adc_channel(0);
delay_ms(10);
//Setup_Oscillator parameter not selected from Intr Oscillotar Config tab
// TODO: USER CODE!!
while (TRUE)
{
restart_wdt();
Calculate_delay();
Duong_bien();
Hu1();
Out_led();
}
}
Comment
-
Nguyên văn bởi kevo1tinh Xem bài viếtBiến trở kết nối chân ADC nhé, giá trị này tùy chỉnh độ rộng xung hoặc tần số nha bác. Thông thường tui tùy chỉnh độ rộng xung, còn tần số tui cho cố định. Khi lập trình led, vì phải tạo hiệu ứng cho nhiều PIN nên tui khai báo 1 mảng lưu trạng thái của PIN với độ lớn tương ứng số PIN sử dụng, VD: PIN_PRE[31], trong đó PIN_PRE[0]....PIN_PRE[5] dành cho cụm led A, PIN_PRE[6]....PIN_PRE[10] dành cho cụm led B,.....Việc tạo hiệu ứng được thực hiện trên mảng này nha.
Tạo 1 hàm xuất trạng thái ra chân VXL, vd:
void xuat_pin()
{
output_bit(PIN_A1,PIN_PRE[0]);
output_bit(PIN_C2,PIN_PRE[1]);
.
.
.
}
để tạo PWM cần tạo 1 timer phụ, nằm trong ngắt timer, VD tui xử dụng timer 1, timer phụ lấy tên là "A_TIMER".
#int_TIMER1
void TIMER1_isr(void) //500us ngắt nha, vd thôi.
{
set_timer1(xxxxx);
if (A_TIMER>0) A_TIMER--;
else A_TIMER = nnn; //như vậy T=500us * nnn
}
sửa lại hàm xuất trạng thái
void xuat_pin()
{
if (A_TIMER<BBBB)
{
output_bit(PIN_A1,PIN_PRE[0]);
output_bit(PIN_C2,PIN_PRE[1]);
.
.
.}
else
{
output_bit(PIN_A1,OFF);
output_bit(PIN_C2,OFF);
.
.
}
giá trị BBBB lấy từ ADC thông qua 1 phép tính nào đó tùy bạn muốn.
Nếu muốn độ rộng xung cho từng PIN thì lồng hàm if vào cho mỗi lệnh output_bit(..,..)
Thân.SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI
Comment
-
Nguyên văn bởi kevo1tinh Xem bài viếtBạn có thể tham khảo chương trình này để dễ hình dung, nhưng chương trình này chỉ dùng ADC để tăng giảm tốc độ chạy cho hiệu ứng chứ không PWM. Không đính kèm được, thôi paste vào vậy:
#define DB0 PIN_C5
#define DB1 PIN_C4
#define DB2 PIN_C3
//----------------------gia tri
#define SANG 1
#define TAT 0
//----------------------duong bien
#define ADD_DOWNDB 0 //dia chi duoi cho DB
#define ADD_UPDB 2 //dia chi tren cho DB
//----------------------noi dung 1
#define ADD_DOWN1 3 //dia chi duoi cho HU 1
#define ADD_UP1 3 //dia chi tren cho HU 1
int8 PIN[12];
int8 db_index=0,idb=0;
int8 value_adc=100;
int8 hu1_index=0;
int16 DB_TIMER=0,db_delay=500;
int16 A_TIMER=0,hu1_delay=500;
#int_TIMER1 //TA=16MHz, delay 0,5ms
void TIMER1_isr(void)
{
set_timer1(63535);
if (DB_TIMER>0) DB_TIMER--;
if (A_TIMER>0) A_TIMER--;
}
//-------------------------------------
void Db_tat()
{
int8 jdb;
for (jdb=ADD_DOWNDB;jdb<=ADD_UPDB;jdb++)
{
PIN[jdb]=TAT;
}
}
void Db_sang()
{
int8 jdb;
for (jdb=ADD_DOWNDB;jdb<=ADD_UPDB;jdb++)
{
PIN[jdb]=SANG;
}
}
void Hu1_tat()
{
int8 j1;
for (j1=ADD_DOWN1;j1<=ADD_UP1;j1++)
{
PIN[j1]=TAT;
}
}
void Hu1_sang()
{
int8 j1;
for (j1=ADD_DOWN1;j1<=ADD_UP1;j1++)
{
PIN[j1]=SANG;
}
}
//-------------------------------------
void Duong_bien()
{
int8 kdb;
if(db_index==0)
{
// db_delay=DELAY_DB_MIN;
idb=ADD_DOWNDB;
db_index=1;
}
else if (db_index==1)
{
if (DB_TIMER==0)
{
for (kdb=ADD_DOWNDB;kdb<=ADD_UPDB;kdb++)
{
PIN[kdb]=TAT;
}
PIN[idb]=SANG;
idb++;
if (idb>ADD_UPDB)
{
idb=ADD_DOWNDB;
}
DB_TIMER=db_delay;
}
}
else
{
idb=0;
}
}
//--------------------------------------
void Hu1()
{
if (hu1_index==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=1;
}
else if (hu1_index==1)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_tat();
hu1_index=2;
}
}
else if (hu1_index==2)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=3;
}
}
else if (hu1_index==3)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_tat();
hu1_index=4;
}
}
else if (hu1_index==4)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=5;
}
}
else if (hu1_index==5)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_tat();
hu1_index=6;
}
}
else if (hu1_index==6)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay;
Hu1_sang();
hu1_index=7;
}
}
else if (hu1_index==7)
{
if (A_TIMER==0)
{
A_TIMER=hu1_delay * 5;
Hu1_sang();
hu1_index=1;
}
}
}
//------------------------------------
void Calculate_delay()
{
value_adc = read_adc ();
db_delay = make16(0,value_adc);
hu1_delay = db_delay *10;
db_delay = db_delay *2;
}
void Out_led()
{
//duong bien
output_bit(DB0,PIN[0]);
output_bit(DB1,PIN[1]);
output_bit(DB2,PIN[2]);
//noi dung 2
output_bit(PIN_C2,PIN[3]);
output_bit(PIN_C1,PIN[3]);
}
void main()
{
setup_adc_ports(sAN0|VSS_VDD);
setup_adc(ADC_CLOCK_INTERNAL);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);setup_wdt( WDT_2304MS);
setup_timer_1(T1_INTERNAL|T1_DIV_BY_1);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
enable_interrupts(INT_TIMER1);
enable_interrupts(GLOBAL);
set_adc_channel(0);
delay_ms(10);
//Setup_Oscillator parameter not selected from Intr Oscillotar Config tab
// TODO: USER CODE!!
while (TRUE)
{
restart_wdt();
Calculate_delay();
Duong_bien();
Hu1();
Out_led();
}
}SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI
Comment
-
Cái chương trình trên là dùng ADC để chỉnh tốc độ chạy của hiệu ứng chứ không phải để PWM. Lưu ý là tui lập trinh cho LED thì xử lý data trên RAM (khai báo 1 mảng), mục đích là có nhiều hiệu ứng, có thể tạo 1 library (giống như lbrary có sẵn của PIC C Compiler) để sau này có thể sử dụng cho nhiều khách hàng khác nhau, nhiều bảng khác nhau mà k cần chỉnh sửa gì nhiều. CÒn việc xuất dữ liệu đó ra chân nào là việc của hàm "OUT_LED". Chính vì vậy có thể PWM từ hàm OUT_LED. Như vậy các PIN cần PWM thì đưa vào hàm IF, các chân không PWM thì nằm ngoài hàm IF.
void OUT_LED()
{
//các PIN không PWM
output_bit(PIN_A1,PIN_PRE[0]);
output_bit(PIN_A2,PIN_PRE[1]);
output_bit(PIN_A3,PIN_PRE[2]);
//các PIN cần PWM thì đưa vào đây
if (A_TIMER<BBBB)
{
output_bit(PIN_C0,PIN_PRE[10]);
output_bit(PIN_C1,PIN_PRE[11]);
output_bit(PIN_C2,PIN_PRE[12]);
}
else
{
output_bit(PIN_C0,OFF);
output_bit(PIN_C1,OFF);
output_bit(PIN_C2,OFF);
}
}
Nếu bạn cần PWM cho 15 PIN thì đưa 15 PIN đó vào hàm if, các chân không PWM nằm ngoài hàm if.
Chốt lại là bạn muốn dùng PWM để điều chỉnh độ sáng của LED đúng k và các chân đó không có chức năng PWM!! Nếu cảm thấy k đúng thì tui sorry vậy, nếu đúng thì cách của tui vừa xử lý hiệu ứng, vừa PWM (tạm chấp chận cho LED được thì tần số không được cao). Nếu cần 1 cái PWM mẫu thì tui có thể viết cho bạn được để test chạy thử.Last edited by kevo1tinh; 05-09-2014, 17:21.
Comment
-
Nguyên văn bởi kevo1tinh Xem bài viếtCái chương trình trên là dùng ADC để chỉnh tốc độ chạy của hiệu ứng chứ không phải để PWM. Lưu ý là tui lập trinh cho LED thì xử lý data trên RAM (khai báo 1 mảng), mục đích là có nhiều hiệu ứng, có thể tạo 1 library (giống như lbrary có sẵn của PIC C Compiler) để sau này có thể sử dụng cho nhiều khách hàng khác nhau, nhiều bảng khác nhau mà k cần chỉnh sửa gì nhiều. CÒn việc xuất dữ liệu đó ra chân nào là việc của hàm "OUT_LED". Chính vì vậy có thể PWM từ hàm OUT_LED. Như vậy các PIN cần PWM thì đưa vào hàm IF, các chân không PWM thì nằm ngoài hàm IF.
void OUT_LED()
{
//các PIN không PWM
output_bit(PIN_A1,PIN_PRE[0]);
output_bit(PIN_A2,PIN_PRE[1]);
output_bit(PIN_A3,PIN_PRE[2]);
//các PIN cần PWM thì đưa vào đây
if (A_TIMER<BBBB)
{
output_bit(PIN_C0,PIN_PRE[10]);
output_bit(PIN_C1,PIN_PRE[11]);
output_bit(PIN_C2,PIN_PRE[12]);
}
else
{
output_bit(PIN_C0,OFF);
output_bit(PIN_C1,OFF);
output_bit(PIN_C2,OFF);
}
}
Nếu bạn cần PWM cho 15 PIN thì đưa 15 PIN đó vào hàm if, các chân không PWM nằm ngoài hàm if.
Chốt lại là bạn muốn dùng PWM để điều chỉnh độ sáng của LED đúng k và các chân đó không có chức năng PWM!! Nếu cảm thấy k đúng thì tui sorry vậy, nếu đúng thì cách của tui vừa xử lý hiệu ứng, vừa PWM (tạm chấp chận cho LED được thì tần số không được cao). Nếu cần 1 cái PWM mẫu thì tui có thể viết cho bạn được để test chạy thử.SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI
Comment
-
Anh kevo1tinh cho e hỏi là:
E băm xung PWM vào chân OE của 3 con 74595 cho led ma trận 8*8 2 màu RG để ra được 3 màu ,thì 3 con 74595 có dịch bit và đẩy bit kịp tốc độ của xung PWM không ạ (PWM đủ lớn để ra 24 hình/giây).À e hỏi thêm là phải băm xung PWM vào chân OE của cả 3 con hay chỉ cần cho con 595 đầu tiên ạ ?
Cảm ơn aLast edited by toan.ndn; 30-10-2014, 22:37.
Comment
-
Nguyên văn bởi toan.ndn Xem bài viếtAnh kevo1tinh cho e hỏi là:
E băm xung PWM vào chân OE của 3 con 74595 cho led ma trận 8*8 2 màu RG để ra được 3 màu ,thì 3 con 74595 có dịch bit và đẩy bit kịp tốc độ của xung PWM không ạ (PWM đủ lớn để ra 24 hình/giây).À e hỏi thêm là phải băm xung PWM vào chân OE của cả 3 con hay chỉ cần cho con 595 đầu tiên ạ ?
Cảm ơn a
- Sử dụng 2 kênh ccp1 và ccp2 để PWM cho 2 con 595, như thế thì phần mềm bạn rảnh việc để làm chuyện khác, đồng thời tần số cao sẽ giúp chuyển màu mềm mại hơn.
- Các tín hiệu điều khiển cho 2 con 595 này nên đấu song song (RCK,SCK), còn chân DS thì đấu riêng, OE thì đưa vào ccp, mỗi lần tạo clk để dịch bit, bạn sẽ dịch được 2 bit, sẽ tăng được tốc độ dịch bit và dư thời gian để làm việc khác.
- Điều hiển nhiên cách này theo phần cứng của bạn, điểm hạn chế của nó là bạn k thể tạo màu khác nhau cho từng pixel được.
Comment
Bài viết mới nhất
Collapse
-
Comment on Thắc mắc về hạ áp cho adapter laptopbởi nguyendinhvan
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 23:20 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi nguyendinhvanPhải làm đúng quy chình thì mới được
Bươc 1 lấy cái nguồn điều chỉnh, set về đúng 12v, cấp cho đường out 19v như hình. Chú ý là phần đầu vào adaptor không cấp điện.
Bước 2 . Kiểm tra điện áp tại chân số 3 das001 có đúng...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 23:20 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi LamVoNhấp nháy có thể do chu kỳ hoạt động bị rút ngắn quá dẫn đến không đủ nguồn nuôi ic, bác thử tăng giá trị tụ nguồn phụ nuôi ic và giảm giá trị điện trở hạn dòng cho nó xem có cải thiện không....
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 08:45 -
-
Trả lời cho Mạch tự động bật nguồnbởi nhathung1101Bác đúng là hệ Pháp, nên toàn quên chữ "d".
Nếu em được như bác, đúng 0h mới được stand by với hũ rượu và vợ thì tuyệt.
Nhưng đời không như là mơ, em và lão Đinh Vặn ngấm đủ mà.
Lão Đinh Vặn...-
Channel: Điện tử gia dụng
Hôm qua, 00:17 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi nhathung1101Vì bản chất của nó hoạt động theo dòng. Áp chỉ để mức giới hạn.
Cứ hiểu như bạn khôn hơn 10 người, nhưng khả năng thu nhận kiến thức chỉ bằng 1/10 người khác, thì nó sẽ tự điều chỉnh thôi.-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 23:41 -
-
Trả lời cho Mạch tự động bật nguồnbởi nhathung1101Ựa... có lý...
Dưng mà lão chỉ dùng 1 con opto là nguy hiểm lắm.
Có khi nó on lúc lão với ấy ấy về nhà lúc vắng vợ thì khổ. Nên phải thêm cái mạch logic nữa mới được....-
Channel: Điện tử gia dụng
28-12-2024, 23:20 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi lct1610Bác có cách nào khác ngoài quấnlại/rút bớt vòng dây BA (và mua mới ) k nhỉ ? Tại gỡ ra cũng khá lằng nhằng và kì công...
-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 19:30 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi mèomướpDạ với mức áp chênh lệch quá nhìu thì ngoài chỉnh hồi tiếp thì chú cần quấn lại thứ cấp biến áp nữa ạ. Tùy loại mà có thể sẽ khéo léo rút bớt vòng dây đỡ phải tách lõi ferit ạ...
-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 18:57 -
-
bởi lct1610E có adapter laptop cũ hiệu asus chạy tốt ,có đầu ra ổn định ở 19,4v dòng 3,42A ( công suất 60w). E định là hạ nó xuống 12v để cấp nguồn cho đầu camera. Và e đã thử bằng cách can thiệp vào phần hồi tiếp (sử dụng ic DAS001 hay TSM103W) thông...
-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 18:44 -
-
Trả lời cho Mạch tự động bật nguồnbởi nguyendinhvanMấy cái hệ thống Minh Thông đó là tôi tránh xa.
Vì một ngày mình bấm nút La- bô mấy lần, bấm vào những giờ nào nó cũng lưu vào datalog.
Dễ lộ bảo mật.
...-
Channel: Điện tử gia dụng
26-12-2024, 23:00 -
Comment