Lệnh đọc về (Read back command)

Một phần của tài liệu Luận văn điều khiển từ xa bằng điện thoại, ngành kỹ thuật (Trang 51)

II. ĐÂNH GIÂ – HƯỚNG PHÂT TRIỂN ĐỀ TAØ I:

3.Lệnh đọc về (Read back command)

Lệnh năy cho phĩp người sử dụng kiểm tra giâ trị đếm, kiểu lập trình trạng thâi ngõ ra vă cờ đếm không hợp lệ (null count flag) của bộ đếm được chọn.

Lệnh được ghi văo thanh ghi từ điều khiển (hình 10) vă cho phĩp chọn bộ đếm tương ứng với câc bit D3, D2, D1 = 111.

Lệnh đọc về dùng để chốt ngõ ra chốt của nhiều bộ đếm (OL) bằng câch đặt COUNT D5 = 0 vă chọn bộ đếm cần đọc.

Chức năng lệnh năy cũng giống như câc lệnh chốt bộ đếm khâc. Mỗi bộ đếm chốt số đếm cho khi được đọc ra (hoặc được lập trình lại). Bộ đếm đó không tự động được chốt lại giâ trị đếm khi đọc như câc bộ đếm khâc.

Nếu dùng lệnh đọc về nhiều lần trín cùng 1 bộ đếm mă không đọc ra số đếm thì số đếm đọc ra sẽ lă giâ trị ngay khi nhận lệnh đọc về.

Lệnh đọc về cũng được dùng để chốt trạng thâi thông tin (Status in formation) của bộ đếm được chọn bằng câch đặt STATUS D5 = 0 trạng thâi được chốt để đọc ra. (Hình 11).

Bit D5 đến D0 chức kiểu lập trình giống như kiểu từ điều khiển trước đó. Ngõ ra D7 chức trạng thâi hiện thời của ngõ ra. Điều năy cho phĩp người sử dụng “giâm sât” được ngõ ra bằng phần mềm vă có thể loại bỏ được 1 văi phần cứng khỏi hệ thống.

Null Count bit D6 chỉ ra rằng : khi số đếm sau cùng ghi trong thanh ghi bộ đếm thì (Counter Register (CR)) được đưa văo trong Couting Element (CE) thời gian xảy ra phụ thuộc văo kiểu bộ đếm vă mô tả mode nhưng cho đến khi số đếm sau cùng được đưa văo trong Couting Element (CE) thì nó không thể đọc ra từ bộ đếm. Nếu số đếm được chốt hay đọc trước thời gian năy thì số đếm mới sẽ được ghi văo (hoạt động null count ở hình 12).

Nếu lệnh chốt nhiều trạng thâi của bộ đếm mă không đọc ra thì chỉ lần chốt đầu tiín bị bỏ qua vă trạng thâi đọc ra sẽ lă trạng thâi của bộ đếm ngay khi nhận lệnh.

Că 2 số đếm vă trạng thâi của bộ đếm được chọn có thể được chốt đồng thời bằng câch đặt COUNTvă STATUS D5D4 = 0, giống như khi đặt 2 lệnh đọc về cùng lúc………

Mode Definition (Định nghĩa kiểu hoạt động).

- Clk pulse : xung clock tâc động bằng cạnh xuống vă ngõ văo xung clock cho từng bộ đếm.

- TRIGGER : xung kích hoạt cạnh trín của ngõ văo gate của từng bộ đếm. - COUNTER LOADING :

Mode 0 : ngắt khi đếm xong :

Mode 0 được dùng tiíu biểu cho việc đếm sự kiện. Sau khi ghi từ điều khiển văo, ngõ ra OUT = 0 cho đến khi bộ đếm đạt tới 0. Ngõ ra sau đó lín 1 trở lại cho đến khi gặp 1 số đếm mới hoặc 1 từ điều khiển cho Mode 0. Gate = 1 cho phĩp đếm, Gate = 0 không cho phĩp đếm vă Gate không ảnh hưởng đến ngõ ra.

Sau khi từ điều khiển vă số đếm ghi văo bộ đếm thì số đếm sẽ được chuyển đến bộ đếm ở chu kỳ đồng hồ sau. Xung năy không lăm giảm số đếm

