реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Программа для IAR, Для того чтоб начать работать с ИАР
*SERG
сообщение Feb 16 2007, 09:56
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517



Прикрепите в данной теме пожалуста какуюнибудь простенькую программу для того чтоб начать работать с ИАР с коментариями если можно. Немного поразбирался с иаровским примером, не вижу где припасанны установки всех регистров контроллера blink.gif Почемуто программа состоит из нескольких проектов, это принципиально чтоли? И зачем программу делать из проектов?
Хотелось бы посмотреть простенькую программу в которой есть пару прерываний, не важно от чего, посмотреть саму структуру и правила написания. Писал в квавр с год наверно, вот щас решил на иар перейти. Если кому не жалко иль не сложно, накатайте небольшой примерчик с установкой регистров, функцией или процедурой и обработкой прерываний smile.gif
Go to the top of the page
 
+Quote Post
kd_Rash
сообщение Feb 16 2007, 10:18
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 58
Регистрация: 11-01-07
Пользователь №: 24 311



http://electronix.ru/forum/index.php?act=S...25752&st=15

http://projects.caxapa.ru/index.html?ID=69
Go to the top of the page
 
+Quote Post
*SERG
сообщение Feb 16 2007, 10:28
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517



Это я видел, там же куски программы, ещё и в jpeg, а мне для того чтоб хорошеничко разобраться, лучше б проект какойнибудь, полнофункциональный, желательно с тем о чём написал выше.
Go to the top of the page
 
+Quote Post
Igor26
сообщение Feb 16 2007, 11:06
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



http://pol-sem.narod.ru/polymuson/polymuson.htm
Go to the top of the page
 
+Quote Post
GL_basik
сообщение Feb 16 2007, 11:09
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 68
Регистрация: 19-07-06
Пользователь №: 18 918



В совое время разработал офисные часы. Потом понадобилось добавить туда несколько функций и часы пришлось переделывать, так как в контроллере не осталось места. Вообщем вот программа от старого варианта. Для меня ценности не представляет. Можете пользоваться.

Сообщение отредактировал GL_basik - Feb 16 2007, 11:10
Прикрепленные файлы
Прикрепленный файл  office_clock.rar ( 13.68 килобайт ) Кол-во скачиваний: 74
 
Go to the top of the page
 
+Quote Post
GDI
сообщение Feb 16 2007, 11:43
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Регистры контроллера описаны в файлах ioavr.h , inavr.h, вернее при выборе в опциях проекта целевого контроллера из этих файлов вызываются соответствующие каждому контроллеру заголовочные файлы, такие как iom8.h, для мега8, и так для каждого. Соответственно файлы ioavr.h и inavr.h должны быть включены в проект.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Fortune
сообщение Feb 16 2007, 11:55
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 1-02-07
Из: Украина
Пользователь №: 24 940



Цитата(*SERG @ Feb 16 2007, 10:56) *
...Почемуто программа состоит из нескольких проектов, это принципиально чтоли? И зачем программу делать из проектов?


А что значит "программа состоит из нескольких проектов"? всмысле она состоит из более чем одного файла *.eww или я чего-то не понимаю? Насколько я понял, создается Workspace, в его состав включаются файлы *.h , *.c и т.п. После линковки получается обьектный файл. Или что имеется ввиду?

Цитата(*SERG @ Feb 16 2007, 10:56) *
...Хотелось бы посмотреть простенькую программу в которой есть пару прерываний, не важно от чего, посмотреть саму структуру и правила написания...


Сорри за флуд, забыл дописать.

Для того чтобы вызвать прерывание, достаточно разрешить прерывания (написать SREG=0x80 в начале программы)
а в конце расставить вектора:

#pragma vector = 0x80

__interrupt void transmitter(void)
{
...
}
#pragma vector = 0x78

__interrupt void receiver(void)
{
...
}
Go to the top of the page
 
+Quote Post
kd_Rash
сообщение Feb 16 2007, 11:57
Сообщение #8


Участник
*

Группа: Новичок
Сообщений: 58
Регистрация: 11-01-07
Пользователь №: 24 311



Цитата(kd_Rash @ Feb 16 2007, 10:18) *


какой jpeg??!!!
смотри лучше!!!
хорош обижать, ааа!!!
полнее проекта и не придумаешь
ну что за люди такие не благодарные!!!

Сообщение отредактировал kd_Rash - Feb 16 2007, 12:00
Go to the top of the page
 
+Quote Post
Fortune
сообщение Feb 16 2007, 12:00
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 1-02-07
Из: Украина
Пользователь №: 24 940



Ну и например для USART в начале программы инициализировать USART:
UCSR1B = 0xd8;
UCSR1C = 0x06;
UBRR1H = 0;
UBRR1L = 25; // ×àñòîòà 19200 áîä
UCSR1A = 0;
UDR1 = 0xff;
Go to the top of the page
 
+Quote Post
*SERG
сообщение Feb 16 2007, 12:18
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517



Когда пример открываешь там несколько вкладок проектов, что это тогда такое?

Цитата(kd_Rash @ Feb 16 2007, 11:57) *
Цитата(kd_Rash @ Feb 16 2007, 10:18) *


какой jpeg??!!!
смотри лучше!!!
хорош обижать, ааа!!!
полнее проекта и не придумаешь
ну что за люди такие не благодарные!!!


