Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 23.12.2013, 01:37  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Вот скока работал с OSA.Для меня лично ось была тока для удобно читаемости кода и разделение задач.А так сильно не применял все возможности ее,тока на уровне флагов и немного сообщений.Большой плюс это в таймерах,которые не занимаю работу процессора(что то типа таймеров встроенных,при работе с ними в прерываниями).Насчет встроенной оси ОСА задевал немного,кажись она там простенькая очень.На днях попробую ее и опишу что понял.
Реклама:
__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Непрочитано 23.12.2013, 11:37  
kobzar
Частый гость
 
Регистрация: 10.06.2005
Сообщений: 30
Сказал спасибо: 13
Сказали Спасибо 22 раз(а) в 9 сообщении(ях)
kobzar на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от CERGEI1982 Посмотреть сообщение
Вот скока работал с OSA.Для меня лично ось была тока для удобно читаемости кода и разделение задач.А так сильно не применял все возможности ее,тока на уровне флагов и немного сообщений.Большой плюс это в таймерах,которые не занимаю работу процессора(что то типа таймеров встроенных,при работе с ними в прерываниями).Насчет встроенной оси ОСА задевал немного,кажись она там простенькая очень.На днях попробую ее и опишу что понял.
Там (во встроенной оси) в общем все понятно из прилагаемых примеров. Можно пользовать. Вот только незадача - таймеров нет ваще. ИМХО это самый серьезный недостаток...
kobzar вне форума  
Непрочитано 24.12.2013, 03:48  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Да и OSA отвязанная ось сама по себе от компилятора,требует поддержки автора,который трудится на бесплатной основе.Можно понять тестера,своих дел хватает.Да и привязываться к осе не хорошо.
Для чего в оси встроенной в css сделано время работы задачи определенное время max=100ms? Чтоб не зависла в задаче?
Код:
#task(rate=1000ms,max=100ms)
__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Непрочитано 24.12.2013, 11:44  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Как на счет применения вместо таймеров директиву
Код:
#use timer(tick=1ms,bits=32,NOISR)
,типа динамического таймера.Накладно отслеживать конечно,но как выход.Как я понял можно создавать потоки этих таймеров за счет одного таймера реального
stream – optional parameter specifying the stream defined in #USE TIMER.
__________________
Глаза боятся,а руки делают.

Последний раз редактировалось CERGEI1982; 24.12.2013 в 11:46.
CERGEI1982 вне форума  
Непрочитано 24.12.2013, 12:56  
kobzar
Частый гость
 
Регистрация: 10.06.2005
Сообщений: 30
Сказал спасибо: 13
Сказали Спасибо 22 раз(а) в 9 сообщении(ях)
kobzar на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Я смотрел на это самое #use timer. И понял так, что это вариант настройки выбранного таймера "для ленивых" - установка предделителя и начального значения, а также включения (по желанию) прерывания от таймера. И только.
kobzar вне форума  
Непрочитано 24.12.2013, 13:42  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Не сказал бы:
Код:
TICK_TYPE GetTickDifference(TICK_TYPE currTick, TICK_TYPE prevTick)
{
   return(currTick-prevTick);
}


void main()
{
   TICK_TYPE CurrentTick,PreviousTick;


   //Example program using Tick Timer
   CurrentTick = PreviousTick = get_ticks();

   while(TRUE)
   {
      CurrentTick = get_ticks();

      if(GetTickDifference(CurrentTick, PreviousTick) ›= 1000)
      {
         printf("1\n\r");
         PreviousTick = CurrentTick;
      }

     
   }

}
Это таймер без задержки,проблема в вызове постоянно CurrentTick = get_ticks(); чтоб не вышло за пределы разность GetTickDifference(CurrentTick, PreviousTick).
__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Непрочитано 25.12.2013, 04:03  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Попробывал погонять в протеусе.По задачам:
Есть у них свой стек для сообщений типоразмером long.Определяется уровнем вложений в зависимости от queue=2 +1,получается стек тут 3 уровня.
На рисунках:
1 рисунок показано куда будет положено сообщение при отправке его задаче
2 рисунок показано откуда будет браться сообщение при чтении задачи своего сообщения
3 рисунок показан ниже массив куда сообщения складываются.
Если что не правильно поправляйте.
Миниатюры:
Нажмите на изображение для увеличения
Название: Снимок-1.png
Просмотров: 53
Размер:	28.8 Кб
ID:	56700   Нажмите на изображение для увеличения
Название: Снимок-2.png
Просмотров: 42
Размер:	32.4 Кб
ID:	56701   Нажмите на изображение для увеличения
Название: Снимок-3.png
Просмотров: 52
Размер:	39.6 Кб
ID:	56702  

