Техника микропроцессорных систем в коммутации. Проектирование микропроцессорных систем на базе микроконтроллеров AVR фирмы Atmel. Горохин В.Н. - 14 стр.

UptoLike

Составители: 

27
Ɋɢɫ. 12. Ɂɚɩɢɫɶ ɞɚɧɧɵɯ ɜ ɀɄɂ
Ⱦɥɹ ɬɨɝɨ, ɱɬɨɛɵ ɨɩɪɟɞɟɥɢɬɶ, ɤɨɝɞɚ ɤɨɧɬɪɨɥɥɟɪ ɀɄɂ ɡɚɤɨɧɱɢɬ ɫɜɨɢ ɜɧɭɬ-
ɪɟɧɧɢɟ ɨɩɟɪɚɰɢɢ, AVR ɦɨɠɟɬ ɨɩɪɚɲɢɜɚɬɶ BUSY-ɮɥɚɝ ɢɧɞɢɤɚɬɨɪɚ (ɤɨɦɚɧɞɚ
«ɱɬɟɧɢɟ busy-ɮɥɚɝɚ»). ȼɬɨɪɨɣ, ɛɨɥɟɟ ɩɪɨɫɬɨɣ ɫɩɨɫɨɛ ɡɚɤɥɸɱɚɟɬɫɹ ɜ ɬɨɦ, ɱɬɨ
ɭɩɪɚɜɥɹɸɳɢɣ ɦɢɤɪɨɤɨɧɬɪɨɥɥɟɪ ɩɪɨɫɬɨ ɜɵɩɨɥɧɹɟɬ ɜɪɟɦɟɧɧɭɸ ɡɚɞɟɪɠɤɭ ɩɨɫɥɟ
ɤɚɠɞɨɣ ɩɟɪɟɞɚɱɢ ɢɧɮɨɪɦɚɰɢɢ.
ȿɫɥɢ ɜɨ ɜɪɟɦɹ ɰɢɤɥɚ ɡɚɩɢɫɢ AVR-ɦɢɤɪɨɤɨɧɬɪɨɥɥɟɪ ɩɟɪɟɞɚɟɬ ɜ ɤɨɧɬɪɨɥɥɟɪ
ɢɧɞɢɤɚɬɨɪɚ ɤɨɞ ɤɨɦɚɧɞɵ, ɬɨ ɷɬɨɬ ɤɨɞ ɡɚɩɢɫɵɜɚɟɬɫɹ ɜ ɪɟɝɢɫɬɪ ɤɨɦɚɧɞ ɤɨɧ-
ɬɪɨɥɥɟɪɚ ɀɄɂ, ɢ ɤɨɦɚɧɞɚ ɫɪɚɡɭ ɠɟ ɧɚɱɢɧɚɟɬ ɜɵɩɨɥɧɹɬɶɫɹ. ȿɫɥɢ AVR-ɦɢɤɪɨ-
ɤɨɧɬɪɨɥɥɟɪ ɩɟɪɟɞɚɟɬ ɜ ɤɨɧɬɪɨɥɥɟɪ ɀɄɂ ɞɚɧɧɵɟ, ɤɨɬɨɪɵɟ ɩɪɟɞɫɬɚɜɥɹɸɬ ɫɨɛɨɣ
ASCII-ɤɨɞɵ ɨɬɨɛɪɚɠɚɟɦɵɯ ɫɢɦɜɨɥɨɜ, ɬɨ ɨɧɢ ɡɚɩɢɫɵɜɚɸɬɫɹ ɜ ɛɭɮɟɪ ɞɚɧɧɵɯ
(DDRAM), ɤɨɬɨɪɵɣ ɨɛɵɱɧɨ ɫɨɞɟɪɠɢɬ 80 ɹɱɟɟɤ (ɪɢɫ. 13). ɉɪɢ ɡɚɩɢɫɢ ɢɥɢ ɫɱɢ-
ɬɵɜɚɧɢɢ ɛɭɮɟɪɚ ɞɚɧɧɵɯ ɨɛɪɚɳɟɧɢɟ ɨɫɭɳɟɫɬɜɥɹɟɬɫɹ ɤ ɹɱɟɣɤɟ, ɧɚ ɤɨɬɨɪɭɸ ɜ
ɞɚɧɧɵɣ ɦɨɦɟɧɬ ɭɤɚɡɵɜɚɟɬ ɤɭɪɫɨɪ.
Ɍɚɛɥɢɰɚ 9. ɋɢɫɬɟɦɚ ɤɨɦɚɧɞ ɤɨɧɬɪɨɥɥɟɪɚ ɇD4478
Ɉɩɢɫɚɧɢɟ ɤɨɦɚɧɞɵ Ʉɨɞ RS,R/W, DB7–DB0 ȼɪɟɦɹ (f
osc
=250ɤȽɰ)
Ɉɱɢɫɬɢɬɶ ɞɢɫɩɥɟɣ ɢ ɭɫɬɚɧɨɜɢɬɶ ɤɭɪɫɨɪ ɜ
ɧɭɥɟɜɭɸ ɩɨɡɢɰɢɸ
0 0 0 0 0 0 0 0 0 1 82 ɦɤɫ ɞɨ 1.64 ɦɫ
ɍɫɬɚɧɨɜɢɬɶ ɤɭɪɫɨɪ ɜ ɧɭɥɟɜɭɸ ɩɨɡɢɰɢɸ
(ɚɞɪɟɫ 0). ɍɫɬɚɧɨɜɢɬɶ ɞɢɫɩɥɟɣ ɨɬɧɨɫɢ-
ɬɟɥɶɧɨ ɛɭɮɟɪɚ DDRAM ɜ ɧɚɱɚɥɶɧɭɸ ɩɨ-
ɡɢɰɢɸ. ɋɨɞɟɪɠɢɦɨɟ DDRAM ɩɪɢ ɷɬɨɦ ɧɟ
ɦɟɧɹɟɬɫɹ.
0 0 0 0 0 0 0 0 1 * 40 ɦɤɫ ɞɨ 1.6 ɦɫ
ɍɫɬɚɧɨɜɢɬɶ ɧɚɩɪɚɜɥɟɧɢɟ ɫɞɜɢɝɚ ɤɭɪɫɨɪɚ
ɜɩɪɚɜɨ (I/D=1) ɢɥɢ ɜɥɟɜɨ (I/D=0) ɩɪɢ ɡɚɩɢ-
ɫɢ/ɱɬɟɧɢɢ ɨɱɟɪɟɞɧɨɝɨ ɤɨɞɚ ɜ DDRAM.
Ɋɚɡɪɟɲɢɬɶ (S=1) ɫɞɜɢɝ ɞɢɫɩɥɟɹ ɜɦɟɫɬɟ ɫɨ
ɫɞɜɢɝɨɦ ɤɭɪɫɨɪɚ.
0 0 0 0 0 0 0 0 I/D S 40 ɦɤɫ
ȼɤɥɸɱɢɬɶ(D=1)/ɜɵɤɥɸɱɢɬɶ(D=0) ɞɢɫɩɥɟɣ.
Ɂɚɠɟɱɶ(C=1)/ɩɨɝɚɫɢɬɶ(C=0) ɤɭɪɫɨɪ. ɂɡɨ-
ɛɪɚɠɟɧɢɟ ɤɭɪɫɨɪɚ ɫɞɟɥɚɬɶ ɦɢɝɚɸɳɢɦ
(B=1).
0 0 0 0 0 0 1 D C B 40 ɦɤɫ
ɉɟɪɟɦɟɫɬɢɬɶ ɤɭɪɫɨɪ (S/C=0) ɢɥɢ ɫɞɜɢɧɭɬɶ
ɞɢɫɩɥɟɣ (S/C=1) ɜɩɪɚɜɨ (R/L=1) ɢɥɢ ɜɥɟ-
ɜɨ(R/L=0).
0 0 0 0 0 1 S/C R/L *
*
40 ɦɤɫ
ɍɫɬɚɧɨɜɢɬɶ ɪɚɡɪɹɞɧɨɫɬɶ ɲɢɧɵ ɞɚɧɧɵɯ 4
ɛɢɬɚ (DL=0) ɢɥɢ 8 ɛɢɬ (DL=1), ɤɨɥɢɱɟɫɬɜɨ
ɫɬɪɨɤ ɞɢɫɩɥɟɹɨɞɧɚ (N=0) ɢɥɢ ɞɜɟ (N=1),
0 0 0 0 1 DL N F *
*
40 ɦɤɫ
28
ɲɪɢɮɬ – 5ɯ7 ɬɨɱɟɤ (F=0) ɢɥɢ 5ɯ10 ɬɨɱɟɤ
(F=1).
ɍɫɬɚɧɨɜɤɚ ɚɞɪɟɫɚ CGRAM. ɉɨɫɥɟ ɷɬɨɣ
ɤɨɦɚɧɞɵ ɞɚɧɧɵɟ ɛɭɞɭɬ ɡɚɩɢɫɵɜɚɬɶ-
ɫɹ/ɫɱɢɬɵɜɚɬɶɫɹ ɜ/ɢɡ CGRAM.
0 0 0 1 . . A
CG
. . 40 ɦɤɫ
ɍɫɬɚɧɨɜɤɚ ɚɞɪɟɫɚ DDRAM 0 0 1 . . A
DD
. . 40 ɦɤɫ
ɑɬɟɧɢɟ ɫɨɫɬɨɹɧɢɹ busy–ɮɥɚɝɚ (BF) ɢ ɫɱɟɬ-
ɱɢɤɚ ɚɞɪɟɫɚ
0 1 BF . . AC . . 1 ɦɤɫ
Ɂɚɩɢɫɶ ɞɚɧɧɵɯ ɜ DDRAM ɢɥɢ CGRAM. 1 0 Ⱦɚɧɧɵɟ 40 ɦɤɫ
ɑɬɟɧɢɟ ɞɚɧɧɵɯ ɢɡ DDRAM ɢɥɢ CGRAM. 1 1 Ⱦɚɧɧɵɟ 40 ɦɤɫ
ɉɪɢɦɟɱɚɧɢɟ:
DDRAM – Display data RAM – ɈɁɍ ASCII–ɤɨɞɨɜ, ɨɬɨɛɪɚɠɚɟɦɵɯ ɫɢɦɜɨɥɨɜ
CGRAM –ɋharacter generator RAM – ɈɁɍ ɡɧɚɤɨɝɟɧɟɪɚɬɨɪɚ
Ɋɢɫ. 13. Ɉɬɨɛɪɚɠɟɧɢɟ ɧɚ ɞɢɫɩɥɟɟ ɫɢɦɜɨɥɨɜ, ASCII–ɤɨɞɵ ɤɨɬɨɪɵɯ ɡɚɩɢɫɚɧɵ ɜ DDRAM
(ɚɨɞɧɨɫɬɪɨɱɧɵɣ ɀɄɂ, ɛɞɜɭɯɫɬɪɨɱɧɵɣ ɀɄɂ)
Ȼɭɮɟɪ ɞɚɧɧɵɯ ɢɦɟɟɬ ɛɨɥɶɲɟ ɹɱɟɟɤ, ɱɟɦ ɱɢɫɥɨ ɡɧɚɤɨɦɟɫɬ ɞɢɫɩɥɟɹ. ɋɦɟɳɚɹ
ɨɤɧɨ ɢɧɞɢɤɚɬɨɪɚ ɨɬɧɨɫɢɬɟɥɶɧɨ ɛɭɮɟɪɚ ɞɚɧɧɵɯ (ɫɦ. ɫɢɫɬɟɦɭ ɤɨɦɚɧɞ), ɦɨɠɧɨ
ɨɬɨɛɪɚɠɚɬɶ ɧɚ ɞɢɫɩɥɟɟ ɪɚɡɥɢɱɧɵɟ ɨɛɥɚɫɬɢ ɛɭɮɟɪɚ. ɍ ɢɧɞɢɤɚɬɨɪɨɜ ɫ ɞɜɭɦɹ
ɫɬɪɨɤɚɦɢ ɩɟɪɜɵɟ 40 ɹɱɟɟɤ ɛɭɮɟɪɚ ɞɚɧɧɵɯ, ɨɛɵɱɧɨ, ɨɬɨɛɪɚɠɚɸɬɫɹ ɧɚ ɜɟɪɯɧɟɣ
ɫɬɪɨɤɟ ɞɢɫɩɥɟɹ, ɚ ɜɬɨɪɵɟ 40 ɹɱɟɟɤɧɚ ɧɢɠɧɟɣ ɫɬɪɨɤɟ. ɋɞɜɢɝ ɨɤɧɚ ɞɢɫɩɥɟɹ ɨɬ-
ɧɨɫɢɬɟɥɶɧɨ ɛɭɮɟɪɚ ɞɚɧɧɵɯ ɞɥɹ ɜɟɪɯɧɟɣ ɢ ɧɢɠɧɟɣ ɫɬɪɨɤ ɩɪɨɢɫɯɨɞɢɬ ɫɢɧɯɪɨɧɧɨ.
Ʉɭɪɫɨɪ ɛɭɞɟɬ ɜɢɞɟɧ ɧɚ ɢɧɞɢɤɚɬɨɪɟ ɬɨɥɶɤɨ ɜ ɬɨɦ ɫɥɭɱɚɟ, ɟɫɥɢ ɨɧ ɩɨɩɚɥ ɜ ɡɨɧɭ
ɜɢɞɢɦɨɫɬɢ ɞɢɫɩɥɟɹ (ɢ ɟɫɥɢ ɩɪɟɞɜɚɪɢɬɟɥɶɧɨ ɛɵɥɚ ɩɨɞɚɧɚ ɤɨɦɚɧɞɚɨɬɨɛɪɚɠɚɬɶ
ɤɭɪɫɨɪ).
Ʉɪɨɦɟ DDRAM, ɤɨɧɬɪɨɥɥɟɪ ɀɄɂ ɫɨɞɟɪɠɢɬ ɟɳɟ
ɨɞɢɧ ɛɥɨɤ ɩɚɦɹɬɢɡɧɚɤɨɝɟɧɟɪɚɬɨɪ. ȿɝɨ «ɩɪɨɲɢɜɤɚ»,
ɬɨ ɟɫɬɶ ɫɨɨɬɜɟɬɫɬɜɢɟ ASCII-ɤɨɞɨɜ ɧɚɱɟɪɬɚɧɢɸ ɫɢɦɜɨ-
ɥɨɜ, ɨɛɵɱɧɨ ɢɦɟɟɬɫɹ ɜ ɨɩɢɫɚɧɢɢ ɢɧɞɢɤɚɬɨɪɚ. Ɂɧɚɤɨ-
ɝɟɧɟɪɚɬɨɪ ɫɨɫɬɨɢɬ ɢɡ ɞɜɭɯ ɱɚɫɬɟɣ. Ɉɫɧɨɜɧɚɹ ɟɝɨ ɱɚɫɬɶ
ɩɪɟɞɫɬɚɜɥɹɟɬ ɫɨɛɨɣ ɉɁɍ (CGROM) ɢɟɟ, ɫɥɟɞɨɜɚɬɟɥɶ-
ɧɨ, ɧɟɥɶɡɹ ɢɡɦɟɧɢɬɶ. ȼɬɨɪɚɹ ɱɚɫɬɶ, ɜ ɤɨɬɨɪɨɣ ɡɚɞɚɸɬ-
ɫɹ ɧɚɱɟɪɬɚɧɢɹ ɫɢɦɜɨɥɨɜ ɞɥɹ ɩɟɪɜɵɯ 16-ɬɢ ɤɨɞɨɜ ɬɚɛ-
ɥɢɰɵ ɡɧɚɤɨɝɟɧɟɪɚɬɨɪɚ, ɩɪɟɞɫɬɚɜɥɹɟɬ ɫɨɛɨɣ ɩɟɪɟɩɪɨ-
ɝɪɚɦɦɢɪɭɟɦɨɟ ɈɁɍ(CGRAM). ɂɦɟɟɬɫɹ ɜɨɡɦɨɠɧɨɫɬɶ
ɡɚɞɚɬɶ ɧɚɱɟɪɬɚɧɢɟ 8 ɫɢɦɜɨɥɨɜ, ɫɨɨɬɜɟɬɫɬɜɭɸɳɢɯ ɤɨ-
Ɋɢɫ. 14. ɉɪɢɦɟɪ
ɤɨɞɢɪɨɜɚɧɢɹ ɫɢɦɜɨɥɚ