Ứng dụng nhỏ với Pic
1 Attachment(s)
Được học Pic thì thích rồi, nhưng mình nghĩ phải làm một cái ứng dụng thực tế với Pic thì mới khoái được (mini thôi, cho mau thấy !).
Ở nhà các bạn có chơi cá kiểng không? ở hồ cá kiểng thì thường phải có cái bơm lọc nước nho nhỏ, để lọc cho nước trong ấy mà. Nếu không có nó thì cá chẳng sống được mấy ngày, mà có nó thì sao ... tiếng ù ù nho nhỏ thôi nhưng liên tục ngày đêm không nghĩ, lắm khi mất điện một phát nghe nhẹ cả người ! Hẳn là tiếng ù ù kia cũng đã làm căng thẳng mấy sợi thần kinh chứ chẳng chơi đâu (ban đêm càng tệ). Sẵn những kiến thức học được trên PicVietnam này, tôi làm luôn 1 cái mạch điều khiển cho cái bơm lọc nước hồ cá kiểng kia cho đỡ ù tai ! Ý tôi là cho nó chạy chừng chừng, 10 phút ON, lại OFF 10 phút, ban đêm cho nghĩ hẳn ... Làm cái này tôi đã "nạp" cở 99% cái "Lịch vạn niên" của Bác Thép trên diễn đàn đây vào cho con Pic của mình (à mà tôi phải cám ơn và xin lỗi bác Thép cái đã !), và tôi cũng dùng MikroC. Xin mời các bác mới mày mò em PIC như tôi cùng tham khảo: Linh kiện: Pic16F877A, thạch anh 4Mhz, IC ds1307. Code:
unsigned short set, luu, giay, phut, gio, thu, ngay, thang, nam, flag1, flag2, delay1s = 0, delay1p = 0; Không hiểu sao, khi chạy mô phỏng thì OK 100% Còn chạy trên mạch thực tế thì có chuyện, mà tôi chưa lý giải được: Sau khi khởi động được 30 giây thì mạch đã nháy đèn phút rồi (đã qua 1 phút = 900 lần tràn timer0, không đúng!), từ phút thứ 2 trở đi thì vẫn đủ 60 giây. Chỗ này chắc phải nhờ đến các Sư Huynh chỉ giúp thôi ! À còn về mạch điện, vì không rành lắm nên tôi chơi thẳng chân con Pic vào cổng Triac, chắc không ổn. Có gì nhờ các Huynh luôn (về xử lý giao tiếp cách ly giữa Pic và Triac - mang điện 220v) Lưu ý, mạch này không có LCD nên hơi kén người xem và chỉnh giờ cho nó 1 chút: - Cứ 1 phút nó báo giờ 1 lần, nhưng ở dạng mã nhị phân BCD à nghen (xuất trên PORTD) - Muốn chỉnh giờ theo đồng hồ thì phải đúng ngọ đó, (đúng 12 giờ trưa, nhấn vào cái nút duy nhất đó) hơi bị mê tín đó ! |
sao huynh ko dùng CCS cho dễ .
mạn phép hỏi huynh vài câu có gì ko phải huynh bỏ qua nhé : chương trình của huynh ko có nút thiết lập : giờ ,phút, giây, thứ, ngày, tháng ,năm ngộ nhỡ có thằng tẻ con nào táy máy nó rút mất pin 3V nuôi cho DS1307 , thế thì huynh lại phải xạc lại chương trình cho DS1307 à. chương trình của huynh bật tằt sau 10 phút thế sao ko nấy luôn từ trong DS1307 ra mà dùng , huynh dùng time0 làm gì cho mệt mă lại con gây ra sai số nữa chứ . |
Xin chào Lion !
Hay quá, đằng ấy cũng đang online à ! Ừ cậu nói có lý đấy, mình xin hồi âm nhé : - Mình lên PicVietnam mới làm quen với PIC, vớ được cái "lịch vạn niên" của bác Thép, thế là theo MikroC luôn (Tất nhiên cũng đã qua CCS để học Pic trên diễn đàn này rồi mới đọc được cái "lịch vạn niên" ấy chứ ! mà mình thấy MikroC nó hổ trợ sẵn các hàm I2C sướng quá, mần luôn). - Không có nút chỉnh ngày, tháng, năm: Vì cái này chỉ chạy lòng vòng 24 tiếng thôi. Mạch ứng dụng không phải đem lại hiệu quả gì, chủ yếu là để học nên mình chỉ làm 1 cái nút duy nhất (để lấy giờ vào đúng 1 thời khắc trong ngày là 12 giờ trưa) cho đỡ tốn tiền mua LCD. Lỡ đứt pin lắp lại thì cứ phải chờ đúng ngọ, nhấn dùm vào cái nút. Lỡ qua ngọ rồi ...thì phải chờ đến ngọ ngày hôm sau vậy. Bạn lưu ý đoạn xử lý tự động xạc lại cho ds1307 khi mất nguồn pin, mình mới học được của meishun đó. - Sao không lấy 10 phút từ ds1307: Ý này hay đây, tớ phải chôm mới được (cám ơn lion nhé) Có điều cũng chỉ hơi mệt thôi chớ sai số thì không, Timer0 chỉ canh chừng 1s thì cho nháy đèn báo giây, chừng 1 phút thì cho đọc ds1307 1 lần thôi (đọc gì cho nhiều ... cá kiểng mà), giờ phút sử dụng vẫn lấy từ ds1307 mà. Ý mình muốn bắt con Pic phải làm đồng thời nhiều việc trong cùng 1 lúc thử coi thế nào, muốn vậy thì phải khai thác ngắt Timer của nó đó. Như thế này thì trong con Pic có 2 luồng xử lý công việc đồng thời -> về lý thuyết mạch chạy mượt hơn so với dồn hết vào đọc ds1307, Pic chỉ xử lý 1 luồng nên ì ạch hơn (nói péc !!!) Lại nữa: nếu làm như bạn, thì đâu được chứng kiến cái cảnh "một phút chỉ có 30 giây !" Xin cám ơn Lion nhiều nhé! Rất mong được góp ý, hẹn gặp lại. |
Bạn có hứng thú làm cho nó gọn nhẹ, rẻ tiền hơn nữa không? Vì chip PIC16F877A và DS1307 cũng khá tốn tiền và cồng kềnh cho cái ứng dụng nho nhỏ này.
Liệu có bạn nào có hứng thú chuyển thành thiết kế chỉ sử dụng 1 PIC 8/18 chân không? Thân, |
Trích:
|
Tuyệt vời, gặp Trưởng lão đây rồi, xin bái sư phụ 1 bái thôi !
Chà chà, Sư Huynh ra đề hơi khó cho mấy đệ rồi, làm I2C bằng phần mềm thì em phải chờ Huynh chỉ thêm mới dám đụng vào. Còn không dùng ds1307 thì em nghĩ mãi mà đành chịu, chẳng lẽ cho con Pic chạy pin được à anh Namqn ??? nếu thế thì cũng đáng thật ! |
Trích:
PIC có thể chạy ở áp nguồn 2 V, trong khi DS1307 cần pin 3 V để nuôi nó khi mất nguồn. Vậy có thể mượn cục pin của DS1307 để dùng cho PIC, nhằm duy trì đồng hồ lúc mất nguồn. Thân, |
Tìm Pic 8 chân, 18 chân
Xin cám ơn anh nhiều !
Dùng pin cho Pic thì giảm ngay được con ds1307, tốt quá ! Em sẽ làm lại, phải kiếm mấy con Pic mini đó mới được. Tiện thể anh Namqn có thể chỉ giúp có thể kiếm con Pic 16F84 và con Pic 8 chân (không nhớ tên) ở đâu được. Em đã gởi mua ở Sài Gòn và Nha Trang rồi mà không tìm được. |
Bác này ở đâu vậy? Nếu mua ko được liên hệ tui nhé :D Tui ở Nha Trang nè. 16F84 cũng có số chân như 16F628A mà con kia lại thêm được nhiều chức năng hơn, giá cả cũng ngang nhau sao ko xài 16F628A cho nó sướng?
Có gì liên lạc qua mail: hhai.le@gmail.com |
Con PIC16F84 tui hỏi ngoài chợ trời cũng gần = PIC16F877 thế thì thay đổi có tác dụng gí chứ các bác .
với lại mục đích chính là chúng ta là đang học chứ có phải là làm hàng loạt đâu mà tính toán làm gì phải ko các bác |
Trích:
Không nên tìm mua PIC16F84(A). Thân, |
Trích dẫn ý kiến of bác minhsondaklak : " Mình lên PicVietnam mới làm quen với PIC, vớ được cái "lịch vạn niên" của bác Thép, thế là theo MikroC luôn (Tất nhiên cũng đã qua CCS để học Pic trên diễn đàn này rồi mới đọc được cái "lịch vạn niên" ấy chứ ! mà mình thấy MikroC nó hổ trợ sẵn các hàm I2C sướng quá, mần luôn). "
em chưa tìm hiểu về phần mềm MikroC nên ko biết nó hỗ trợ những hàm gì . còn CCS bản 4.068 hỗ trợ đầy đủ các hàm thoải mái cho các bác dùng . |
Trích:
Tôi cho rằng học PIC với nhiều người là để tìm hiểu, nắm bắt thêm kiến thức. Do đó, cái được lớn nhất không phải là tiết kiệm được ít tiền, hay làm cho mạch nhỏ hơn, đẹp hơn một chút, mà chính là việc chúng ta khẳng định được khả năng cải tiến thiết kế, khẳng định được việc cải tiến là khả thi, và hơn hết là chúng ta học được điều gì đó từ những bài toán nhỏ như vậy. Những phần mềm, hay thiết kế mà bạn có được một cách miễn phí trên mạng thường bắt nguồn từ những nhu cầu cá nhân, và sau đó tác giả không ngại chia xẻ với người khác, vì giữ riêng cho họ không có lợi bằng chia xẻ với những người khác. Ít nhất, sau khi làm xong bài tập này, bạn biết được rằng nếu có thuê người khác làm thì mức chi phí bao nhiêu là xứng đáng. Thân, |
he he bác làm gì mà phê bình em ghê thế .
|
Chia sẻ lên mạng thì sẽ có nhiều người được học và tham khảo, hãy cho đi để nhận được những thứ tốt đẹp hơn. mỗi người góp chút là có sự thành công lơn đó => cho nền điện tử của Việt nam.
|
Múi giờ GMT. Hiện tại là 04:01 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam