[ Обновленные темы · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Сторінка 1 з 2
  • 1
  • 2
  • »
Модератор форуму: valik  
Форум » Школа » Про школу » "Пісочниця" (Тут всі ми можемо трохи побути дітьми)))
"Пісочниця"
Yaneli4ka Оффлайн · 06.04.2011 в 08:54
Yaneli4ka

Не бійтеся показатися кумедним, проявляйте себе, спілкуйтеся і просто відпочивайте! smile
less Оффлайн · 06.04.2011 в 09:28
less

biggrin biggrin biggrin biggrin biggrin biggrin Жизнь позитивная!!!!!!!!!!!!!!!!
futa Оффлайн · 06.04.2011 в 09:30
futa

ну да shades
olha Оффлайн · 07.04.2011 в 09:23
olha

biggrin Ага)))))))))))))
Туськ@ Оффлайн · 13.04.2011 в 16:06
Туськ@

привет smile biggrin biggrin
Білка Оффлайн · 25.05.2011 в 14:37
Білка

Дитинство
M@Z@H@KER Оффлайн · 14.05.2012 в 12:27
M@Z@H@KER

Привет всем я на сайте школы урааааааааа!!!!!!!!!
Annet Оффлайн · 14.05.2012 в 12:28
Annet

фУУУУУУУХ ВСЕ Я ТУТ:)))) biggrin
Tina Оффлайн · 14.05.2012 в 12:32
Tina

=)))
Nastasia Оффлайн · 14.05.2012 в 12:36
Nastasia

ололош=))
Annettta Оффлайн · 14.05.2012 в 12:57
Annettta

ураааааааааааааааааааааааа!!!!
nastena Оффлайн · 14.05.2012 в 13:27
nastena

biggrin
valik Оффлайн · 03.01.2013 в 02:30
valik

рорроррор ропрпорп
[.include "m16def.inc" ; Используем ATMega16 8000000МГц

; RAM ========================================================
.DSEG

; FLASH ======================================================
.CSEG
.ORG $000 ; (RESET)
RJMP Reset
.ORG $002
Reti ; ; (INT0) External Interrupt Request 0
.ORG $004
Reti ; (INT1) External Interrupt Request 1
.ORG $006
RETI ; (TIMER2 COMP) Timer/Counter2 Compare Match
.ORG $008
RETI ; (TIMER2 OVF) Timer/Counter2 Overflow
.ORG $00A
RETI ; (TIMER1 CAPT) Timer/Counter1 Capture Event
.ORG $00C
Reti ; (TIMER1 COMPA) Timer/Counter1 Compare Match A
.ORG $00E
RETI ; (TIMER1 COMPB) Timer/Counter1 Compare Match B
.ORG $010
RETI ; (TIMER1 OVF) Timer/Counter1 Overflow
.ORG $012
reti ; (TIMER0 OVF) Timer/Counter0 Overflow
.ORG $014
RETI ; (SPI,STC) Serial Transfer Complete
.ORG $016
RETI ; (USART,RXC) USART, Rx Complete
.ORG $018
RETI ; (USART,UDRE) USART Data Register Empty
.ORG $01A
RETI ; (USART,TXC) USART, Tx Complete
.ORG $01C
Rjmp adc_comp ; (ADC) ADC Conversion Complete
.ORG $01E
RETI ; (EE_RDY) EEPROM Ready
.ORG $020
RETI ; (ANA_COMP) Analog Comparator
.ORG $022
RETI ; (TWI) 2-wire Serial Interface
.ORG $024
RETI ; (INT2) External Interrupt Request 2
.ORG $026
reti ; (TIMER0 COMP) Timer/Counter0 Compare Match
.ORG $028
RETI ; (SPM_RDY) Store Program Memory Ready

.ORG INT_VECTORS_SIZE ; Конец таблицы прерываний

; Interrupts ==============================================
adc_comp:
in r16,adch ;считываем значение преобразования
out ocr1al,r16 ;записываем в регистр сравнения t1a в младний байт
;может нужно обнулить старший байт? но ведь он и так равен 0
reti

; End Interrupts ==========================================

Reset: LDI R16,Low(RAMEND) ; Инициализация стека
OUT SPL,R16 ; Обязательно!!!

LDI R16,High(RAMEND)
OUT SPH,R16

;Hardware Init ======================================
;Настраиваем работу АЦП
;(1<<refs0) опорное напряжение +5В
;(1<<adlar) выравнивание по левому краю
;(1<<mux4) вход pa0/adc0 без усиления
;(1<<aden) разрешаем АЦП
;(1<<adsc) запускаем
;(1<<adate) непрерывное преобразование
;(1<<adie) разрешаем прерывание после завершения преобразования
;(1<<adps2)|(1<<adps1)|(1<<adps0) коэф. деления 1:128 (на железе 8000000Гц)
;
ldi r16,(1<<refs0)|(1<<adlar)|(1<<mux4)
out admux,r16
ldi r16,(1<<aden)|(1<<adsc)|(1<<adate)|(1<<adie)|(1<<adps2)|(1<<adps1)|(1<<adps0)
out adcsra,r16


;;Настраиваем работу Т1 режим Быстрый ШИМ
;(1<<com1a1) 1 при совпадении
;(0<<wgm13)|(1<<wgm12)|(0<<wgm1)|(1<<wgm10) fast pwm 8 разрядов
;(0<<cs12)|(0<<cs11)|(1<<cs10) деление 1:1
;


sbi DDRd, 5 ;Установка 5-го бита в регистре DDRd в "1" (Рd5 - выход)
ldi r16,(1<<com1a1)|(0<<wgm12)|(1<<wgm10)
out tccr1a,r16 ; задействуем вывод pd5
ldi r16,(0<<cs12)|(0<<cs11)|(1<<cs10)|(0<<wgm13)|(1<<wgm12)
out tccr1b,r16 ; задаем частоту и режим

ldi r16,0
out ocr1al,r16 ;начальное значение регистра сравнения

SEI
; End Hardware Init ===================================

; Main =========================================================
Main:

RJMP Main

; EEPROM =====================================================
.ESEG ; Сегмент EEPROM
]
valik Оффлайн · 03.01.2013 в 02:31
valik

