Загрузите полезной информацией по STK500 и ATmega 16

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Вымогатель припоя
Аватара пользователя
Сообщения: 561
Зарегистрирован: Сб апр 03, 2010 10:12:41
Откуда: Хабаровск

Сообщение Uklunok »

Всем привет. Тут такое дело... Появилась новая дисциплина - Микропроцессорные системы, для меня новая).
На лабораторных работах используется стенд STK500 с микроконтроллером ATmega 16. Пользуюсь программой CodeVisionAVR, язык ассемблер.
Я в этом деле новичёк и нуждаюсь в помощи. Всё что угодно: ссылки на сайты, книжки, исходные коды, справочные данные. Может есть эмулятор стенда какой-нибудь??? Очень хотелось бы русскоязычную инфу по внутреннему содержимому микроконтроллера ATmega 16, сколько и какие имеются регистры, АЛУ, дешифратор и т.д.

ЕЩё вопросец: стенд STK500 имеет разъём COM. Проблема в том, что на ноутбуке нет COM порта)), но зато есть usb и vga. Существуют такие переходники: usb-com, или usb-vga???
Спасибо за понимание :)

P.S. Раньше имел дело с УМПК80, на процессоре КР580ВМ80А
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай

Сообщение Danko »

Uklunok писал(а):Пользуюсь программой CodeVisionAVR, язык ассемблер.
CodeVisionAVR - для Си, а не для Ассемблера.
Uklunok писал(а):Существуют такие переходники: usb-com
Да существуют.
Uklunok писал(а):Существуют такие переходники: ... usb-vga
:)) Вы вообще знаете, что такое VGA? http://ru.wikipedia.org/wiki/VGA
Uklunok писал(а):Раньше имел дело с УМПК80, на процессоре КР580ВМ80А
:)) Это ж сколь десятков лет назад?
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Контактная информация:
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

пользоваться надо AVR Studio, а не этим ... тем более что в этом ... нет даже отладчика.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Опытный кот
Сообщения: 804
Зарегистрирован: Чт мар 12, 2009 16:31:05

Сообщение Vov123 »

Этот выдаёт файл.coff,который загружается в AVR Studio.
Реклама
Эиком - электронные компоненты и радиодетали
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Vov123 писал(а):Этот выдаёт файл.coff,который загружается в AVR Studio.
ну и скажите мне, нафига ЭТОТ нужен, если студия и без него в состоянии с ассемблерными программами (и с Сишными) работать?! это ЕМУ студия нужна для отладки, а студии ОН не нужен и даром!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Опытный кот
Сообщения: 804
Зарегистрирован: Чт мар 12, 2009 16:31:05

Сообщение Vov123 »

Так toolchan,вроде тоже как довесок к студии(всмысле отладки).
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

студия укомплектована ассемблерами двух видов и всем необходимым для отладки методом симуляции. как родного воспринимает STK500.
Си ставится отдельно, факт. но топикстартер об ассемблере речь вел - а с нми голенькая студия справляется на 5+. это вы попробуйте отладить что-либо в Code Vision-е вашем без студии...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай

Сообщение Danko »

Uklunok писал(а):... книжки...
Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel
Uklunok писал(а):... справочные данные ...
datasheet atmega16
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Контактная информация:
Опытный кот
Сообщения: 804
Зарегистрирован: Чт мар 12, 2009 16:31:05

Сообщение Vov123 »

Да,ладно,Вам.Молодой человек сделал описку,вероятней всего,вместо союза "и" поставил запятую.Не злитесь.Не буду Вас больше отвлекать.
Вымогатель припоя
Аватара пользователя
Сообщения: 561
Зарегистрирован: Сб апр 03, 2010 10:12:41
Откуда: Хабаровск

Сообщение Uklunok »

Немного оговорился, язык Си, но используется много ассемблерных вставок. Да и по - моему в CodeVision попроще код будет, полюс там ещё автоматически инициализируются порты ввода/вывода, регистры и т.д.
К примеру в CodeVision код:

