Nếu đây là lần đầu tiên đến với Điện Tử Việt Nam, bạn có thể đọc phần Hỏi đáp bằng cách nhấn vào liên kết. Có thể bạn cần đăng kí trước khi có thể gửi bài . Để bắt đầu xem bài viết, chọn diễn đàn bạn muốn thăm dưới đây.
Thông báo
Collapse
No announcement yet.
Bộ nhớ chương trình, bộ nhớ dữ liệu, ngăn xếp, cơ chế ngắt và SFR của 8051
Các bác cho em hỏi, khi VXL (AT89C51) bị treo do bị nhiễu có cách nào hoặc mạch nào để nó tự reset không?
con 89c51 bên trong không trang bị whatdogtime nên nếu bạn muốn reset lại nó khi nó bị treo thì có thể tự thiết kế một mạch whatdog bên ngoài bằng một mạch định thời 555 chẳng hạn, sau một thời gian nào đấy do bạn tự đặt thì bộ giao động này gửi tới chân reset và reset lại vi điều khiển, chỉ ngăn chặn được xung này bằng phần mềm điều khiển do con 89c51 tạo ra, bạn có thể dùng ngắt để xoá whatdog ngoài này thông qua các mạhc AND, OR, NOT , khi con 89c51 bị treo thì nó không thể gửi ra xung xoá whatdog và thể là sau một thời gian bạn cài đặt cho whatdog là nó tự động reset vi điều khiển . Trong lập trình các VDK có whatdog rồi thì phải xoá whatdog thường xuyên hoặc cấm nó từ đầu nếu không muốn bị reset VDK .
con 89c51 bên trong không trang bị whatdogtime nên nếu bạn muốn reset lại nó khi nó bị treo thì có thể tự thiết kế một mạch whatdog bên ngoài bằng một mạch định thời 555 chẳng hạn, sau một thời gian nào đấy do bạn tự đặt thì bộ giao động này gửi tới chân reset và reset lại vi điều khiển, chỉ ngăn chặn được xung này bằng phần mềm điều khiển do con 89c51 tạo ra, bạn có thể dùng ngắt để xoá whatdog ngoài này thông qua các mạhc AND, OR, NOT , khi con 89c51 bị treo thì nó không thể gửi ra xung xoá whatdog và thể là sau một thời gian bạn cài đặt cho whatdog là nó tự động reset vi điều khiển . Trong lập trình các VDK có whatdog rồi thì phải xoá whatdog thường xuyên hoặc cấm nó từ đầu nếu không muốn bị reset VDK .
con 89c51 bên trong không trang bị whatdogtime nên nếu bạn muốn reset lại nó khi nó bị treo thì có thể tự thiết kế một mạch whatdog bên ngoài bằng một mạch định thời 555 chẳng hạn, sau một thời gian nào đấy do bạn tự đặt thì bộ giao động này gửi tới chân reset và reset lại vi điều khiển, chỉ ngăn chặn được xung này bằng phần mềm điều khiển do con 89c51 tạo ra, bạn có thể dùng ngắt để xoá whatdog ngoài này thông qua các mạhc AND, OR, NOT , khi con 89c51 bị treo thì nó không thể gửi ra xung xoá whatdog và thể là sau một thời gian bạn cài đặt cho whatdog là nó tự động reset vi điều khiển . Trong lập trình các VDK có whatdog rồi thì phải xoá whatdog thường xuyên hoặc cấm nó từ đầu nếu không muốn bị reset VDK .
Dùng con AT89S51 đi. Cần gì phải phức tạp thế.
AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
Xem thêm tại Online Store ---> Click here
Mob: 0982.083.106
xin các bác giải thích giúp em vấn đề này nhé: khi mở rộng bộ nhớ ngoài(Rom hay Ram gì tuỳ) khi này thì chân EA phải nối mass, khi ta viết chương trình chính, chương trình này sẽ nạp vào trong IC89, nhưng mà khi gắn IC89 vào mạch để chạy thì chân EA đang nối mass như vậy thì làm sao chương trình của chúng ta chạy được,(vì theo như trong sách nói là EA nối lên 5v thì VĐK sẽ truy suất bộ nhớ trong), chẳng lẻ lúc này VĐK có thể làm việc cùng lúc bộ nhớ nội và bộ nhớ ngoại hay là gì đó mà ..... em nhờ các bác giải thích hộ nhé. cám ơn các bác nhiều.
xin các bác giải thích giúp em vấn đề này nhé: khi mở rộng bộ nhớ ngoài(Rom hay Ram gì tuỳ) khi này thì chân EA phải nối mass, khi ta viết chương trình chính, chương trình này sẽ nạp vào trong IC89, nhưng mà khi gắn IC89 vào mạch để chạy thì chân EA đang nối mass như vậy thì làm sao chương trình của chúng ta chạy được,(vì theo như trong sách nói là EA nối lên 5v thì VĐK sẽ truy suất bộ nhớ trong), chẳng lẻ lúc này VĐK có thể làm việc cùng lúc bộ nhớ nội và bộ nhớ ngoại hay là gì đó mà ..... em nhờ các bác giải thích hộ nhé. cám ơn các bác nhiều.
Cậu đọc kỹ lại đi nhé. Chỉ có dùng ROM ngoài thì EA mới nối đất. Còn dùng RAM ngoài thì chẳng liên quan gì đến EA cả.
Khi EA nối đất thì chương trình chính được nạp vào ROM chứ không phải VXL nhé.
AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
Xem thêm tại Online Store ---> Click here
Mob: 0982.083.106
Nhờ các bác xem hộ em cấu trúc đoạn chương trình sau đây nhé:em ko viết hết toàn bộ chương trình vì em chỉ muốn hỏi về cấu trúc chương trình thôi(nếu các bác thấy cần thiết thì em sẽ viết hết chương trình lên sau nhé)
xxxxxxxxxxxxxxxxxxxxxxxxxxx
ORG 500H ;Khai báo vùng nhớ lưu mã 7d
ma7d: DB 0c0h,0f9h,0a4h,0b0h,099h,092h
ORG 0000H ; Bat dau chuong trinh chinh
sjmp main
main: ................ ;
.................;một số lệnh gì đó ko quan trọng
mov dptr,#500h
mov A,11h
MOVC A,@A+dptr
..................
..................
end
xxxxxxxxxxxxxxxxxxxxxxxxx
em chỉ muốn hỏi là có phải chương trình này được viết có sử dụng bộ nhớ Rom ngoài phải ko (vì em thấy có dptr và lệnh MOVC A,@A+dptr). Nếu đúng như vậy thì địa chỉ khai báo 500h làm sao ta giải mã địa chỉ ra được như vậy?.
à còn nửa là cách sử dụng kiểu khai báo lệnh ''DB'' như vậy có đúng ko các bác, sao trong sách tống văn on em ko thấy nói lệnh này. Đoạn chương trình này là chương trình đếm sản phẩm và hiển thị led 7d, của một bạn trên mạng chỉ em làm nhưng mà làm hoài mà ko chạy được(phần cứng của em ko có bộ nhớ ngoài) nên em mới có vài nghi ngờ chỉ còn biết nhờ các bác.
{hỏi một câu dốt trong chốc lác còn hơn không hỏi sẻ dốt nát cã đời kekekek}
Cậu đọc kỹ lại đi nhé. Chỉ có dùng ROM ngoài thì EA mới nối đất. Còn dùng RAM ngoài thì chẳng liên quan gì đến EA cả.
Khi EA nối đất thì chương trình chính được nạp vào ROM chứ không phải VXL nhé.
cám ơn bác VNarmy,em đã đọc lại rồi thật đúng là như bác nói, như vậy là ta phải cần có một mạch nạp Rom phải ko bác, chương trình ta sẽ viết và biên dịch bình thường nhưng mà lúc này sẻ nạp vào con rom ngoài.
Nhờ các bác xem hộ em cấu trúc đoạn chương trình sau đây nhé:em ko viết hết toàn bộ chương trình vì em chỉ muốn hỏi về cấu trúc chương trình thôi(nếu các bác thấy cần thiết thì em sẽ viết hết chương trình lên sau nhé)
xxxxxxxxxxxxxxxxxxxxxxxxxxx
ORG 500H ;Khai báo vùng nhớ lưu mã 7d
ma7d: DB 0c0h,0f9h,0a4h,0b0h,099h,092h
ORG 0000H ; Bat dau chuong trinh chinh
sjmp main
main: ................ ;
.................;một số lệnh gì đó ko quan trọng
mov dptr,#500h
mov A,11h
MOVC A,@A+dptr
..................
..................
end
xxxxxxxxxxxxxxxxxxxxxxxxx
em chỉ muốn hỏi là có phải chương trình này được viết có sử dụng bộ nhớ Rom ngoài phải ko (vì em thấy có dptr và lệnh MOVC A,@A+dptr). Nếu đúng như vậy thì địa chỉ khai báo 500h làm sao ta giải mã địa chỉ ra được như vậy?.
à còn nửa là cách sử dụng kiểu khai báo lệnh ''DB'' như vậy có đúng ko các bác, sao trong sách tống văn on em ko thấy nói lệnh này. Đoạn chương trình này là chương trình đếm sản phẩm và hiển thị led 7d, của một bạn trên mạng chỉ em làm nhưng mà làm hoài mà ko chạy được(phần cứng của em ko có bộ nhớ ngoài) nên em mới có vài nghi ngờ chỉ còn biết nhờ các bác.
{hỏi một câu dốt trong chốc lác còn hơn không hỏi sẻ dốt nát cã đời kekekek}
AT89S51 có ROM nội dung lượng 4K tương đương với 12 bit địa chỉ. Như vậy địa chỉ 500h vẫn có thể nằm trong ROM nội.
Còn về khai báo DB thì cậu cứ dịch thử. Nếu sai chương trình dịch sẽ ra thông báo lỗi.
AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
Xem thêm tại Online Store ---> Click here
Mob: 0982.083.106
Trong bối cảnh Khách hàng B2B ngày càng kỳ vọng vào trải nghiệm mua sắm liền mạch, cá nhân hóa và khả năng tương tác theo thời gian thực, việc Doanh nghiệp áp dụng phần mềm quản lý đơn bán hàng B2B trở thành yếu tố quan trọng để đáp...
Vâng, em biết chứ bác, thực tế thì có rất nhiều điều tế nhị rất khó áp dụng được những gì tốt đẹp nhất mà chúng ta tìm ra (và nhiều khi mình nghĩ là tốt nhưng lại không tốt cho người khác). Tuy nhiên, ĐT đã và đang chọn sự sẻ...
Trong bối cảnh Khách hàng B2B ngày càng kỳ vọng vào trải nghiệm mua sắm liền mạch, cá nhân hóa và khả năng tương tác theo thời gian thực, việc Doanh nghiệp áp dụng phần mềm quản lý đơn bán hàng B2B trở thành yếu tố quan trọng để đáp ứng nhu cầu của thị trường. Tuy nhiên, làm sao để DN có thể...
Trong bối cảnh Khách hàng B2B ngày càng kỳ vọng vào trải nghiệm mua sắm liền mạch, cá nhân hóa và khả năng tương tác theo thời gian thực, việc Doanh nghiệp áp dụng phần mềm quản lý đơn bán hàng B2B trở thành yếu tố quan trọng để đáp ứng nhu cầu của thị trường. Tuy nhiên, làm sao để DN có thể...
Xem video hình như bác vẫn dùng jumper để chuyển đổi điện áp? Chưa hiểu bác mod lại thế nào. Mạch này xài pin nên chắc cần hiệu suất cao, nếu autovolt thì theo bác tổn hao thêm bao nhiêu là chấp nhận được?
Giải pháp quản lý Đơn bán hàng B2B là giải pháp công nghệ giúp các DN quản lý toàn bộ quy trình tiếp nhận, theo dõi và thực hiện các đơn hàng từ Khách hàng B2B. Công cụ này cho phép DN xử lý khối lượng đơn hàng lớn, quản lý các chính sách giá...
Comment