vì vậy khi nạp văo N số đếm thì ngõ ra OUT = 0 trong (N + 1) xung Clock. Nếu nạp văo 2 byte số đếm thì :

1. Byte đầu tiín (LSB), ngõ ra xuống thấp nhưng chưa cho phĩp đếm. 2. Byte thứ 2 (MSB) cho phĩp bắt đầu đếm trín chu kỳ xung kế tiếp.

3. Nếu chỉ ghi LSB văo bộ đếm thì sau khi bộ đếm đạt tới 0 sẽ quay vòng lại FFFFH vă dừng bộ đếm.

Tuy nhiín nếu LSB được gửi đi sau khi bộ đếm đếm lùi từ FFFFH thì MSB được đưa văo bộ đếm để đếm mă không dừng bộ đếm lại.

Điều năy cho phĩp trình tự đếm xảy ra đồng bộ bởi phần mềm.

Nếu 1 số đếm được ghi văo khi Gate = 0 thì nó sẽ được chuyển đến xung Clock kế tiếp, khi năo Gate = 1 thì ngõ ra OUT = 0.

Mode 1 : HARDWARE RETRIGGERABLE ONE – SHOT (đa hăi đơn

ổn tâi kích hoạt).

Ban đầu OUT =1, OUT = 0 khi có xung Clock kỉm theo 1 xung kích hoạt đơn ổn vă giữ mức 0 đến khi bộ đếm về Zero. Sau đó ngõ ra sẽ lín mức 1 trở lại vă giữ cho đến khi gặp 1 xung kích hoạt của cửa Gate.

Khi nạp văo số đếm N vă có xung đơn ổn kích hoạt thì ngõ ra ở mức 0 trong N xung clock. Khi đó nếu có kích hoạt xung đơn ổn tiếp thì ngõ ra vẫn không đổi.

Mode 2 : RATE GENERATOR (phât xung).

Chức năng của Mode năy giống như 1 bộ đếm chia N, nó được sử dụng cho việc phât ra 1 chuỗi xung Clock ngắt quêng.

Đầu tiín ngõ ra OUT = 1, khi số đếm giảm đến 1 thì ngõ ra OUT = 0 trong 1 xung. Sau đó OUT = 1 trở lại vă bộ đếm lặp lại quâ trình đếm.

Mode 2 lăm việc tuần hoăn vă trình tự lặp lại không định rõ. Nạp văo số đếm N thì trình tự lặp lại lă N chu kỳ xung Clock.

Gate = 1 cho phĩp đếm, Gate = 0 trong suốt 1 xung Clock ngõ ra thì OUT = 1 ngay lập tức. 1 Trigger được tải văo bộ đếm cùng với số đếm trong xung đồng hồ tiếp theo vă ngõ ra OUT = 0 trong N xung Clock có Trigger cộng thím ngõ văo Gate có thể sử dụng đồng bộ với bộ đếm. (adsbygoogle = window.adsbygoogle || []).push({});

Sau khi ghi 1 từ điều khiển vă 1 số đếm, bộ đếm sẽ được chuyển đến xung Clock kế tiếp. OUT = 0 trong N xung Clock, điều năy cũng cho phĩp bộ đếm đồng bộ với phần mềm.

Ghi số đếm trong khi đếm sẽ không lăm ảnh hưởng đến trình tự đếm. Nếu 1 Trigger được nhận sau khi ghi số đếm nới nhưng trước khi kết thúc một chu

kỳ lăm việc thì bộ đếm sẽ được chuyển đi cùng số đếm mới văo chu kỳ đồng hồ sau vă tiếp tục đếm lùi từ số đếm mới. Hay số đếm mới sẽ được chuyển đi ngay khi kết thúc chu kỳ đếm vă trong Mode 2 số đếm lă 1 sẽ không hợp lệ.

CLKCLK CLK CLK CLK CLK CLK OUT OUT OUT OUT OUT OUT G G Mode 0 Mode 1 Mode 2 Mode 3 Mode 4 Mode 5

Trigger with count of 5 Trigger with count of 8 Count of 7 loaded

Count of 5 loaded

Count of 6 loaded Trigger with count of 5

IC 8085

Một phần của tài liệu Luận văn điều khiển từ xa bằng điện thoại, ngành kỹ thuật (Trang 51)