híc híc giúp mình với có mỗi cái này mà test mãi không chạy
Thông báo
Collapse
No announcement yet.
Ds1307
Collapse
X
-
Bạn bỏ cái này đi nhá. Vì tất tật đều được Codevision khởi tạo cho một cách tự động khi bạn khai báo kết nối. Cũng có thể do bạn khởi tạo một chân nào đó là cổng vào trong khi nó phải được khởi tạo là cổng ra hoặc ngược lại. Tóm lại theo tôi, bạn không cần những thứ này. Cứ để các giá trị đó là 0x00 là được.
PORTA=0xFF;
DDRA=0xFF;
PORTB=0x00;
DDRB=0xF7;
PORTC=0xF0;
DDRC=0xF0;
PORTD=0x00;
DDRD=0x04;
Comment
-
Tôi vừa xem lại mạch của bạn xong. Chân VEE của bạn nên để con biến trở ở đó để có thể điều chỉnh độ tương phản. Nếu để con 10k ở đó sợ không hiển thị được.
các giá trị khởi tạo cổng của bạn nên để là:
PORTX=0x00;
DDRX=0x00;
#include <mega16.h>
// I2C Bus functions
#asm
.equ __i2c_port=0x15 ;PORTC
.equ __sda_bit=1
.equ __scl_bit=0
#endasm
#include <i2c.h>
// DS1307 Real Time Clock functions
#include <ds1307.h>
// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x18 ;PORTB
#endasm
#include <lcd.h>
// Declare your global variables here
unsigned char h,m,s,d,t,n;
unsigned char h1,h2,m1,m2,s1,s2,d1,d2,t1,t2,n1,n2;
void main(void)
{
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x007;
PORTC=0x00;
DDRC=0x000;
PORTD=0x00;
DDRD=0x00;
i2c_init();
rtc_init(3,1,0);
lcd_init(16);
rtc_set_time(10,30,0);
rtc_set_date(1,5,8);
lcd_clear();
while (1)
{
// Hien thi gio, phut,giay o hang 1
rtc_get_time(&h,&m,&s);
lcd_gotoxy(0,0);
lcd_putsf("time:");
//set hour
h1=h/10;
h2=h%10;
lcd_putchar(h2+0x30);
lcd_putchar(h1+0x30);
lcd_putsf(":");
//set min
m1=m/10;
m2=m%10;
lcd_putchar(m2+0x30);
lcd_putchar(m1+0x30);
lcd_putsf(":");
//set giay
s1=s/10;
s2=s%10;
lcd_putchar(s2+0x30);
lcd_putchar(s1+0x30);
rtc_get_date(&d,&t,&n);
lcd_gotoxy(0,1);
lcd_putsf("date:");
// set ngay
d1=d/10;
d2=d%10;
lcd_putchar(d2+0x30);
lcd_putchar(d1+0x30);
lcd_putsf("/");
//set thang
t1=t/10;
t2=t%10;
lcd_putchar(t2+0x30);
lcd_putchar(t1+0x30);
lcd_putsf("/");
// set nam
n1=n/10;
n2=n%10;
lcd_putchar(n2+0x30);
lcd_putchar(n1+0x30);
};
}
Hy vọng bài của tôi giúp được bạn. Chúc vui.
Comment
-
Mình cũng xem mạch của bạn rùi,chân Vee mắc với biến trở để điều chỉnh độ mờ, hay rõ các ký tự của LCD.nếu bạn muốn nhìn thấy các ký tự rõ nhất thì nối thẳng nó với GND. Bạn đã mắc sai so với mạch nguyên lý mà mình gửi với lại hình như PINB5 của bạn cũng chưa được nối với chân tương ứng của LCD thì làm sao mà chạy được .Với mạch và code mà tớ gửi ở trên,thấy bạn làm ko chạy tớ tò mò học Protus luôn ( cài mãi mới được) , sau khi đi dây xong rồi nạp code cho nó thì nó chạy ầm ầm đây hây. bạn xem lại xem. Đây là hình ảnh minh họa , chúc bạn thành công :
Comment
-
hichic, các bác ui, giúp em với,
Cái CodeVision của em không biết bị lỗi gì mà khi Make thì liên tục bảo ERROR OCCURING DURING ASEMBLY. Cuối cùng là em chẳng thể nào nạp được mạch để mà thử. Mặc dù em đã cố gắng Configure project giống i chang các bác vậy.
Cảm ơn các bác nhiều!
Comment
-
Cái CodeVision của em không biết bị lỗi gì mà khi Make thì liên tục bảo ERROR OCCURING DURING ASEMBLY. Cuối cùng là em chẳng thể nào nạp được mạch để mà thử. Mặc dù em đã cố gắng Configure project giống i chang các bác vậy.
Comment
-
Nhìn cái đồng hồ của TQ làm mà phục,Các Bác làm Đồng hồ DS 1307 hoàn thiện chưa,mình cũng đã làm chạy được rồi.Nhưng làm sao để chỉnh được giờ khi mà hết pin cấp cho Ds1307 nhỉ.Mình nghỉ là giá trị init của đồng hồ được ghi vào ram của ds rồi liệu có thể chỉnh được không.Chỉnh như thế nào,có bác nào làm được cái đồng hồ DS hoàn thiện rồi thì giúp mình với!
Comment
-
Hic!!! cái đó đơn giản mà, bạn làm cho nó thêm mấy phím (Funtiion, tăng, giảm,Ok) để cài lại thời gian khi nó chay sai là ok.Khi đó cái đồng hồ của bạn sẽ dùng đến khi nó tự hỏng thì thôi. Có điều bạn phải lập trình quét phím. Chúc thành công.Hihihi
Comment
-
Nguyên văn bởi btbk244 Xem bài viếtNhìn cái đồng hồ của TQ làm mà phục,Các Bác làm Đồng hồ DS 1307 hoàn thiện chưa,mình cũng đã làm chạy được rồi.Nhưng làm sao để chỉnh được giờ khi mà hết pin cấp cho Ds1307 nhỉ.Mình nghỉ là giá trị init của đồng hồ được ghi vào ram của ds rồi liệu có thể chỉnh được không.Chỉnh như thế nào,có bác nào làm được cái đồng hồ DS hoàn thiện rồi thì giúp mình với!
void i2c_write(unsigned char add, unsigned char dat)
{
i2c_start();
i2c_write(0xd0);
i2c_write(add);
i2c_write(dat);
i2c_stop();
}Nỏ biết chữ mần răng ký được??!! Thôi nhé.
Comment
-
Nếu bạn làm mạch chuẩn (tương đối) thì con DS1307 mỗi ngày vẫn chạy sai khoảng từ 1->3s cho nên nếu dùng khoảng nửa năm nó cũng sai mất mấy phút, chẳng nhẽ lại bật máy tính rồi cắm giắc nạp để nạp lại chương trình cho nó. Tốt nhất các bạn làm cho nó mấy cái phím điều chỉnh thì các bạn chẳng phải lo gì nó chạy sai, cứ nơi nào có điện là bạn có thể dùng được nó.Ngày trước còn đi học tớ làm nó rồi, bây giờ đi làm rồi lên ko có thời gian để giúp các bạn. Tớ chỉ có thể đưa ra hướng giải quyết cho các bạn thôi.
Comment
-
Coi phim Mỹ thấy tụi nó để đồng hồ này ngay phòng ngủ, kê sát đầu giường, chỉ liếc mắt là biết giờ và kèm chức năng báo thức nữa. Dân ta chưa quen với sp này. Nếu ra được sp này đẹp, ổn định bảo đảm hút hàng hơn nhiều so với ba cái đồng hồ kèm nhiệt kế!Đẹp từng kilomét
Comment
Bài viết mới nhất
Collapse
-
bởi yeurap7em chưa biết chọn loại điện trở bao nhiêu W để khi cấp 1 W đầu vào,4 con trở dán ko bị hỏng .
trên web em tìm thì có nhiêu loại trở dán ví dụ 0805 1w ,1206 0.25 w, 1210 0.5w ..vv ....
(theo e biết là đầu vào 1 w mà chia làm 2, thì đầu...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 14:53 -
-
bởi yeurap7em xin bổ sung:
R1: 100 ohm
R2: 200 ohm
R3: 360 ohm
R4:560 ohm
PCB: chất liệu RF 35,độ dày lớp đồng 0,04 mm,độ rộng đường đi min 0,5 mm ạ-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 14:52 -
-
bởi yeurap7em có 1 bản mạch bộ chia 2 như trong ảnh,yêu cầu cấp 1 W vào port 1,thì 4 con điện trở dán SMD kia phải nhỏ nhất là loại bao nhiêu W để không bị đánh thủng ạ,em xin cảm ơn ạ..!...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 13:40 -
-
Trả lời cho Hỏi thăm các cao nhân, các bác sống bằng gì?bởi vi van phamngành nào cũng bị AI lấn sân. Chỉ có sức lao động không sợ bị chèn ép, vì vậy nếu học IT thì cứ học cho giỏi vào, lập trình AI cho nó biết sức lao động 1 giờ là bao nhiêu usd.
( đang chờ Nhathung, vặn đinh vào tám....)...-
Channel: Xu hướng, nhu cầu và thị trường
26-09-2024, 21:15 -
-
Trả lời cho Job Remote online 100% cho aebởi milanBố đời, hr tự làm đi cho khỏe
-
Channel: Tuyển dụng
26-09-2024, 06:40 -
-
Trả lời cho Hỏi thăm các cao nhân, các bác sống bằng gì?bởi minoziluThời kỳ khoa học công nghệ phát triển, hiện nay công nghệ AI lại càng phát triển nhưng nhiều người vẫn cho con em thi vào IT vì thấy ngành này hot nhưng đó là chuyện của quá khứ rồi, hiện tại tất cả các ngành nghề có liên quan đến công...
-
Channel: Xu hướng, nhu cầu và thị trường
25-09-2024, 23:06 -
-
Trả lời cho Job Remote online 100% cho aebởi GDSgrptôi bảo up to 18tr chứ có phải mặc định 18tr đâu b?.Muốn biết thêm thì liên hệ Hr...
-
Channel: Tuyển dụng
25-09-2024, 15:05 -
-
Trả lời cho Job Remote online 100% cho aebởi milan200-300k/ngày sao được 18t tháng vậy bạn?
Yêu cầu như nào post lên đi-
Channel: Tuyển dụng
25-09-2024, 14:44 -
Comment