папрпоролрл

памролдрпапролджлоропасп
пролджэждлорпролд
valik Оффлайн · 03.01.2013 в 02:32
valik

Проба

.include "m16def.inc"   ; Используем ATMega16 8000000МГц

; RAM  
     LDI  R16,High(RAMEND)
     OUT  SPH,R16

;Hardware Init  ======================================
;Настраиваем работу АЦП  
;(1<<refs0) опорное напряжение +5В  
;(1<<adlar) выравнивание по левому краю  
;(1<<mux4)  вход pa0/adc0 без усиления
;(1<<aden)  разрешаем АЦП
;(1<<adsc)  запускаем
;(1<<adate) непрерывное преобразование
;(1<<adie)  разрешаем прерывание после завершения преобразования
;(1<<adps2)|(1<<adps1)|(1<<adps0)  коэф. деления 1:128 (на железе 8000000Гц)
;
    ldi    r16,(1<<refs0)|(1<<adlar)|(1<<mux4)
    out    admux,r16
    ldi    r16,(1<<aden)|(1<<adsc)|(1<<adate)|(1<<adie)|(1<<adps2)|(1<<adps1)|(1<<adps0)
    out    adcsra,r16

     
;;Настраиваем работу Т1 режим Быстрый ШИМ
;(1<<com1a1)  1 при совпадении
;(0<<wgm13)|(1<<wgm12)|(0<<wgm1)|(1<<wgm10)  fast pwm 8 разрядов
;(0<<cs12)|(0<<cs11)|(1<<cs10) деление 1:1
;

    
    sbi DDRd, 5      ;Установка 5-го бита в регистре DDRd в "1" (Рd5 - выход)
    ldi    r16,(1<<com1a1)|(0<<wgm12)|(1<<wgm10)
    out    tccr1a,r16 ; задействуем вывод pd5
    ldi    r16,(0<<cs12)|(0<<cs11)|(1<<cs10)|(0<<wgm13)|(1<<wgm12)
    out    tccr1b,r16 ; задаем частоту  и режим  

    ldi    r16,0
    out    ocr1al,r16  ;начальное значение регистра сравнения
   
    SEI
; End Hardware Init ===================================

; Main =========================================================
Main:   

    RJMP    Main

; EEPROM =====================================================
    .ESEG    ; Сегмент EEPROM

Форум » Школа » Про школу » "Пісочниця" (Тут всі ми можемо трохи побути дітьми)))
  • Сторінка 1 з 2
  • 1
  • 2
  • »
Пошук:

close