Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Архив1 / doc92 / Отчет(7)

.doc
Скачиваний:
21
Добавлен:
03.08.2013
Размер:
261.12 Кб
Скачать

Министерство Образования и науки Российской Федерации

ГОУ ВПО КубГТУ

Факультет компьютерных технологий и автоматизированных систем

Кафедра АПП

Отчёт по лабораторной работе №3

Выполнил: Студент группы 10-К-УИ1

Ишкараев А.А.

Проверил: Кандидат технических наук

Посмитный Е.В.

г. Краснодар 2012

Задание:

Организовать циклический ввод данных с двух каналов АЦП (с каждого – результат 8 разрядов). Данные канала ADC0 выводить на первый разряд семисегментного индикатора, данные канала ADC1 – на третий разряд в виде одной цифры (0-F).

Код программы:

.include "m128def.inc"

.cseg

.org $0000

rjmp start

.org $002A

rjmp ADC_end

.org $80

start:

ldi r16,Low(RAMEND)

out spl,r16

ldi r16,High(RAMEND)

out sph,r16

ldi r16,0xff

out ddrc,r16

sbi ddre,4

sbi ddre,6

ldi r16,0b10001000

out ADCSRA,r16

ldi r16,0b00100000

out ADMUX,r16

sei

main:

sbi adcsra,adsc

m1:

ldi r20,1 ;0 для MUX

sbic adcsra,adsc

rjmp m1

sbi adcsra,adsc

m2:

ldi r20,0 ;1 для MUX

sbic adcsra,adsc

rjmp m2

rcall ooo

cbi porte,4

out portc,r21

ldi r23,255

k1:

nop nop nop nop nop nop

dec r23

brne k1

sbi porte,4

rcall yyy

cbi porte,6

out portc,r22

ldi r23,255

k2:

nop nop nop nop nop nop

dec r23

brne k2

sbi porte,6

rjmp main

ADC_end:

in r0,sreg

cpi r20,1

breq m3

rjmp m4

m3:

sbi admux,0

in r17,adch

rjmp m5

m4:

cbi admux,0

in r18,adch

rjmp m5

m5: out sreg,r0

reti

/* ------------------------------- */

/*---Проверка adch по диапазонам---*/

ooo:

s0: cpi r17,1

brsh s16

rjmp c0

s16:cpi r17,17

brlo t0

rjmp s17

t0: rjmp c0

s17:cpi r17,17

brsh s32

rjmp s0

s32:cpi r17,33

brlo t1

rjmp s33

t1: rjmp c1

s33:cpi r17,33

brsh s48

rjmp s0

s48:cpi r17,49

brlo t2

rjmp s49

t2: rjmp c2

s49:cpi r17,49

brsh s64

rjmp s0

s64:cpi r17,65

brlo t3

rjmp s65

t3: rjmp c3

s65:cpi r17,65

brsh s80

rjmp s0

s80:cpi r17,81

brlo t4

rjmp s81

t4: rjmp c4

s81:cpi r17,81

brsh s96

rjmp s0

s96:cpi r17,97

brlo t5

rjmp s97

t5: rjmp c5

s97:cpi r17,97

brsh s112

rjmp s0

s112:cpi r17,113

brlo t6

rjmp s113

t6: rjmp c6

s113:cpi r17,113

brsh s128

rjmp s0

s128:cpi r17,129

brlo t7

rjmp s129

t7: rjmp c7

s129:cpi r17,129

brsh s144

rjmp s0

s144:cpi r17,145

brlo t8

rjmp s145

t8: rjmp c8

s145:cpi r17,145

brsh s160

rjmp s0

s160:cpi r17,161

brlo t9

rjmp s161

t9: rjmp c9

s161:cpi r17,161

brsh s176

rjmp s0

s176:cpi r17,177

brlo t10

rjmp s177

t10: rjmp c10

s177:cpi r17,177

brsh s192

rjmp s0

s192:cpi r17,193

brlo t11

rjmp s193

t11: rjmp c11

s193:cpi r17,193

brsh s208

rjmp s0

s208:cpi r17,209

brlo t12

rjmp s209

t12: rjmp c12

s209:cpi r17,209

brsh s224

rjmp s0

s224:cpi r17,225

brlo t13

rjmp s225

