Câu hỏi của một bạn như sau:
Thanks ace vì đã ghé toppic
vấn đề là em định làm một mạch đồng hồ số hiện thị cả giờ - phút - giây. Em sử dụng con AT9c51 để làm vi điều khiển chính. Em còn sử dụng 6 IC 71HC595 để giải mã điều khiển 6 led 7 đoạn. Mọi thủ tục từ code cho đến mạch mô phỏng đều OK và đã tiến hành chạy trên proteus thành công. Nhưng một vấn đề em gặp phải đó là việc làm sao cho mạch trên chạy đúng thời gian thực. Vì em chỉ là sinh viên năm 2 quá gà cho việc tính chu kỳ máy nên em dùng hàm wait (n) như sau:
void wait (long n)
{
long i;
for(i = 0; i < n; i++)
;
}
vậy em muốn hỏi các anh chị nào có kinh nghiệm về real time cho em biết với n bằng mấy thì vòng lập trên chạy được 1 giây khi lắp mạch ngoài thực tế.
Sau nhiêu lần thử thủ công bằng tay em được kết quả như sau:
khi cho n = 14300 thì proteus chạy gần đúng với thời gian thực. Nhưng khi test lại cho nó chạy cùng với bộ đếm giờ của điện thoại NOKIA thì thời gian đầu hầu như là chính xác. Nhưng độ 20 phút thì mạch mô phỏng của em bị trễ 2 giây (cái này là quá lớn rồi sau làm mạch thật được).
Nhưng em còn được biết do máy tính của chúng ta không phải là hệ thông real time chủ yếu nó dựa vào hệ điều hành và phần mềm. Vì máy tính phải chạy protues (đương nhiên là còn qua trình dịch rồi xuống hệ điều hành rồi xuống mã máy ...) nên phần mô phỏng trong proteus không chạy đúng real time.
Và em xin hỏi thêm một câu nữa là làm sao để nhúng nhạc vào vi điều khiển (đơn âm cũng được) như dạng mấy cái đèn trung thu ý. Vì em muốn làm thêm chức năng hẹn giờ cho nó nữa.
Vậy anh chị nào làm cái này rồi cho em xin chút ý kiến. Em xin chân thành cảm ơn!
void wait (long n)
{
long i;
for(i = 0; i < n; i++)
;
}
vậy em muốn hỏi các anh chị nào có kinh nghiệm về real time cho em biết với n bằng mấy thì vòng lập trên chạy được 1 giây khi lắp mạch ngoài thực tế.
Sau nhiêu lần thử thủ công bằng tay em được kết quả như sau:
khi cho n = 14300 thì proteus chạy gần đúng với thời gian thực. Nhưng khi test lại cho nó chạy cùng với bộ đếm giờ của điện thoại NOKIA thì thời gian đầu hầu như là chính xác. Nhưng độ 20 phút thì mạch mô phỏng của em bị trễ 2 giây (cái này là quá lớn rồi sau làm mạch thật được).
Nhưng em còn được biết do máy tính của chúng ta không phải là hệ thông real time chủ yếu nó dựa vào hệ điều hành và phần mềm. Vì máy tính phải chạy protues (đương nhiên là còn qua trình dịch rồi xuống hệ điều hành rồi xuống mã máy ...) nên phần mô phỏng trong proteus không chạy đúng real time.
Và em xin hỏi thêm một câu nữa là làm sao để nhúng nhạc vào vi điều khiển (đơn âm cũng được) như dạng mấy cái đèn trung thu ý. Vì em muốn làm thêm chức năng hẹn giờ cho nó nữa.
Vậy anh chị nào làm cái này rồi cho em xin chút ý kiến. Em xin chân thành cảm ơn!
Comment