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

UptoLike

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

53
Ʌɚɛɨɪɚɬɨɪɧɚɹ ɪɚɛɨɬɚ ʋ 4
ɉɊɈȽɊȺɆɆȺ ȼȼɈȾȺ ɋ ɄɅȺȼɂȺɌɍɊɕ
ɂ ȼɕȼɈȾȺ ȼ LCD ɆɈȾɍɅɖ
ɐɟɥɶ ɪɚɛɨɬɵ: ɂɡɭɱɟɧɢɟ ɢ ɨɫɜɨɟɧɢɟ ɭɩɪɚɜɥɟɧɢɹ ɩɟɪɢɮɟɪɢɣɧɵɦ ɭɫɬɪɨɣɫɬ-
ɜɨɦ ɜɜɨɞɚ ɫ ɤɥɚɜɢɚɬɭɪɵ, ɩɨɞɤɥɸɱɟɧɧɵɦ ɤ AVR ɦɢɤɪɨɤɨɧɬɪɨɥɥɟɪɭ ɮɢɪɦɵ
Atmel, ɚ ɬɚɤɠɟ ɞɚɥɶɧɟɣɲɟɟ ɢɡɭɱɟɧɢɟ ɫɢɫɬɟɦɵ ɤɨɦɚɧɞ ɢ ɫɢɫɬɟɦɵ ɩɪɟɪɵɜɚɧɢɣ.
Ɂɚɞɚɧɢɟ ɤ ɥɚɛɨɪɚɬɨɪɧɨɣ ɪɚɛɨɬɟ
ɂɡɭɱɢɬɶ ɩɪɨɝɪɚɦɦɭ Lab4.asm ɢ ɮɚɣɥ ɩɪɨɟɤɬɚ Lab_4.prj. Ɉɬɥɚɞɢɬɶ ɩɪɨ-
ɝɪɚɦɦɭ ɜ ɫɪɟɞɟ VMLab, ɩɨɞɤɥɸɱɢɜ ɧɟɨɛɯɨɞɢɦɭɸ ɩɟɪɢɮɟɪɢɸ ɤ ɦɢɤɪɨɤɨɧɬɪɨɥ-
ɥɟɪɭ AVR – ɢɧɬɟɪɮɟɣɫ ɤɥɚɜɢɚɬɭɪɵ ɢ LCD ɦɨɞɭɥɶ (ɞɢɫɩɥɟɣ).
Ʉɧɨɩɤɢ «0» ɢ «1» ɤɥɚɜɢɚɬɭɪɵ ɜ «Control Panel» VMLab ɩɨɞɤɥɸɱɟɧɵ ɫɨ-
ɜɦɟɫɬɧɨ ɫ ɪɟɡɢɫɬɨɪɚɦɢ R1 ɢ R2 ɤ ɦɢɤɪɨɤɨɧɬɪɨɥɥɟɪɭ ɫɨɨɬɜɟɬɫɬɜɟɧɧɨ ɤ ɜɯɨɞɚɦ
PD2 ɢ PD3 ɬɚɤɢɦ ɨɛɪɚɡɨɦ, ɱɬɨ ɩɪɢ ɧɚɠɚɬɢɢ ɧɚ ɧɢɯ ɜɨɡɧɢɤɚɸɬ dytiybt ɩɪɟɪɵɜɚ-
ɧɢɹ «INT0» ɢ «INT1» ɫɨɨɬɜɟɬɫɬɜɟɧɧɨ. ȼ ɮɚɣɥɟ «Lab5.asm» ɩɪɟɞɭɫɦɨɬɪɟɧɵ ɫɨ-
ɨɬɜɟɬɫɬɜɭɸɳɢɟ ɢɧɢɰɢɚɥɢɡɚɰɢɢ ɜɟɤɬɨɪɨɜ ɩɪɟɪɵɜɚɧɢɣ ɢ ɢɦɟɸɬɫɹ ɩɨɞɩɪɨɝɪɚɦɦɵ
ɨɛɪɚɛɨɬɤɢ ɷɬɢɯ ɩɪɟɪɵɜɚɧɢɣ. Ʉɧɨɩɤɚ «0» ɡɚɩɭɫɤɚɟɬ ɬɚɣɦɟɪ ɫɱɟɬɚ, ɩɪɢ ɷɬɨɦ ɩɪɨ-
ɢɫɯɨɞɢɬ ɨɬɨɛɪɚɠɟɧɢɟ ɪɟɡɭɥɶɬɚɬɨɜ ɫɱɟɬɚ ɧɚ ɦɨɞɭɥɟ LCD. Ʉɧɨɩɤɚ «1» ɨɫɬɚɧɚɜɥɢ-
ɜɚɟɬ ɬɚɣɦɟɪ ɫɱɟɬɚ. Ɋɟɡɭɥɶɬɚɬɵ ɦɨɞɟɥɢɪɨɜɚɧɢɹ ɩɪɟɞɫɬɚɜɥɟɧɵ ɧɚ ɪɢɫ. 22.
Ɋɢɫ. 22. Ɋɟɡɭɥɶɬɚɬɵ ɦɨɞɟɥɢɪɨɜɚɧɢɹ ɩɪɨɝɪɚɦɦɵ Lab5.asm.
54
Ɏɚɣɥ Lab_4.prj
.MICRO "ATmega16" ; ATmega16 with 16 of external RAM
.PROGRAM "Lab4.asm"
.TARGET "Lab4.hex"
.TRACE ; Activate micro trace
.POWER VDD=5 VSS=0 ; Power nodes
.CLOCK 1meg ; Micro clock
.STORE 250m ; Trace (micro+signals) storage time
;
Xterm TTY(4800 8) PD0 PD1 ; place terminal
; Type in the TX window while the
; simulation is running, after
; the welcome message
; RS R/W E 4 bits interface arbitrary nodes
Xdisp LCD(24 2 250K) PA2 PB0 PA3 PA7 PA6 PA5 PA4 nc3 nc2 nc1 nc0
K0 PD2 VSS ; Key0 (activated by button 0)
R1 VDD PD2 10K
K1 PD3 VSS ; Key1 (activated by button 1)
R2 VDD PD3 10K
.plot v(pc0) v(pc1)
Ɏɚɣɥ Lab4.asm
.include "m16def.inc"
.EQU OE = 0b001000 ; bit 3
.EQU RS = 0b000100 ; bit 2
.DEF TEMP = R16 ; temporary working register
.DEF PARAM = R17 ; Parameter transfer register
.DEF CNTR1 = R18 ; Counter register
.DEF CNTR2 = R19
.DEF DEL2 = R23
.DEF DELAY = R10 ;
.DEF DELAY1 = R11 ; To generate long delays
.DEF DELAY2 = R12 ;
.DEF STATUS = R20