t13: rjmp c13

s225:cpi r17,225

brsh s240

rjmp s0

s240:cpi r17,241

brlo t14

rjmp s241

t14: rjmp c14

s241:cpi r17,241

brsh s255

rjmp s0

s255:cpi r17,255

brlo t15

t15: rjmp c15

rjmp s0

yyy:

g0: cpi r18,1

brsh g16

rjmp bl0

g16:cpi r18,17

brlo f0

rjmp g17

f0: rjmp bl0

g17:cpi r18,17

brsh g32

rjmp g0

g32:cpi r18,33

brlo f1

rjmp g33

f1:rjmp bl1

g33:cpi r18,33

brsh g48

rjmp g0

g48:cpi r18,49

brlo f2

rjmp g49

f2:rjmp bl2

g49:cpi r18,49

brsh g64

rjmp g0

g64:cpi r18,65

brlo f3

rjmp g65

f3:rjmp bl3

g65:cpi r18,65

brsh g80

rjmp g0

g80:cpi r18,81

brlo f4

rjmp g81

f4:rjmp bl4

g81:cpi r18,81

brsh g96

rjmp g0

g96:cpi r18,97

brlo f5

rjmp g97

f5:rjmp bl5

g97:cpi r18,97

brsh g112

rjmp g0

g112:cpi r18,112

brlo f6

rjmp g128

f6:rjmp bl6

g113:cpi r18,113

brsh g128

rjmp g0

g128:cpi r18,129

brlo f7

rjmp g129

f7:rjmp bl7

g129:cpi r18,129

brsh g144

rjmp g0

g144:cpi r18,145

brlo f8

rjmp g145

f8:rjmp bl8

g145:cpi r18,145

brsh g160

rjmp g0

g160:cpi r18,161

brlo f9

rjmp g161

f9:rjmp bl9

g161:cpi r18,161

brsh g176

rjmp g0

g176:cpi r18,177

brlo f10

rjmp g177

f10:rjmp bl10

g177:cpi r18,177

brsh g192

rjmp g0

g192:cpi r18,193

brlo f11

rjmp g193

f11:rjmp bl11

g193:cpi r18,193

brsh g208

rjmp g0

g208:cpi r18,209

brlo f12

rjmp g209

f12:rjmp bl12

g209:cpi r18,209

brsh g224

rjmp g0

g224:cpi r18,225

brlo f13

rjmp g225

f13:rjmp bl13

g225:cpi r18,225

brsh g240

rjmp g0

g240:cpi r18,241

brlo f14

rjmp g241

f14:rjmp bl14

g241:cpi r18,241

brsh g255

rjmp g0

g255:cpi r18,255

brlo f15

f15:rjmp bl15

rjmp s0

/* Цифры семисегментника */

c0: ldi r21,0b11000000

ret

c1: ldi r21,0b11111001

ret

c2: ldi r21,0b10100100

ret

c3: ldi r21,0b10110000

ret

c4: ldi r21,0b10011001

ret

c5: ldi r21,0b10010010

ret

c6: ldi r21,0b10000010

ret

c7: ldi r21,0b11111000

ret

c8: ldi r21,0b10000000

ret

c9: ldi r21,0b10010000

ret

c10:ldi r21,0b10001000

ret

c11:ldi r21,0b10000011

ret

c12:ldi r21,0b11000110

ret

c13:ldi r21,0b10100001

ret

c14:ldi r21,0b10000110

ret

c15:ldi r21,0b10001110

ret

bl0: ldi r22,0b11000000

ret

bl1: ldi r22,0b11111001

ret

bl2: ldi r22,0b10100100

ret

bl3: ldi r22,0b10110000

ret

bl4: ldi r22,0b10011001

ret

bl5: ldi r22,0b10010010

ret

bl6: ldi r22,0b10000010

ret

bl7: ldi r22,0b11111000

ret

bl8: ldi r22,0b10000000

ret

bl9: ldi r22,0b10010000

ret

bl10:ldi r22,0b10001000

ret

bl11:ldi r22,0b10000011

ret

bl12:ldi r22,0b11000110

ret

bl13:ldi r22,0b10100001

ret

bl14:ldi r22,0b10000110

ret

bl15:ldi r22,0b10001110

ret

Соседние файлы в папке doc92