Ой ссори, нашёл, спасибо конечно же огромное.


всем спасибо!!! a14.gif

Поразбираюсь пока, потом если что по ходу дела вопросы позадаю)

Цитата(GDI @ Feb 16 2007, 11:43) *
Регистры контроллера описаны в файлах ioavr.h , inavr.h, вернее при выборе в опциях проекта целевого контроллера из этих файлов вызываются соответствующие каждому контроллеру заголовочные файлы, такие как iom8.h, для мега8, и так для каждого. Соответственно файлы ioavr.h и inavr.h должны быть включены в проект.


Понял. спасибо! smile.gif

Цитата(Fortune @ Feb 16 2007, 11:55) *
Цитата(*SERG @ Feb 16 2007, 10:56) *

...Почемуто программа состоит из нескольких проектов, это принципиально чтоли? И зачем программу делать из проектов?


А что значит "программа состоит из нескольких проектов"? всмысле она состоит из более чем одного файла *.eww или я чего-то не понимаю? Насколько я понял, создается Workspace, в его состав включаются файлы *.h , *.c и т.п. После линковки получается обьектный файл. Или что имеется ввиду?

Цитата(*SERG @ Feb 16 2007, 10:56) *
...Хотелось бы посмотреть простенькую программу в которой есть пару прерываний, не важно от чего, посмотреть саму структуру и правила написания...


Сорри за флуд, забыл дописать.

Для того чтобы вызвать прерывание, достаточно разрешить прерывания (написать SREG=0x80 в начале программы)
а в конце расставить вектора:

#pragma vector = 0x80

__interrupt void transmitter(void)
{
...
}
#pragma vector = 0x78

__interrupt void receiver(void)
{
...
}


Ага, понятно! smile.gif

#include <inavr.h>
#include <stdio.h>
#include <stdlib.h>
#include <iotiny26.h>
#include "math.h"
#include <string.h>
#include "define.h"

смотрю часы офисные, зачем вот это #include "math.h" и #include "define.h"
так понимаю что это чтото маленькой библиотеки) созданные самим разработчиком. Но зачем? И каким образом их делать? Почему они в ковычках?
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Feb 16 2007, 12:33
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Вот ещё пару ссылок на полные проекты мои и чужие

http://electronix.ru/forum/index.php?showt...4&hl=ds1820

http://electronix.ru/forum/index.php?showt...getting+started


По поводу подключаемых библиотек почитай в каталоге doc документ clib. Это тебе понадобится. Ты же должен знать какие стандартные ф-ии поддерживает твой компилятор. Кстати библиотеки, в общем то стандартные и их можно почитать и в книге хорошей. Например Г.Шилдт "Полный справочник по Си". Там описано, какая ф-ия в какой библиотеке находится. Например math.h - математика. acos, asin,atan,....
Go to the top of the page
 
+Quote Post
*SERG
сообщение Feb 16 2007, 12:37
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517



Цитата(SasaVitebsk @ Feb 16 2007, 12:33) *
Вот ещё пару ссылок на полные проекты мои и чужие

http://electronix.ru/forum/index.php?showt...4&hl=ds1820

http://electronix.ru/forum/index.php?showt...getting+started


По поводу подключаемых библиотек почитай в каталоге doc документ clib. Это тебе понадобится. Ты же должен знать какие стандартные ф-ии поддерживает твой компилятор. Кстати библиотеки, в общем то стандартные и их можно почитать и в книге хорошей. Например Г.Шилдт "Полный справочник по Си". Там описано, какая ф-ия в какой библиотеке находится. Например math.h - математика. acos, asin,atan,....


на счёт стандартных библиотек в курсе smile.gif Спасибо!
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Feb 16 2007, 13:13
Сообщение #13


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(*SERG @ Feb 16 2007, 08:56) *
Почемуто программа состоит из нескольких проектов, это принципиально чтоли? И зачем программу делать из проектов?

Это просто удобно.
Простейший пример - бутлоадер и приложение делается двумя проектами, но в одном воркспейсе.
В этом случае проекты используются на одной платформе и могут совместно использовать некоторые файлы (bsp, hal и т. д.).
Go to the top of the page
 
+Quote Post
*SERG
сообщение Feb 16 2007, 14:11
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517



Подскажите как объявить битовую переменную и назначать переменные в битовом формате в квавр
bit
0b00110101
А в ИАР не понял как это сделать sad.gif
Go to the top of the page
 
+Quote Post
GL_basik
сообщение Feb 16 2007, 15:32
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 68
Регистрация: 19-07-06
Пользователь №: 18 918



Цитата(*SERG @ Feb 16 2007, 12:18) *
смотрю часы офисные, зачем вот это #include "math.h" и #include "define.h"
так понимаю что это чтото маленькой библиотеки) созданные самим разработчиком. Но зачем? И каким образом их делать? Почему они в ковычках?

Значит math.h досталось в наследство от старого проекта. Здесь его нет. define.h есть, как он выглядит можешь посмотреть. Делать его так же как и файл в котром программа. smile.gif
Файлы загаловков указываются в теругольных скобках если находятся в библиотеке IARa. Если они лежат в папке проекта то берутся в кавычки.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 17:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01486 секунд с 7
ELECTRONIX ©2004-2016