__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Непрочитано 25.12.2013, 12:17  
Eddy71
Почётный гражданин KAZUS.RU
 
Аватар для Eddy71
 
Регистрация: 22.02.2008
Адрес: Ukraine, рядом с Полтавой
Сообщений: 9,702
Сказал спасибо: 5,498
Сказали Спасибо 25,129 раз(а) в 5,644 сообщении(ях)
Eddy71 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

А можно Вас попросить этот проект для протеуса выложить (а то чего-то не получается создать связку из CCS и протеуса).
__________________
«Совершенство — это не тогда, когда уже нечего больше добавить, а тогда, когда уже нечего отнять.»
/Эйнштейн/

моя домашняя страничка: http://www.eddy.com.ua/
Eddy71 вне форума  
Непрочитано 26.12.2013, 16:59  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Пожалуста вот с семафорами пример.
А чем вас не устраивает задержка типа rtos_await( ), создаем глобальную переменную которая увеличивается в прерывании другого таймера,при это высчитываем разность запуска задержки и текущее,конечно учитываем переполнение таймера.А можно сделать максимально скока тиков сделать чтоб не переполнилось.Попробую привести пример чуть позже.
Вложения:
Тип файла: rar css.rar (36.5 Кб, 50 просмотров)
__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Сказали "Спасибо" CERGEI1982
Eddy71 (27.12.2013)
Непрочитано 26.12.2013, 18:00  
kobzar
Частый гость
 
Регистрация: 10.06.2005
Сообщений: 30
Сказал спасибо: 13
Сказали Спасибо 22 раз(а) в 9 сообщении(ях)
kobzar на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от CERGEI1982 Посмотреть сообщение
Пожалуста вот с семафорами пример.
А чем вас не устраивает задержка типа rtos_await( ), создаем глобальную переменную которая увеличивается в прерывании другого таймера,при это высчитываем разность запуска задержки и текущее,конечно учитываем переполнение таймера.А можно сделать максимально скока тиков сделать чтоб не переполнилось.Попробую привести пример чуть позже.
Безусловно можно создать свою службу таймеров, хотя бы приведенным выше способом. А потом написать свой диспетчер задач. И т.п. И написать ОСА заново Факт остается фактом - таймеров во встроенной RTOS нет. И вообще, Сама новая оболочка что-то плющится безбожно - то виснет, то закрываться не хочет. У меня. Так что остаюсь пока на 4.140. И мучительно разыскиваю TCP/IP стек от CCS. Сам пока пользую перелицованный от DIHALTа c easyelectronics. Но там тоже не все работает...
kobzar вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
i2c+ccs pic Gladkih Микроконтроллеры, АЦП, память и т.д 9 18.04.2016 22:17
PIC BASIC PRO Compiler 2.47 dosikus Proteus, KiCAD и другие ECAD 27 05.12.2009 05:48
изучение IAR AVR C compiler granel Микроконтроллеры, АЦП, память и т.д 0 10.10.2008 20:45
PIC C Compiler PCWH458 sergxxx Микроконтроллеры, АЦП, память и т.д 9 23.09.2008 18:25
Не включается дебаггер в CCS C Compiler BigMazzi Микроконтроллеры, АЦП, память и т.д 4 19.09.2008 13:34


Часовой пояс GMT +4, время: 14:19.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot