Nguyên văn bởi namkpac
Xem bài viết
Thông báo
Collapse
No announcement yet.
trục chặc đồng hồ số khi làm mạch thật
Collapse
X
-
Nguyên văn bởi chung1608 Xem bài viếtmạch hơi lớn và nhiều phần rời quá nhỉ|
Comment
-
Chào mọi người mình có việc này muốn hỏi thêm tý nữa, cái mạch mình làm ở trên có 1 vấn đề đó là khi mất điện và có điện lại thì đồng hồ không tự chạy lại mà mình phải nhấn nút thì nó mới tiếp tục chạy, e mới học C nên không rành lắm bộ đồng hồ này e được hỗ trợ nên hơi gà, các pác chỉ giúp e nhé.
#include <at89x52.h>
#include<INTRINS.H>
//==========================================
//Cac chan dieu khien
#define led_port P0
#define ic_counter P2
#define reg_sec 0x0
#define reg_min 0x1
#define reg_hour 0x2
#define reg_day 0x3
#define reg_date 0x4
#define reg_month 0x5
#define reg_year 0x6
#define reg_control 0x7
sbit scl = P1^0;
sbit sda = P1^1;
sbit ic_time = P2^4;
sbit ic_date = P2^5;
sbit sqw = P1^2;
sbit button_menu = P3^1;
sbit button_plus = P3^3;
sbit button_minus = P3^2;
sbit button_al = P3^0;
sbit led_arlam = P3^4;
sbit led_24h = P3^5;
sbit led_offset = P3^6;
//==========================================
//Cac bien toan cuc dung trong chuong trinh
unsigned char code led_code[20]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x9 0,0xff,0x00,0x8e,0xc8,0xbf};//{0,1,2,3,4,5,6,7,8,9, ,8.,f,n,-,}
unsigned char led_buffer[13];
unsigned char scan_led,counter,var_menu;//Phan hien thi Led
unsigned char sec,min,hour,day,date,month,year;
unsigned char value_offset,number_day,counter_day;
bit bit_arlam,bit_offset,type_offset,bit_counter;// ==1 :co chuc nang ==0 : khong co chuc nang
int wait_time;
//Quet led 7 doan dung timer 0
//Tan so quet khoang 25Hz moi led sang khoang 1000/(25*13)=3ms
void setup_timer0(void)
{
EA=0;//cam ngat toan cuc
TMOD=0x2;//timer0 che do 8 bit tu dong nap lai
TL0=0x6;//Gia tri bat dau dem = 6 (tre 250us)
TH0=0x6;//gia tri TH dc nap vao TL (che do 8 bit)
ET0=1;//cho phep ngat timer0
EA=1;//cho phep ngat toan cuc
TR0=1;//Bat dau chay timer0
}
//quet 13 LED Sau 12 lan Timer0 ngat thi thay doi cac led sang
void quet_led(void)interrupt 1 //dia chi vecto ngat timer0
{
TR0=0;//dung chay Timer
if(++counter==6)//sau 12x250us=3ms thi thay doi hien thi led
{
if(scan_led<=6)//chan enb cua IC_COUNTER =>0 khong co led nao duoc hien thi
{
ic_counter=scan_led;//hien thi cac led o hang 1 (gio, phut,giay,thu)
//chan enb cua IC_COUNTER =>0 khong co led nao duoc hien thi
led_port=led_code[(led_buffer[scan_led])];
ic_time=1;//hien thi gio phut giay
}else
{
ic_counter=scan_led-0x7;// hien thi led hang 2 (ngay thang nam)(tru di so led da hien thi o hang 1)
led_port=led_code[(led_buffer[scan_led])];
ic_date=1;//hien thi ngay thang nam
} // ic_counter=scan_led-0x7+0xf0 led thu 7 la led thu 0 cua hang 2
scan_led++;
if(scan_led>=13) //vuot qua 13 led thi tro ve ban dau
{
scan_led=0;
}
counter=0;
}
TR0=1;//Chay TIMER0
}
//************************************************** *******************************************
//------------------*************Cac ham phuc vu chuong trinh*********------------
//-----------***************Chuyen doi tu DEC sang BCD************-----------------
unsigned char dec_2_bcd(unsigned char value1)//chuyen doi tu he decima sang BCD
{
return ((value1/10)*16+value1%10); //deo' hieu tai sao lai khac (value1/10)<<4+value1%10
}
//----------**************Chuyen doi tu BCD sang DEC**********---------------------
unsigned char bcd_2_dec(unsigned char value2)//chuyen doi tu he BCD sang DECIMA
{
return ((value2/16)*10+value2%16);
}
//--------***********tao thoi gian tre dung lenh _nop_();**********-------------
void delay(int time_delay)
{
while(time_delay)
{
time_delay--;
}
}
void delays(int time_delay)
{
unsigned int temp;
while(time_delay)
{
temp=1000;
while(temp)
{
temp--;
}
time_delay--;
}
}
//------******Khoi dong I2C******---------
void i2c_start(void)
{
sda=1;
scl=1;
delay(15);
sda=0;
scl=0;
}
//-----******Ket thuc I2C*******---------
void i2c_stop(void)
{
sda= 0;
scl= 1;
delay(15);
sda=1;
scl=0;
}
//-------*******Gui du lieu len duong I2C******------
void write_i2c(unsigned char data_2_send)
{
unsigned char temp;
for(temp=0;temp<8;temp++)
{
sda=(data_2_send&0x80)? 1:0; //dua bit du lieu ra chan SDA
scl=1; //
_nop_();
_nop_(); //
scl=0;
data_2_send<<=1; //bit co trong so lon hon dc truyen truoc
}
scl=1;; //nhan bit ACK tu SLAVER
_nop_();
_nop_();
scl=0;
}
//------------**********Doc di lieu tren duong I2C******---------
unsigned char read_i2c(void)
{
unsigned char temp,i;
for(i=0;i<8;i++) // nhan vao 8 bit
{
scl=1;
temp<<=1;
temp=temp|sda;
scl=0;
}
//sda=0;//gui bit NO ACK
scl=1;//master nhan/gui bit du lieu(sda) khi scl o muc cao
_nop_();
_nop_();
scl=0;//du lieu(sda) thay doi khi scl muc thap*/
return temp;//tra gia tri cho ham
}
//------*****Ghi du lieu len RTC qua duong I2C*****----------
void write_rtc(char value,addr)
{
i2c_start();//start i2c
write_i2c(0xd0);//0xd0 la ID cua DS1307
write_i2c(addr);
write_i2c(value);
i2c_stop();
}
//---------********Doc du lieu tu RTC qua duong I2C*****--------
unsigned char read_rtc(char addr)
{
unsigned char temp;
i2c_start();
write_i2c(0xd0);//
write_i2c(addr); //bat dau doc du lieu tu thanh ghi co dia chi 0x0
i2c_start();
write_i2c(0xd1); //0xd0 + 0x01 la ID cua ds107 va che do doc du lieu
temp=read_i2c();//con tro dang tro toi dia chi 0x0 chua du lieu second
i2c_stop();//Stop I2C
return temp;
}
//-----------***********Lay du lieu thoi gian tu cac thanh ghi trong RTC*******---------
void get_time()
{
sec=read_rtc(reg_sec);
min=read_rtc(reg_min);
hour=read_rtc(reg_hour);
day=read_rtc(reg_day);
date=read_rtc(reg_date);
month=read_rtc(reg_month);
year=read_rtc(reg_year);
}
///////---------------***********Ghi du lieu va bo dem****-----------
void write_led_buffer(void)
{
unsigned char temp;
led_buffer[0]=(day&0x7);
//*******Hien thi gio*************
if((temp=(hour&0x30)>>4)==0)//khong hien thi so 0 o hang chuc
{
led_buffer[1]=0x0a;
}else
{
led_buffer[1]=temp;//Lay 2 bit cao
}
led_buffer[2]=(hour&0x0f); //Lay 4 bit thap
//*******Hien thi phut**********
led_buffer[3]=(min&0x70)>>4; //lay 3 bit cao
led_buffer[4]=min&0x0f; //Lay 4 bit thap
//*******Hien thi giay*********
led_buffer[5]=(sec&0x70)>>4;
led_buffer[6]=sec&0x0f;
//*******Hien thi ngay**********
if((temp=(date&0x70)>>4)==0)//khong hien thi so 0 o hang chuc
{
led_buffer[7]=0x0a;
}else
{
led_buffer[7]=temp;
}
led_buffer[8]=date&0x0f;
//*********Hien thi thang************
if(((month&0x30)>>4)==0)//khong hien thi so 0 o hang chuc
{
led_buffer[9]=0x0a;
}else
{
led_buffer[9]=(month&0x30)>>4;
}
led_buffer[10]=month&0x0f;
//******Hien thi nam***********
led_buffer[11]=(year&0x70)>>4;
led_buffer[12]=year&0x0f;}
//-----------------**********Cai dat che do cho RTC****------------------
void setup_rtc(void)
{
write_rtc(0x10,reg_control);//xung ra 1Hz muc thap khi khong dc kich hoat
write_rtc(0x0,reg_sec);//Clear bit CLOCK HAT
write_rtc(0x0,reg_min);
write_rtc(0x0,reg_hour);
write_rtc(0x2,reg_day);
write_rtc(0x18,reg_date);
write_rtc(0x12,reg_month);
write_rtc(0x11,reg_year);
}
//-----------------**************Do phim**********----------------------
void scan_button(void)
{
if(button_menu==0)//phim menu duoc an
{
delays(wait_time);//chong rung phim
if(button_menu==0)
{
if((button_menu==0)&&(button_al==0))
{
delay(wait_time);
if((button_menu==0)&&(button_al==0))
{
setup_rtc();
}
}
if(bit_arlam==0)//Neu khong thuc hien chuc nang hen gio
{
if(var_menu<=10)
{
var_menu++; //thuc hien menu tiep
}else
{
var_menu=0;//quay tro ve menu dau tien
}
}else
{
bit_arlam=0;//hen gio xong
}
}
}
if(button_al==0)
{
delays(wait_time);
if(button_al==0)
{
button_al=1;
var_menu=0;
bit_arlam=1;
}
}
}
//-----------******Chinh Giay********---------
void menu1(void)
{ unsigned char temp;
temp=bcd_2_dec(sec);
while(var_menu==1)
{
if(sqw==1)
{
led_buffer[5]=temp/10;
led_buffer[6]=temp%10;
}else
{
led_buffer[5]=0xa;
led_buffer[6]=0xa;
}
if((button_plus==0)||(button_minus==0))
{
delays(wait_time);
if((button_plus==0)||(button_minus==0))
{
delays(wait_time);
temp=0x00;
}
delays(wait_time);
}
scan_button();
}
write_rtc(temp,reg_sec); //Reset GIAY
}
//----------*********Chinh PHUT*********------------
void menu2(void)
{
unsigned char temp;
temp=bcd_2_dec(min);
while(var_menu==2)
{
if(sqw==1)
{
led_buffer[3]=temp/10;
led_buffer[4]=temp%10;
}else
{
led_buffer[3]=0xa;
led_buffer[4]=0xa;
}
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0)
{
delays(wait_time);
if(temp<59)
{
temp++;
}else
{
temp=0;
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
delays(wait_time);
if(temp>0)
{
temp--;
}else
{
temp=59;
}
}
delays(wait_time);
}
scan_button();
}
write_rtc(dec_2_bcd(temp),reg_min);
}
//----------*********Chinh gio***********------------
void menu3(void)
{
unsigned char temp;
temp=bcd_2_dec(hour);
while(var_menu==3)
{
if(sqw==1)
{
led_buffer[1]=temp/10;
led_buffer[2]=temp%10;
}else
{
led_buffer[1]=0xa;
led_buffer[2]=0xa;
}
if(button_plus==0)
{
if(button_plus==0)
{
delays(wait_time);
if(temp>=23)
{
temp=0;
}else
{
temp++;
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
delays(wait_time);
if(temp<=0)
{
temp=23;
}else
{
temp--;
}
}
delays(wait_time);
}
scan_button();
}
write_rtc(dec_2_bcd(temp),reg_hour);//ghi du lieu BCD vao thanh ghi GiO cua RTC
}
//----------------********Chinh Ngay Trong Tuan*******----------------------
void menu4(void)
{
unsigned char temp;
temp=bcd_2_dec(day);
while(var_menu==4)
{
if(sqw==1)
{
led_buffer[0]=temp;
}else
{
led_buffer[0]=0xa;
}
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0)
{
delays(wait_time);
if(temp>=7)
{
temp=1;
}else
{
temp++;
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
delays(wait_time);
if(temp<=1)
{
temp=7;
}else
{
temp--;
}
}
delays(wait_time);
}
scan_button();
}
write_rtc(dec_2_bcd(temp),reg_day);//ghi du lieu BCD vao thanh ghi GiO cua RTC
}
//-----------********Chinh Ngay********----------------
void menu5()
{
unsigned char temp,temp1,temp2;
temp=bcd_2_dec(date);
temp1=bcd_2_dec(month);
temp2=bcd_2_dec(year);
while(var_menu==5)
{
if(sqw==1)
{
led_buffer[7]=temp/10;
led_buffer[8]=temp%10;
}else
{
led_buffer[7]=0xa;
led_buffer[8]=0xa;
}
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0) //******An PLUS***----
{
delays(wait_time);
if((temp1==4)||(temp1==6)||(temp1==9)||(temp1==11) )//Cac thang co 30 ngay
{
if(temp>=30)
{
temp=1;
}
}else
{
if(temp1==2)//thang 2
{
if(temp2%4==0)//nam nhuan
{
if(temp>=29)
{
temp=1;
}else
{
temp++;
}
}else //nam thuong
{
if(temp>=28)
{
temp=1;
}else
{
temp++;
}
}
}else //cac thang co 31 ngay
{
if(temp>=31)
{
temp=1;
}else
{
temp++;
}
}
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0) //-********AN MINUS****--------
{
delays(wait_time);
if(temp>2)
{
temp--;
}else
{
if((temp1==4)||(temp1==6)||(temp1==9)||(temp1==11) )//Cac thang co 30 ngay
{
temp=30;
}else
{
if(temp1==2)//thang 2
{
if(temp2%4==0)//nam nhuan
{
temp=29;
}else //nam thuong
{
temp=28;
}
}else //cac thang co 31 ngay
{
temp=31;
}
}
}
}
delays(wait_time);
}
scan_button();
}
write_rtc(dec_2_bcd(temp),reg_date);//ghi du lieu BCD vao thanh ghi DATE cua RTC
}
void menu6(void)//-------*********Chinh Thang-*******---------
{
unsigned char temp;
temp=bcd_2_dec(month);
while(var_menu==6)
{
if(sqw==1)
{
led_buffer[9]=temp/10;
led_buffer[10]=temp%10;
}else
{
led_buffer[9]=0xa;
led_buffer[10]=0xa;
}
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0)
{
delays(wait_time);
if(temp>=12)
{
temp=1;
}else
{
temp++;
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
delays(wait_time);
if(temp==0)
{
temp=12;
}else
{
temp--;
}
}
delays(wait_time);
}
scan_button();
}
write_rtc(dec_2_bcd(temp),reg_month);//ghi du lieu BCD vao thanh ghi MONTH cua RTC
}
//---------**********Chinh Nam**********--------------
void menu7(void)//-------*********Chinh Thang-*******---------
{
unsigned char temp;
temp=bcd_2_dec(year);
while(var_menu==7)
{
if(sqw==1)
{
led_buffer[11]=temp/10;
led_buffer[12]=temp%10;
}else
{
led_buffer[11]=0xa;
led_buffer[12]=0xa;
}
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0)
{
delays(wait_time);
if(temp>=50)//Chinh thoi gian tu nam 2011 den Nam 2050
{
temp=11;
}else
{
temp++;
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
delays(wait_time);
if(temp<=11)
{
temp=50;
}else
{
temp--;
}
}
delays(wait_time);
}
scan_button();
}
write_rtc(dec_2_bcd(temp),reg_year);//ghi du lieu BCD vao thanh ghi YAER cua RTC
}
//--------********Ham thuc hien bu gio***************-------------------
void offset_time(void)
{
unsigned char temp;
temp=bcd_2_dec(sec);
if(bit_offset==1)
{
if(hour==0x0)
{
if((min==0x0))
{
if((bit_counter==1)&&(temp<=2))//chac chan xuat hien truong hop nay trong khoang 2 giay
{ //dem so ngay
counter_day++;
bit_counter=0;//khong cho dem ngay
}
}else
{
bit_counter=1;//cho phep dem ngay tro lai sau it nhat la 1 phut
}
if(counter_day==number_day)
{
if((temp>28)&&(temp<32))
{
if(type_offset==1)
{
temp-=value_offset; //Bu am
}else
{
temp+=value_offset; //Bu duong
}
}
counter_day=0;//reset bien
write_rtc(dec_2_bcd(temp),reg_sec);//ghi du lieu
}
}
}
}
//--------********Chinh gia tri bu thoi gian cho dong ho******----------
void menu8(void)//Bu hay khong
{
unsigned char i;
for(i=0;i<=12;i++)
{
led_buffer[i]=0x0a;//tat het led
}
led_buffer[7]=0; // 0
led_buffer[8]=0x0c; // F
led_buffer[9]=0x0c; // F
led_buffer[10]=0x5; // s
led_buffer[12]=0x1; // 1
while(var_menu==8)
{
if(bit_offset==1)
{
led_buffer[1]=0x0;//0
led_buffer[2]=0xd;//n
led_buffer[3]=0xa;//
}else
{
led_buffer[1]=0; //0
led_buffer[2]=0xc;//f
led_buffer[3]=0x0c;//f
}
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0)
{
if(bit_offset==1)
{
bit_offset=0;
}else
{
bit_offset=1;
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
if(bit_offset==0)
{
bit_offset=1;
}else
{
bit_offset=0;
}
}
delays(wait_time);
}
scan_button();
}
}
void set_days_offset(void)//Bao nhieu ngay bu 1 lan
{
unsigned char i;
for(i=0;i<=12;i++)
{
led_buffer[i]=0x0a;//tat het led
}
led_buffer[7]=0; // 0
led_buffer[8]=0x0c; // F
led_buffer[9]=0x0c; // F
led_buffer[10]=0x5; // s
led_buffer[12]=0x2; // 2
while(var_menu==9)
{
led_buffer[3]=number_day/10;
led_buffer[4]=number_day%10;
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0)
{
if(number_day>=15)
{
number_day=1;
}else
{
number_day++;
}
}
delays(wait_time);
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
if(number_day<=1)
{
number_day=15;
}else
{
number_day--;
}
}
delays(wait_time);
}
scan_button();
}
}
void set_val_offset(void)//Bu hay khong
{
unsigned char i;
for(i=0;i<=12;i++)
{
led_buffer[i]=0x0a;//tat het led
}
led_buffer[7]=0; // 0
led_buffer[8]=0x0c; // F
led_buffer[9]=0x0c; // F
led_buffer[10]=0x5; // s
led_buffer[12]=0x3; // 1
while(var_menu==10)
{
if(type_offset==1)
{
led_buffer[2]=0xe;
}else
{
led_buffer[2]=0xa;
}
led_buffer[3]=value_offset/10;
led_buffer[4]=value_offset%10;
if(button_plus==0)
{
delays(wait_time);
if(button_plus==0)
{
if(type_offset==0)
{
if(value_offset>=29)
{
type_offset=1;//am 29 giay
value_offset=29;
}else
{
value_offset++;
}
}else
{
if(value_offset<=1)
{
value_offset=1;
type_offset=0;
}else
{
value_offset--;
}
}
}
}
if(button_minus==0)
{
delays(wait_time);
if(button_minus==0)
{
if(type_offset==0)
{
if(value_offset<=1)
{
type_offset=1;//am 29 giay
value_offset=1;
}else
{
value_offset--;
}
}else
{
if(value_offset>=29)
{
value_offset=0;
type_offset=29;
}else
{
value_offset++;
}
}
}
}
scan_button();
}
}
//-----------***********Thuc Hien MENU*********---------------
void process_menu(void)
{
if(var_menu!=0)
{
switch(var_menu)
{
case 1:
menu1();
break;
case 2:
menu2();
break;
case 3:
menu3();
break;
case 4:
menu4();
break;
case 5:
menu5();
break;
case 6:
menu6();
break;
case 7:
menu7();
break;
case 8:
menu8();
break;
case 9:
set_days_offset();
break;
case 10:
set_val_offset();
break;
//Cho RTC cap nhat gio tro lai
}
}
}
//------*********Khoi dong SYSTEM******-------------
void check_rtc()
{
i2c_start();
i2c_stop();
write_rtc(0x10,reg_control);//xung ra 1Hz muc thap khi khong dc kich hoat
}
void start_system()
{
var_menu=0;
bit_arlam=0;
wait_time=50;
led_arlam=1;//khong hien thi
led_24h=0;//che do 24h
check_rtc();
counter_day=0;
var_menu=8;
}
void check_led()
{
led_arlam=!bit_arlam;
led_offset=!bit_offset;
}
//************************************************** *******************************************
//---------------**************Chuong trinh chinh**********----------------------
void main(void)
{
setup_timer0();
start_system();
while(1)
{
get_time();
write_led_buffer();
check_led();
offset_time();
scan_button();
process_menu();
}
}
//-----------------**************Ket thuc chuong trinh********--------------------|
Comment
-
có pác nào giúp e tí, bây giờ từ đoạn code trên e muốn sửa quá trình off (chỉnh bù giờ, hẹn giờ) từ đầu chương trình ra sau thì e phải làm thế nào? tức là e muốn đồng hồ khi có điện lại thì nó vẫn chạy còn nếu chạy nhanh (chậm) thì lúc đó mới thực hiện chỉnh bù giờ và cài đặt hẹn giờ sau. mạch này e làm thì nó chạy rồi nhưng có thắc mắc như vậy, mong được các pác giúp đỡ. thanks các bác nhiều.|
Comment
-
E tìm cách sửa lại phần scan button và setup RTC nhưng vẫn chưa hiểu chổ này lắm pác nào giúp e với. đại ý là khi cấp nguồn nó hiện trên các led 7 thanh là OFFS1; OFF, nó bắt mình lựa chọn việc bù giờ hoặc cài đặt giờ, hoặc hẹn giờ. e tìm cách để nó không chạy lựa chọn này nữa mà khi nào gọi nó thì nó mới chạy, cứ mỗi lần cấp nguồn là nó chạy đồng hồ luôn, còn nếu đồng hồ chạy sai mình sẽ thực hiện công đoạn bù giờ hay hẹn giờ... Các pác bớt chút time xem lại hộ e cái, thanks các pác nhiều.|
Comment
-
Nguyên văn bởi 0973885865 Xem bài viếtmình mạn phép tác giả đưa code lên đoạn này thì phải
void Out_1Hz()
{
I2C_start(); /* Start i2c bus */
I2C_write(0xD0); /* Connect to DS1307 */
I2C_write(0x07); //vi tri con tro RTC
I2C_write(0x10);
I2C_stop();
}
đây là link của mạch bạn tham khảo nhé
Clock_DS1307_Led7Dx16.rar
I2C_write(0x10);
nhưng trong code này có vấn đề gì nhỉ
Comment
-
Nguyên văn bởi menxplorer Xem bài viếtEm đả xem qua mạch này, nhưng sao nhịp nháy 1hz không đều. Để lấy xung 1hz ta lấy từ thanh ghi control bằng cách ghi vào DS lênh
I2C_write(0x10);
nhưng trong code này có vấn đề gì nhỉ
Comment
-
Nguyên văn bởi chung1608 Xem bài viếtxung 1 Hz của 1307 có duty cycle 50% mà sao lại ko đều hả bạn
Comment
-
Nguyên văn bởi menxplorer Xem bài viếtem củng không hiểu vì sao bác ah. Trên mô phỏng em thấy nháy không đều, tìm mãi mà không thấy sai đâu
Comment
-
còn đây là file mạch in mình vẽ trên orcad, khối điều khiển thôi, khối led mình mắc rời, mong các pác chỉ giúp Mach 89C51.rar|
Comment
-
Các pác coi giúp e cái này với loay hoay miết mà không phát hiện ra điều gì cả. mạch chính điều khiển mình chỉ muốn thấy con led tại chân 7 con DS1307 chạy thôi còn giờ không thấy nó chạy mà nó còn làm cho con 7805 nóng ran luôn. mong nhận được giúp đỡ pal này. thanks các pác|
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Hỏi về bơm màng bldcbởi nhathung1101Thì đây là 4r điên nặng điện mà, nên họ show phần điện thôi. Phần "cốt lõi" có cái tay biên chắc sang Văn Môn rồi....
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 18:54 -
-
Trả lời cho Chọn dây dẫn cho điện DC?bởi nhathung1101Điện DC đương nhiên là khác với AC rồi. Chỉ cần biết mặt chữ là thấy khác như gà trống với gà mái mà.
Còn về bản chất, AC là dòng điện hoạt động theo tần số. Tần số càng cao thì dây dẫn càng mỏng, nhẹ, vì hiệu ứng...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 18:46 -
-
Trả lời cho Công thức điện tửbởi nhathung1101Ăn ít => Nói nhiều.
Nói nhiều => Làm ít.
Làm ít => Vợ mắng.
Vợ mắng => Cáu nhiều.
Cáu nhiều => Ngủ ít.
Ngủ ít => Râu nhiều.
Râu nhiều =>...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 18:39 -
-
Trả lời cho Chọn dây dẫn cho điện DC?bởi mèomướpDạ vài chục mét thì chú tính như vậy được ạ. Chứ chuẩn thì phải tính cả điện trở của toàn bộ chiều dài dây dẫn nhân với dòng điện xem sụt áp có trong khoảng chấp nhận đc hông ạ. Trong mạch điện tử khoảng cách ngắn và mạch...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 14:49 -
-
bởi vietroadTheo mình biết thì chọn dây dẫn dựa vào dòng tải. Thường thì tiết diện 1mm2 cho dòng 6A. Nhưng trong các mạch điện tử, như mạch nguồn tổ ong chẳng hạn, dòng đến vài chục Ampe mà đường mạch mỏng dính. Phải chăng điện DC nó khác với...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 14:19 -
-
Trả lời cho Hỏi về bơm màng bldcbởi vi van phamPhải xem cơ cấu bơm, chứ xem cơ cấu rotor, thì chỉ làm thầy bói xem voi.
-
Channel: Điện tử dành cho người mới bắt đầu
29-11-2024, 08:19 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11vg, cám ơn bác...........
-
Channel: Thiết bị điện tử cá nhân
28-11-2024, 14:37 -
-
bởi khoine9899
Em chào các anh và mọi người.
Hiện em đang có 1 con bơm màng trong thiết bị y tế đang gặp tình trạng yếu dần hoặc ngừng hoạt động sau thời gian sử dụng
Sau khi tìm hiểu về thông tin của bơm trên mạng thì em được biết...-
Channel: Điện tử dành cho người mới bắt đầu
28-11-2024, 11:22 -
-
Trả lời cho Cần mọi người giúp mạch tạo sóng siêu âm máy rửabởi bqviet
-
Channel: Điện tử công suất
27-11-2024, 20:26 -
-
bởi Minhdai95Em chào mọi người, e đang sửa mạch tạo sóng siêu âm cho máy rửa mà chưa có tài liệu để tham khảo sửa, mọi người cho e xin tài liệu ạ...
-
Channel: Điện tử công suất
27-11-2024, 11:37 -
Comment