ĐH BÁCH KHOA TP.HCM * KHOA ĐIỆN - ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ ĐỀ KIỂM TRA HỌC KỲ MÔN LẬP TRÌNH NHÚNG HK – 2011/2012 Thời gian: 65 phút (SV sử dụng tài liệu, làm đề) (Đề thi có trang) Câu 1: (3 đ) Cho sơ đồ sau: VC C R R R R D VC C LED R R D LED R R D D LED LED U R R SW 1 3 3 3 3 2 19 18 31 P P P P P P P P 0 0 0 0 P P P P P P P P 1 1 1 1 /A /A /A /A /A /A /A /A D D D D D D D D XTA L1 XTA L2 P P P2 P2 P2 P2 P2 P2 /A /A /A /A /A /A /A /A P /R XD P /T XD P /IN T P 3 /IN T P /T P /T P /W R P /R D A L E /P R O G PSEN 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 30 29 E A /V P P R ST A T89C 51 Họ tên:………………………………… MSSV:………………… Trang - - a) Vẽ máy trạng thái thực công việc sau: Khi reset, LED D1 sáng, LED lại tắt Các LED sáng theo thứ tự D1-D2-D3-D4-D1 … nhấn SW (không chống rung) LED chuyển trạng thái SW nhấn xuống Họ tên:………………………………… MSSV:………………… Trang - - b) Viết chương trình C cho 8051 dựa máy trạng thái vừa thiết lập Họ tên:………………………………… MSSV:………………… Trang - - Câu 2: (3đ) Trong chương trình cho ARM cortex M3, gọi hàm process sau: #include extern int process(int a, int b, int c); int main() { int a, b, c, d; a = 1; b = 2; c = 3; d = process (a, b, c); return (0); } Hãy thực thi hàm process assembly để tính phép tính: a + b – c AREA asm_func, CODE, READONLY THUMB EXPORT process Họ tên:………………………………… MSSV:………………… Trang - - Câu 3: (1đ) a) Nêu khác pre-emptive kernel non-preemptive kernel Họ tên:………………………………… MSSV:………………… Trang - - Câu 4: (1 đ)Trả lời câu hỏi FreeRTOS cách chọn câu trả lời a) Số lượng queue nhỏ dùng chương trình: b) Số lượng queue lớn nhất dùng chương trình lớn bị giới hạn không giới hạn c) Số lượng tác vụ nhỏ dùng chương trình (kể idle): d) Số lượng tác vụ lớn nhất dùng chương trình (kể idle) lớn bị giới hạn không giới hạn Câu 5: (2đ) Giả sử có tác vụ T1 với mức ưu tiên thấp, T2 T3 có mức ưu tiên cao Trả lời câu hỏi sau cách chọn câu trả lời (có thể có nhiều 1) a) Khơng có tác vụ bị block Tác vụ thực thi T0 T1 T2 b) Tác vụ idle có đuợc chạy khơng? Có Khơng c) Task T2 truy cập queue rỗng (empty queue) Tác vụ đuợc thực thi T0 T1 T2 d) Những trường hợp xảy với task T2? Khoanh tròn tất trường hợp có Bị block mãi Unblock sau thời gian tối đa Block tác vụ khác ghi vào queue Block task T2 ghi vào queue Họ tên:………………………………… MSSV:………………… Trang - - BM Điện Tử Họ tên:………………………………… MSSV:………………… Cán đề Trang - - ... queue Block task T2 ghi vào queue Họ tên:………………………………… MSSV:………………… Trang - - BM Điện Tử Họ tên:………………………………… MSSV:………………… Cán đề Trang - - ... Họ tên:………………………………… MSSV:………………… Trang - - ... a + b – c AREA asm_func, CODE, READONLY THUMB EXPORT process Họ tên:………………………………… MSSV:………………… Trang - -