cam on ban. Dia chi mail toi la "www.dol2ph94in_cdt@yahoo.com"
Thông báo
Collapse
No announcement yet.
đồng hồ số dùng 8051
Collapse
X
-
Nguyên văn bởi Mr_se7en Xem bài viếtĐồng hồ này rất hay, nhưng mình có thắc mắc là Led 7 đoạn trong mô phỏng là loại 4 chân mình không hiểu, khi làm mạch thực tế thì led 7 đoạn 10 chân mà.
Nhóm của bạn đã làm mạch in của mạch này chưa? Nếu có thì chia sẻ cho mình với. Cảm ơn nhiều
Comment
-
Goi mail cho ban dophin ko dc? Minh post len day luon.Ai dung thi dung.Oke
#define SIG24C 0xA0
#include <REG51.H>
sbit SCL = P1^7;
sbit SDA = P1^6;
sbit D1 = P0^3;
sbit D2 = P0^2;
sbit D3 = P0^1;
sbit D4 = P0^0;
sbit C1 = P0^6;
sbit C2 = P0^7;
sbit oke = P3^0;
sbit up = P3^1;
sbit down = P3^2;
sbit mode = P3^3;
signed char second, day, date, month, year, gi,p;
void SetupI2C(void);
void ClockI2C(unsigned int loop);
unsigned char ReadRtc(unsigned char addr);
void WriteRtc(unsigned char addr, unsigned char ch);
void ShiftOut(unsigned char bytout);
void Delay(unsigned int n)
{
unsigned int j;
for(j=0;j<n;j++);
}
void ClockI2C(unsigned int loop)
{
while(loop--);
}
void BaseClock(void)
{
ClockI2C(4);
SCL = 1;
ClockI2C(4);
SCL = 0;
}
void Start(void)
{
SCL = 1;
SDA = 1;
ClockI2C(4);
SDA = 0;
ClockI2C(4);
SCL = 0;
}
void Stop(void)
{
SDA = 0;
SCL = 1;
ClockI2C(4);
SDA = 1;
ClockI2C(4);
SCL = 0;
}
void SetupI2C(void)
{
unsigned char i;
SCL = 1;
SDA = 1;
ClockI2C(2);
for(i=0;i<9;i++)
BaseClock();
Start();
}
void NoAck(void)
{
SDA = 1;
BaseClock();
}
bit GetAck(void)
{
unsigned int i;
bit bSda;
SDA = 1;
ClockI2C(2);
SCL = 1;
for(i=0;i<3000;i++)
{
ClockI2C(3);
bSda = SDA;
if(bSda == 0) break;
}
SCL = 0;
return(!bSda);
}
void ShiftOut(unsigned char bytout)
{
unsigned char i;
for(i=0;i<8;i++)
{
if((bytout & 0x80) == 0)
SDA = 0;
else
SDA = 1;
BaseClock();
bytout = bytout << 1;
}
}
unsigned char ShiftIn(void)
{
unsigned char i,bytin;
bytin = 0;
bytin = bytin | SDA;
for(i=0;i<7;i++)
{
BaseClock();
bytin = bytin << 1;
bytin = bytin | SDA;
}
return(bytin);
}
void WriteRtc(unsigned char addr, unsigned char ch)
{
Start();
ShiftOut(0xD0);
GetAck();
ShiftOut(addr);
GetAck();
ShiftOut(((ch/10)<<4)|(ch%10)); // ghi ma theo kieu BCD 1|9
GetAck();
Stop();
}
unsigned char ReadRtc(unsigned char addr)
{
unsigned char ch;
ch = 0xff;
Start();
ShiftOut(0xD0);
GetAck();
ShiftOut(addr);
GetAck();
Start();
ShiftOut(0xD1);
GetAck();
ch = ShiftIn();
NoAck();
Stop();
SDA =1;
SCL =1;
return((ch & 0x0f) + (ch>>4)*10);
}
void khoidongRTC(void)
{
SetupI2C();
WriteRtc(0x00,second);
WriteRtc(0x03,day);
WriteRtc(0x04,date);
WriteRtc(0x05,month);
WriteRtc(0x07,10);
}
void docRTC(void)
{
second = ReadRtc(0x00);
p = ReadRtc(0x01);
gi = ReadRtc(0x02);
hienthi(gi,p,110); // 140 khong co date va day hoat dong tot
}
void main (void)
{ D1=D2=D3=D4=1;
C1=C2=0;
khoidongRTC();
Delay(5000);
Delay(5000);
}
Minh cung lay chuong trinh may ban da viet thoi.
Cac ban xem roi chinh sua theo dung y do cua minh.
Note: khi cai dat cho DS, nho dung them led vao chan ra cua DS de xem DS da tiep nhan cai dat chua.
Neu led chop tat theo tan so dat thi DS da nhan cai dat roi.
Toi lam chay may mach roi, rat on dinh. Thich thi cac ban lam choi ahahah.
Chuc thanh cong.
Comment
-
Nguyên văn bởi dol2ph94in Xem bài viếtmình đã thử file của tranpic, copy hai thư viện ds1307.c và i2c.c vào trong thư viện của protues rồi, lấy nguyên file dong_ho.C để dịch ra file .HEX nhưng báo lỗi "C:\KEIL\C51\INC\ATMEL\DS1307.C(21): error C202: 'I2C_START': undefined identifier" Vậy lỗi này là do đâu vậy. chỉ giúp mình với
Comment
-
bác nào giải thích cho em đoạn code này được không. E lấy nó trong file ds1307.c
void RTC_Init(unsigned char day,unsigned char date,unsigned char mon,unsigned char year,unsigned char hour,unsigned char min,unsigned char sec)
{
I2C_START;
I2C_WR(0xd0);
I2C_WR(0x00); //vi tri con tro RTC
I2C_WR(0x00); // Write 00 to sec reg, clear CH bit
I2C_STOP;
I2C_START;
I2C_WR(0xd0);
I2C_WR(0x00); //vi tri con tro RTC
I2C_WR(sec); //giay
I2C_WR(min);
I2C_WR(hour);
I2C_WR(day);
I2C_WR(date);
I2C_WR(mon);
I2C_WR(year);
I2C_WR(0x10);
I2C_STOP;
}
Comment
-
Nguyên văn bởi dol2ph94in Xem bài viếtbác nào giải thích cho em đoạn code này được không. E lấy nó trong file ds1307.c
void RTC_Init(unsigned char day,unsigned char date,unsigned char mon,unsigned char year,unsigned char hour,unsigned char min,unsigned char sec)
{
I2C_START;
I2C_WR(0xd0);
I2C_WR(0x00); //vi tri con tro RTC
I2C_WR(0x00); // Write 00 to sec reg, clear CH bit
I2C_STOP;
I2C_START;
I2C_WR(0xd0);
I2C_WR(0x00); //vi tri con tro RTC
I2C_WR(sec); //giay
I2C_WR(min);
I2C_WR(hour);
I2C_WR(day);
I2C_WR(date);
I2C_WR(mon);
I2C_WR(year);
I2C_WR(0x10);
I2C_STOP;
}| Add: KTX ĐH Công Nghiệp, gần chợ Gò Vấp
| Phone: 0909 604 310
|Yahoo: dv_smile
Comment
-
đồng hồ của bác có chayl đúng không?
Nguyên văn bởi tranpic Xem bài viếtcó phải tuyendt87 không nhỉ. Nếu phải thì mình đã gửi mail cho bạn rồi mà. nếu không phải thì gửi lại cho nè. Nếu giải nén ko được thì đổi nó lại thành .rar mà giải nén nhé
Comment
-
Nguyên văn bởi tranpic Xem bài viếtcó phải tuyendt87 không nhỉ. Nếu phải thì mình đã gửi mail cho bạn rồi mà. nếu không phải thì gửi lại cho nè. Nếu giải nén ko được thì đổi nó lại thành .rar mà giải nén nhé
ai đã làm có thể giúp tôi đựoc chú
Comment
-
Nguyên văn bởi tranpic Xem bài viếtcó phải tuyendt87 không nhỉ. Nếu phải thì mình đã gửi mail cho bạn rồi mà. nếu không phải thì gửi lại cho nè. Nếu giải nén ko được thì đổi nó lại thành .rar mà giải nén nhé
ai làm cái đồng hồ này chưa tôi làm không chạy monh mọi người giúp đỡ
Comment
Bài viết mới nhất
Collapse
-
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 nay, 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
Hôm qua, 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 -
-
bởi pia2k1Cùng câu hỏi và cần được giải đáp thêm ạ...
-
Channel: Hướng dẫn sử dụng diễn đàn
27-11-2024, 11:28 -
-
Trả lời cho Công thức điện tửbởi mèomướpDạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
-
Channel: Tâm tình dân kỹ thuật
26-11-2024, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
-
Channel: Thiết bị điện tử cá nhân
26-11-2024, 20:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11Ok , thanks bác đã chỉ...
-
Channel: Thiết bị điện tử cá nhân
26-11-2024, 15:06 -
Comment