Tình hình là em đa sử dụng WINAVR để nạp cho AVR. Và em cũng đa nghiên cứu con DS1307. Search google thì thấy có thư viện DS1307.h có sẵn các hàm thao tác với Chip này. Nhưng mà tìm hoài trong thư mục chứa thư viện của WINAVR ko thấy có. Hình như là phải dùng trình nạp Codevision AVR mới có thư viện này đúng ko ạ. Cho em hỏi là em nếu em chép thư viện này qua WINAVR có chạy dc ko ạ. Nếu được thì bác nào cho em xin thư viện này nhá
Thông báo
Collapse
No announcement yet.
Thư viện DS1307.h
Collapse
X
-
có thể viết một thư viện co nó rồi add vào mục cài đặt đo, sau này code thì add vào và thao tác thôi, có thể tham khảo thư viện ds1307 của codevision rồi viết theo đúng cú pháp của winavr
đây là lib của nó trong cv
bạn dùng cv thì bản 2.5 trở lên phải ***** mới có hỗ trợ ds1307
chúc thành công
Code:/* CodeVisionAVR C Compiler (C) 1998-2010 Pavel Haiduc, HP InfoTech S.R.L. Dallas Semiconductors DS1307 I2C Bus Real Time Clock functions */ #include <bcd.h> #ifdef _ATXMEGA_DEVICE_ #include <twix.h> static TWI_MASTER_INFO_t *ptwi_master; void ds1307_twi_init(TWI_MASTER_INFO_t *ptwim) { ptwi_master=ptwim; } unsigned char rtc_read(unsigned char address) { unsigned char r; twi_master_trans(ptwi_master,0xd0>>1,&address,1,&r,1); return r; } void rtc_write(unsigned char address,unsigned char data) { unsigned char w[2]; w[0]=address; w[1]=data; twi_master_trans(ptwi_master,0xd0>>1,w,2,NULL,0); } void rtc_init(unsigned char rs,unsigned char sqwe,unsigned char out) { unsigned char w[2]; rs&=3; if (sqwe) rs|=0x10; if (out) rs|=0x80; w[0]=7; w[1]=rs; twi_master_trans(ptwi_master,0xd0>>1,w,2,NULL,0); } void rtc_get_time(unsigned char *hour,unsigned char *min,unsigned char *sec) { unsigned char w=0,r[3]; twi_master_trans(ptwi_master,0xd0>>1,&w,1,r,3); *sec=bcd2bin(r[0]); *min=bcd2bin(r[1]); *hour=bcd2bin(r[2]); } void rtc_set_time(unsigned char hour,unsigned char min,unsigned char sec) { unsigned char w[4]; w[0]=0; w[1]=bin2bcd(sec); w[2]=bin2bcd(min); w[3]=bin2bcd(hour); twi_master_trans(ptwi_master,0xd0>>1,w,4,NULL,0); } void rtc_get_date(unsigned char *date,unsigned char *month,unsigned char *year) { unsigned char w=4,r[3]; twi_master_trans(ptwi_master,0xd0>>1,&w,1,r,3); *date=bcd2bin(r[0]); *month=bcd2bin(r[1]); *year=bcd2bin(r[2]); } void rtc_set_date(unsigned char date,unsigned char month,unsigned char year) { unsigned char w[4]; w[0]=4; w[1]=bin2bcd(date); w[2]=bin2bcd(month); w[3]=bin2bcd(year); twi_master_trans(ptwi_master,0xd0>>1,w,4,NULL,0); } #else #include <i2c.h> unsigned char rtc_read(unsigned char address) { unsigned char data; i2c_start(); i2c_write(0xd0); i2c_write(address); i2c_start(); i2c_write(0xd1); data=i2c_read(0); i2c_stop(); return data; } void rtc_write(unsigned char address,unsigned char data) { i2c_start(); i2c_write(0xd0); i2c_write(address); i2c_write(data); i2c_stop(); } void rtc_init(unsigned char rs,unsigned char sqwe,unsigned char out) { rs&=3; if (sqwe) rs|=0x10; if (out) rs|=0x80; i2c_start(); i2c_write(0xd0); i2c_write(7); i2c_write(rs); i2c_stop(); } void rtc_get_time(unsigned char *hour,unsigned char *min,unsigned char *sec) { i2c_start(); i2c_write(0xd0); i2c_write(0); i2c_start(); i2c_write(0xd1); *sec=bcd2bin(i2c_read(1)); *min=bcd2bin(i2c_read(1)); *hour=bcd2bin(i2c_read(0)); i2c_stop(); } void rtc_set_time(unsigned char hour,unsigned char min,unsigned char sec) { i2c_start(); i2c_write(0xd0); i2c_write(0); i2c_write(bin2bcd(sec)); i2c_write(bin2bcd(min)); i2c_write(bin2bcd(hour)); i2c_stop(); } void rtc_get_date(unsigned char *date,unsigned char *month,unsigned char *year) { i2c_start(); i2c_write(0xd0); i2c_write(4); i2c_start(); i2c_write(0xd1); *date=bcd2bin(i2c_read(1)); *month=bcd2bin(i2c_read(1)); *year=bcd2bin(i2c_read(0)); i2c_stop(); } void rtc_set_date(unsigned char date,unsigned char month,unsigned char year) { i2c_start(); i2c_write(0xd0); i2c_write(4); i2c_write(bin2bcd(date)); i2c_write(bin2bcd(month)); i2c_write(bin2bcd(year)); i2c_stop(); } #endif
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80Vâng bác, mạch điện cũng dạng như vậy, và vấn đề của nước mình chính là cái khó bó cái khôn, không thể cạnh tranh được với hàng ngoại.
Thực ra mạch em vẽ từ sản phẩm thực tế ở #54 là họ cải tiến từ mạch Boost áp...-
Channel: Điện tử công suất
Hôm qua, 13:58 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi mèomướpDạ thấy chú dinh... có vẻ mặn nồng với đèn sự cố nên cháu rình lúc chị hàng xóm đi vắng bắc thang trèo lên chụp mấy cái đèn nhà chị ấy ạ. Tầm vài trăm cái dùng tuýp led 220v bình thường ấy ạ. Dùng chiếu sáng thay bóng tuýp luôn Hơn...
-
Channel: Điện tử công suất
07-02-2025, 22:38 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi bqvietTheo sơ đồ bạn đã vẽ thì đây chỉ là mạch nguồn flyback không cách ly, phản hồi cả dòng lẫn áp thôi mà. Một dạng nguồn CC-CV thông dụng. Kiếm con chip tốt làm là được, nếu chịu chạy dãy LED có cách ly thì càng tốt.
Vấn đề...-
Channel: Điện tử công suất
07-02-2025, 21:56 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80Phật có dạy là CHÁNH NIỆM (hay CHÍNH gì ấy, ĐT bị... rối loạn ngôn ngữ và trí nhớ, mong lượng thứ!) - CHÁNH NGỮ - CHÁNH HÀNH ĐỘNG, đó là đường hướng tới CHÁNH ĐẠO.
ĐT ngu muội nên cứ áp dụng vào điện tử: phải cố...-
Channel: Điện tử công suất
06-02-2025, 06:16 -
-
Trả lời cho [HELP] mạch cầu H inverter 100vdc to 100v ?bởi ngoctn93Em cũng có nguồn 250 đến 280vdc muốn chuyển sang 100vac bằng mạch cầu H dùng esg002. Có bác nào làm rồi chỉ em hoặc bán em với ạ. Em xin cảm ơn ạ
-
Channel: Điện tử công suất
05-02-2025, 23:00 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi mèomướpCháu thấy chú nhat... viết toàn cái gì gì ấy ạ khó hiểu ghê, chắc mai cháu phải đi hỏi mấy anh chị lớp lớn hơn xem sao ạ. Những việc lớn tầm cỡ thì hông phải ai cũng có đủ kiến thức, thời gian, sức khỏe, tiền bạc, đam mê, kiên...
-
Channel: Điện tử công suất
05-02-2025, 22:11 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nhathung1101Bác bảo ai lớn tờ iếng tiếng?
Hùng là không nhé. Chỉ bảo tận tình chứ không tận diệt.
Yêu kỹ thuật nên vẫn tham gia cho vui thôi. Mấy của nợ này dùng con PIC hai chục ngàn còn ngon luôn....-
Channel: Điện tử công suất
05-02-2025, 21:38 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi vi van phamThôi mà, anh em giúp đỡ nhau, có gì mà lớn tiếng?
Ai không chịu giúp đỡ nhau thì vào đây nhậu với tui. Bà xã hôm nay ngũ sớm tui được tự do, solo buồn quá, Nhathung,Dinhthuong ,Đinh Vặn gì đó tui cân tuốt.-
Channel: Điện tử công suất
05-02-2025, 21:16 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nhathung1101Thằng I Lôn Mút nó sắp đưa người lên sao Hỏa rồi.
Mấy anh em vẫn bàn cái "Một Phát Phải Thôi" thì nẫu quá.
Ngâm cứu cái gì cho đáng đi. Còn tôi nói gì hơi quá thì xin lỗi nhé.-
Channel: Điện tử công suất
05-02-2025, 19:45 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nhathung1101Và tôi thấy cái này như con bò sữa thôi mà. Nếu xét nguyên lý.
Bóp bóp bóp... đến hết thì thôi. Cái mạch thì nguồn sơ đẳng. Con để bóp thì vu nó lại cáo cào cao.
Ắc qui hay pin thì vưỡn giá nào xào nấy. Inverter thì...-
Channel: Điện tử công suất
05-02-2025, 19:33 -
Comment