Код: Выделить всё

#include <mega16.h>
void main(void) 
{PORTA=0x00; 
DDRA=0x00;

PORTB=0x00; 
DDRB=0xFF;
while (1)    //цикл, выполняемый пока нет прерываний
      {
          #asm                 //начало ассемблерной вставки
          IN R18,0x19          //читаем данные из порта А в регистр R18
          OUT 0x18,R18         //записываем данные из регистра R 18 в порт В
          #endasm              //конец  ассемблерной вставки 
      };
}
В AVRSTUDIO этот же код выглядит так:

Код: Выделить всё

.
include "m16def.inc" 
.def temp = r18;  // присвоение символьного имени регистру r18
ser temp  // установка всех бит регистра r18
out DDRB,temp  // инициализация порта B (работает как выход)

START:  // метка относительного безусловного перехода
  in temp,PINA  // считывание состояния порта A в регистр r18
  out PORTB,temp  // вывод содержимого регистра r18 в РВВ PORTB
rjmp START  // команда относительного безусловного перехода
Вымогатель припоя
Аватара пользователя
Сообщения: 561
Зарегистрирован: Сб апр 03, 2010 10:12:41
Откуда: Хабаровск

Сообщение Uklunok »

Uklunok писал(а):Раньше имел дело с УМПК80, на процессоре КР580ВМ80А
:)) Это ж сколь десятков лет назад?[/quote]

Ровно год назад))). Возни конечно много было... Минут 10 вбиваешь прогу в память, и от малейшеё вибрации всё сбрасывается :)
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18675
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Uklunok писал(а):Немного оговорился, язык Си, но используется много ассемблерных вставок. Да и по - моему в CodeVision попроще код будет, полюс там ещё автоматически инициализируются порты ввода/вывода, регистры и т.д.
К примеру в CodeVision код:

Код: Выделить всё

#include <mega16.h>
void main(void) 
{PORTA=0x00; 
DDRA=0x00;

PORTB=0x00; 
DDRB=0xFF;
while (1)    //цикл, выполняемый пока нет прерываний
      {
          #asm                 //начало ассемблерной вставки
          IN R18,0x19          //читаем данные из порта А в регистр R18
          OUT 0x18,R18         //записываем данные из регистра R 18 в порт В
          #endasm              //конец  ассемблерной вставки 
      };
}
В AVRSTUDIO этот же код выглядит так:

Код: Выделить всё

.
include "m16def.inc" 
.def temp = r18;  // присвоение символьного имени регистру r18
ser temp  // установка всех бит регистра r18
out DDRB,temp  // инициализация порта B (работает как выход)

START:  // метка относительного безусловного перехода
  in temp,PINA  // считывание состояния порта A в регистр r18
  out PORTB,temp  // вывод содержимого регистра r18 в РВВ PORTB
rjmp START  // команда относительного безусловного перехода
уважаемый, вы меня извините, но, как говорится, "буду краток, но резок": у вас приведе первый пример на Си с ассемблерной вставкой (руки бы отбивал тем, кто такие примеры придумывает В КАЧЕСТВЕ ОБУЧАЮЩИХ), а второй пример - чисто ассемблерный текст! поэтому говорить "что в студии посложнее будет" крайне неверно! нельзя сравнивать курицу и щуку!
ваш пример на Си с ассемблерной вставкой будет выглядеть в студии так:

Код: Выделить всё

#include <avr/io.h>
void main(void){
   PORTA=0x00; 
   DDRA=0x00;
   PORTB=0x00; 
   DDRB=0xFF;
   while (1){    //цикл, выполняемый пока нет прерываний
      // начало вставки
      asm volatile (
         "IN R18,0x19  \n"       
         "OUT 0x18,R18  \n"
      ); // конец вставки
   }
}
как говорится, найдите 10 отличий.

хотя повторюсь, за "Си с большим количеством ассемблерных вставок" начинающих бить надо нещадно, а тех, кто так учит - линчевать безжалостно!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»