PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   PIC - Thiết kế và Ứng dụng (http://www.picvietnam.com/forum/forumdisplay.php?f=23)
-   -   lưu lại trạng thái làm việc cua pic khi cup dien. (http://www.picvietnam.com/forum/showthread.php?t=1842)

670366770496 25-12-2007 08:47 AM

lưu lại trạng thái làm việc cua pic khi cup dien.
 
Chào tất cả các thành viên trên diễn đàn!
Mình đang có dự án viết chương trình cho máy giặt sử dụng PIC.Nhưng có một điều như thế này mình muốn trao đổi với các anh em.
Với tính năng hoạt động của máy giặt.Trước khi cúp điện trạng thái đang hoạt động của nó phải được lưu lại.Sau khi có điện trở lại trạng thái đó phải được khôi phục và tiếp tục hoạt động.(Nghĩa là có nhớ)
Với PIC thì khi cúp điện mình chỉ biết PIC sẻ bị reset.không nhớ được trạng thái đang hoạt động.
Theo các anh em có cách nào có thể thực hiện được vấn đề như trên không.
Rất mong được góp ý và thảo luận!

electronicltv 25-12-2007 10:35 AM

Bạn nên lưu trạng thái làm việc vào eeprom của PIC, khi đó nếu mất điện thì cũng không mất được giá trị trong eeprom.

Jerry 25-12-2007 11:36 AM

Nếu định lưu vào EEPROM thì nên chú ý đến vấn đề số lần ghi/xóa mà EEPROM chịu được. Thường thì người ta hay lưu nó vào bộ nhớ NVRAM hơn.

namqn 25-12-2007 06:47 PM

Trích:

Nguyên văn bởi Jerry (Post 13533)
Nếu định lưu vào EEPROM thì nên chú ý đến vấn đề số lần ghi/xóa mà EEPROM chịu được. Thường thì người ta hay lưu nó vào bộ nhớ NVRAM hơn.

Lưu vào EEPROM là ổn rồi. Số chu kỳ xóa/ghi điển hình của EEPROM trong PIC là 1 triệu lần (tối thiểu là 100000 lần), thừa đủ cho cả quãng đời làm việc của máy giặt (ngay cả khi mỗi ngày bị cúp điện vài lần!). NVRAM làm phức tạp thêm việc thiết kế phần cứng, mà giá cả thì không rẻ chút nào.

Thân,

Jerry 25-12-2007 09:47 PM

Máy giặt chắc là phải có chip thời gian thực rồi. Bộ nhớ NVRAM thường tích hợp trên chip thời gian thực đó nên cũng ko có gì phức tạp về phần cứng. Tuy nhiên như anh Nam nói, với cái ứng dụng máy giặt này thì lưu vào EEPROM cũng được.

sandro_bk 26-12-2007 09:41 PM

thế các bác cho em hỏi làm sao biết lúc đó mất điện mà ghi vào eeprom,nếu ghi liên tục trong khi làm việc thì đúng là ko cần thiết

electronicltv 26-12-2007 10:00 PM

Cái đó là do bạn lập trình thôi. Bạn chỉ lưu lại trạng thái như: đang giặt hay sấy, xả,....Mỗi lần giặt chỉ ghi vài lần thôi, ghi khi máy giặt chuyển từ quá trình này sang quá trình kia. VD 1 lần giặt ghi 5 lần, số lần ghi tối thiểu là 100000 lần => hoạt động được gần 54 năm :D . Lúc này chắc máy giặt hư mất tiêu hoặc bạn đổi máy mới từ lâu rồi.

bien_van_khat 26-12-2007 10:49 PM

Trích:

Nguyên văn bởi electronicltv (Post 13558)
Cái đó là do bạn lập trình thôi. Bạn chỉ lưu lại trạng thái như: đang giặt hay sấy, xả,....Mỗi lần giặt chỉ ghi vài lần thôi, ghi khi máy giặt chuyển từ quá trình này sang quá trình kia. VD 1 lần giặt ghi 5 lần, số lần ghi tối thiểu là 100000 lần => hoạt động được gần 54 năm :D . Lúc này chắc máy giặt hư mất tiêu hoặc bạn đổi máy mới từ lâu rồi.

Nếu điện mất ngay lúc bạn ghi thì sao? Rõ ràng giải pháp này vẫn chưa an toàn tuyệt đối, với máy giặt thì ko sao, nhưng với ứng dụng đòi hỏi sự tin cậy thì cần phải tìm cách đảm bảo hơn.

Theo mình để nâng cao độ tin cậy có thể dùng pin backup và IC chuyển mạch (tìm thấy con ICL7673 của Intersil). Khi phát hiện mất nguồn chính, PIC lưu công việc vào EEPROM sau đó chuyển sang chế độ SLEEP để giảm tối đa điện năng tiêu thụ, khi có nguồn ngắt ngoài sẽ wake-up PIC trở lại chế độ bình thường.

sandro_bk 27-12-2007 02:00 AM

em thấy làm như bác bien_van_khat rất hay,khi nào có sự có mới làm thì vẫn hay hơn nhắm mắt nhắm mũi làm, ko biết con ICL7673 có bán ở Nhật Tảo ko nhỉ? giá cả chắc ko mắc nhỉ?

bien_van_khat 27-12-2007 08:46 AM

Hờ hờ, ko cần ra hỏi, nhưng dám chắc tới 99% là ko có.

Nếu làm chơi, bạn thử down datasheet, trong đó có sơ đồ nguyên lý, dựa trên sơ đồ đó ta làm lại = BJT.
Nếu làm thiệt, cần số lượng lớn thì trên forum thiếu gì nhà cung cấp, như vieltek đây.

0903579509 28-08-2008 09:29 PM

Theo tôi nên làm thế này: nguồn cấp điện cho pic ta dùng tụ có điện dung tương đối lớn một chút để khi mất điện pic có thể hoạt động được khoảng 1 giây là đủ để lưu dữ liệu. Khi thiết kế mạch bạn dùng một pin nào đó của pic để dò tìm việc mất điện lưới( tốt nhất nên dùng ngắt ngoài - Tôi nghĩ vậy), khi dò thấy mất điện lưới thì 1 giây là đủ để nó lưu giữ liệu. Việc thiết kế mạch dò điện lưới thì quá đơn giản, Tôi đã làm cho các thiết bị trong y tế vì khi mất điện thì nó phải báo cho nhân viên y tế biết mà xữ trí.
Chúc vui!

nmhai 29-08-2008 10:13 AM

lưu lại trạng thái làm việc cua pic khi cup dien.
 
Không cần phải phức tạp thế đâu. Trong vi điều khiển PIC có chức năng phát hiện mất điện, khi xảy ra mất điện vi điều khiển sẽ nhận ra và có thể lưu dữ liệu vào epprom.

vu son 26-05-2010 07:39 PM

Mình cũng đang gặp vấn về số lần ghi xoá EEPROM,
Bác nmhai có thể nói rõ thêm về chức năng này của Pic cho mình với dc ko?
Cảm ơn bác nhiều !

HAI1817 27-05-2010 11:32 AM

hay đấy nói nữa đi

misa2210 30-05-2010 06:57 AM

chào mọi người,

theo datasheet, mình thấy PIC hỗ trợ nguồn ~ 2 - 5.5 V, điều này có đúng không ? (chưa xài nên không biết)

nếu như vậy: chỉ cần co 1 pin 3V làm backup là được rồi:
5V (Adapter) ---+---- PIC
3V (Pin) --|>|---|

như vậy mất điện thi PIC vẫn còn làm việc,
=> có thể lưu trạng thái + rồi sleep

chuyện nguồn back-up 3V đủ để ghi ROM, hay làm mấy việc khác hay không thì tùy,
=> nếu cần 5V thì cho thêm pin back-up số 2 (xài 2 cell LiPo - cho nó mắc - 160k :-D) rồi làm giống như UPS :
http://www.microchip.com/Microchip.w...px?id=en548377

thân chào
misa


Múi giờ GMT. Hiện tại là 03:08 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