roboforum.ru

Технический форум по робототехнике.

МикроКонтроллер AVR начинающим - общие вопросы

Re: МикроКонтроллер AVR начинающим - общие вопросы

galex1981 » 20 ноя 2009, 11:37

У Avr Studio есть нормальный отладчик. Не пробовал в нем проект прогонять?

Re: МикроКонтроллер AVR начинающим - общие вопросы

milkpower » 20 ноя 2009, 11:54

2=DeaD=: яб с радостью, но С для меня сейчас как темный лес в сырую погоду :), а асм он как-то с детства прижился, но с заморочками в нем конечно согласен.

Добавлено спустя 1 минуту 34 секунды:
2galex1981: отладчик есть, хоть и тормозной, попробую с ним поковыряться.

Добавлено спустя 7 минут:
в отладчике не перешло на подпрограмму прерывания :(

Re: МикроКонтроллер AVR начинающим - общие вопросы

=DeaD= » 20 ноя 2009, 12:02

А прерывание это разрешили? А вообще прерывания?

Re: МикроКонтроллер AVR начинающим - общие вопросы

avr123.nm.ru » 20 ноя 2009, 12:12

milkpower писал(а): С для меня сейчас как темный лес в сырую погоду :)
Возможно вам даст немного солнца яркая страничка про язык Си для микроконтроллеров - http://avr123.nm.ru/05.htm

Re: МикроКонтроллер AVR начинающим - общие вопросы

Master » 20 ноя 2009, 12:19

Где команда
sei
?

Re: МикроКонтроллер AVR начинающим - общие вопросы

milkpower » 20 ноя 2009, 12:36

нашел один баг, написал (1<...) а надо (1<<...)
но теперь прога зацикливается на подпрограмме прерываний.

2avr123.nm.ru вашу страничку я первым делом посетил!

2Master в том листинге еще нет, потом вставил.

Добавлено спустя 9 минут 35 секунд:
этот баг тоже исправил, забыл инициализировать адрес стека на конец памяти.

Добавлено спустя 4 минуты 19 секунд:
но теперь еще вопрос :)
когда срабатывает таймер, железно появляется высокий уровень на 3бит PINB, как сделать чтобы он был на PORTB?

Re: МикроКонтроллер AVR начинающим - общие вопросы

Duhas » 20 ноя 2009, 12:41

мб настроить порт на выход ? )

Re: МикроКонтроллер AVR начинающим - общие вопросы

milkpower » 20 ноя 2009, 12:48

да вобщем-то и установлен как выход
ldi temp,$FF
out ddrB,temp

Re: МикроКонтроллер AVR начинающим - общие вопросы

Duhas » 20 ноя 2009, 12:58

мм, дык в симуляторе на порту б ничего нет? проверь в железе ) или в протеусе...

Re: МикроКонтроллер AVR начинающим - общие вопросы

milkpower » 20 ноя 2009, 13:03

в дебагере высокий уровень ставится именно на PIN, а в PORT ничего. в железе ставится высокий уровень на ноге, но команда
clr temp
out pinB,temp
ставит 0 только на 1 такт после чего опять высокий уровень.

Re: МикроКонтроллер AVR начинающим - общие вопросы

Duhas » 20 ноя 2009, 13:04

выложи проект весь ) я погляжу...

Re: МикроКонтроллер AVR начинающим - общие вопросы

milkpower » 20 ноя 2009, 13:11

Код: Выделить всёРазвернуть
/* test timers


CPU: ATMega 16
CLC: 7.3728mHz 

*/


.INCLUDE "m16def.inc"

.CSEG

.equ   LCD_RS   = 1
.equ   LCD_RW   = 2
.equ   LCD_E   = 3

.def   temp   = r16

.ORG $0
   rjmp RESET       
.ORG $26
   rjmp timer0
.ORG $30

timer0:

   push temp
   clr temp
   out TCNT0,temp
   nop
   nop
   nop
   nop
   nop
   nop
   nop
   nop
   nop
   nop
   nop
   out pinB,temp
   pop temp
   reti

reset:
   ldi   temp, low(RAMEND)
   out   SPL, temp
   ldi   temp, high(RAMEND)
   out   SPH, temp
   ldi temp,$FF
   out ddrB,temp
;init 8-bit timer on 50hz
   ldi temp,144
   out OCR0,temp
   ldi temp,(1<<OCIE0)
   out TIMSK,temp
   ldi temp,(1<<COM00)|(1<<COM01)|(1<<CS00)|(1<<CS02)
   out TCCR0,temp
   sei
mloop:
   rjmp mloop

Re: МикроКонтроллер AVR начинающим - общие вопросы

Duhas » 20 ноя 2009, 14:08

хотелось бы проект именно для студии там...

ПС непонятен смысл:
clr temp
out TCNT0,temp

Re: МикроКонтроллер AVR начинающим - общие вопросы

milkpower » 20 ноя 2009, 15:17

обнуляем значение в счетчике

Re: МикроКонтроллер AVR начинающим - общие вопросы

Duhas » 20 ноя 2009, 15:22

тьфу епть, я гоню... мне почему то показалось ты обнуляешь темп и читаешь в него значение :sorry:


cron
Rambler\'s Top100 Mail.ru counter