![]() |
|
Tài trợ cho PIC Vietnam |
Giao tiếp USB, CAN, I2C, SPI, USART... Những giao tiếp được tích hợp trên PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Đệ tử 1 túi
Tham gia ngày: Nov 2010
Bài gửi: 12
: |
"Đây là 1 cái đồng hồ lcd hoàn chỉnh,gồm mô phỏng proteus và CCS
Tiếc là có 1 lỗi excessive cpu load làm sản phẩm mô phỏng chỉ chạy đc trong khoảng 5s,sau đó thì...hỏi Chúa để biết thêm chi tiết" dtvtb. chào bác dtvtb, mình đang làm thử cái project này và mình đã down cái flie của bác về mà sao nó hiện thị lên LCD thì tốt mà time và ngày tháng năm nhảy lung tung, năm lên đến 2167... bác xem lại code ds1307 và update time hay sao ấy. |
![]() |
![]() |
![]() |
#2 | |
Nhập môn đệ tử
Tham gia ngày: Oct 2008
Bài gửi: 3
: |
Trích:
|
|
![]() |
![]() |
![]() |
#3 |
Đệ tử 1 túi
Tham gia ngày: Nov 2010
Bài gửi: 12
: |
![]() hix, vậy lấy mã chuyển đổi BCD khác ở đâu giờ? ai có mã chuyển đổi BCD đúng ko cho mình với? mình đang làm về cái mạch này mà bị kẹt mấy tuần nay, ai có mạch hoàn chỉnh chạy đúng thì post protues và cod lên cho mình tham khảo với nhé, thanks
|
![]() |
![]() |
![]() |
#4 | |
Nhập môn đệ tử
Tham gia ngày: Oct 2008
Bài gửi: 3
: |
![]() Trích:
/*------- Chuyên du liêu mã BIN cua MASTER -> du liêu mã BCD cho DS1307-----*/ int8 decToBcd(int8 val) // MASTER -> DS1307. { // x -> y. int8 x,y; //vd: 7 -> 7 = 0x07. x = val; //vd: 12 -> 18 = 0x12. if(x<10) { y = x; } else if(x>=10) { y = (x/10 * 6) + x; //vd: 29 -> 41 = 0x29. } return(y); //vd: 35 -> 53 = 0x35. } /*------- Chuyên du liêu mã BCD cua DS1307 -> du liêu mã BIN cho MASTER-----*/ int8 bcdToDec (int8 val) { // MASTER <- DS1307. int8 x,y,z; // x <- y. y = val; //vd: 5 <- 5 = 0x05. i=0; //vd: 10 <- 16 = 0x10. if(y<10) //vd: 20 <- 32 = 0x20. { //vd: 30 <- 48 = 0x30. x = y; //vd: 40 <- 64 = 0x40. z = x; //vd: 50 <- 80 = 0x50. } //..... else if(y>=10) { do { x = y - (6 * i); z = (x/10 * 6) + x; i++; } while(z!=y); } return(x); } |
|
![]() |
![]() |
![]() |
#5 | |
Đệ tử 1 túi
Tham gia ngày: Nov 2010
Bài gửi: 12
: |
![]() Trích:
|
|
![]() |
![]() |
![]() |
#6 |
Đệ tử 1 túi
Tham gia ngày: Nov 2010
Bài gửi: 12
: |
![]() sau 2 đêm cặm cụi sửa chữa, mình đã sửa 6 code thành còn 2 code gần như hoàn chỉnh nhưng vẫn chưa gọi là hoàn chỉnh đúng nhất, vì thời gian chạy được khoảng mấy phút là đứng không hiển thị tiếp ra LCD nữa, ở đây mình có 2 code dùng 2 thư viện LCD khác nhau và trong mỗi code có 2 cách chuyển dữ liệu sang BCD, các bạn xem và chỉnh sửa code sao cho chạy đúng nhất nhé, các bạn có thể post lên đây hoặc gửi vào mail bnktunganh@gmail.com cho mình, cảm ơn các bạn đã giúp đỡ.
|
![]() |
![]() |
![]() |
#7 |
Đệ tử 1 túi
Tham gia ngày: Nov 2010
Bài gửi: 12
: |
![]() mấy bài trước mình post, mình dùng proteus 7.7 và bị lỗi nên time và day nó nhảy loạn xạ, sau khi mình vẽ lại bằng proteus 7.1 thì time và day ổn nhưng biến giây đếm trên ds1307 chậm mất 3 nhịp, khi giây ở đồng hồ thật bên ngoài nhảy được 3s thì con ds mới nhảy được 1s, mình post code và proteus lên đây, bạn nào xem dùm mình phải chỉnh sửa code như thế nào cho giây của con ds nó chạy đúng nha. thanks.
|
![]() |
![]() |
![]() |
#8 |
Đệ tử 1 túi
Tham gia ngày: Nov 2010
Bài gửi: 12
: |
![]() mình đang làm về đồng hồ số đo thời gian dùng ds1307 hiển thị lên LCD ,mình viet code hoài mà vẫn chạy sai,mình viết 5 đoạn code và built ra 5 file hex, mà không file hex nào chạy hoàn chỉnh cả, mình có post protues và 5 file code lên, các bạn xem dùm mình và chỉnh sửa dùm mình với nhá, thanks các bạn nhiều lắm.
|
![]() |
![]() |
![]() |
|
|