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

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

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

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

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

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


 
Опции темы
Непрочитано 01.08.2012, 00:48  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,530
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от varostov Посмотреть сообщение
теперь вспоминаю даже PIC18 (правда, с CCS) как страшный сон
У меня еще горсть 10-12-16 пиков лежит. На будущее, да, конечно.
Но все ж интересно, откуда ноги растут у этого глюка. Насчет volatile посмотрю завтра.
Реклама:
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 01.08.2012, 02:40  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от varostov Посмотреть сообщение
Не так уж и велика разница в деньгах, а с учётом последних новостей про облегчённые PIC24 с периферией PIC18 любителям последних - зелёный свет. Ну а разницу в библиотеке MAL видно невооружённым взглядом.
когда появится pic24 с изернет контролером,будет совсем отлично.Да и вообще по цене вы правильно сказали,да и немного смущает 3.3 вольта конечно питание
__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Непрочитано 01.08.2012, 09:30  
varostov
Прописка
 
Регистрация: 14.10.2006
Адрес: Ростов-на-Дону
Сообщений: 113
Сказал спасибо: 14
Сказали Спасибо 32 раз(а) в 21 сообщении(ях)
varostov на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Цитата:
Глаза боятся,а руки делают
На самом деле боязнь 3,3v - чисто психологическая. Главное, не тащить за собой груз "привычных" 5-вольтных девайсов - закачаешься делать преобразователи уровня и ловить связанные с ними глюки. Надо сразу сменить всю экосистему - например, часики DS1307 на DS1338Z-33, и т.д.
varostov вне форума  
Сказали "Спасибо" varostov
CERGEI1982 (01.08.2012)
Непрочитано 02.08.2012, 16:18  
rexdn
Прописка
 
Регистрация: 20.10.2008
Сообщений: 103
Сказал спасибо: 95
Сказали Спасибо 25 раз(а) в 18 сообщении(ях)
rexdn на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

А вот у мну такой вопрос.
Собрался собрать небольшой таймер, максимальное время 5-6 часов ну там кнопочки "+", "-", и тд и тп., Индикаторы (думаю LED).
Для начала нарисовал простейшую схемку в Протеусе - F84 + Led.
Написал простенькую програмку, светодиод с интервалом 1 сек. то потухает, то погасает .
1. Для проверки частоты выдаваемой PIC'ом, в схему вставил 4060 и заставил выдавать частоту 0.5Гц (по идее такая же как и выходная в программе), поставил осцилограф.
2. Не совпадают частоты. А если учесть, что таймер будет считать 3-4 часа, то ошибка по времени будет - мама не горюй. И это эмуляция только!, а если это паять в железе? Ведь еще и от кварца сильно зависить будет, и от температуры окружающей.
3. Можно, конечно, в схему поставить ту же 4060 + кварц 32768 и по INT0 обрабатывать прерывания. Но хотелось бы как то удешевить и упростить схему.
Может кто сталкивался с такой проблемой?
Код:
#include ‹Timer.h›

#define Led     RA0_Bit  //Переназначим переменную RA0_Bit, описанную в ".h" в переменную Led

Char TMR0_Counter = 0; 
Int1 Tmr_Ok;

#int_Timer0
void Timer0_ISR (void)
{
TMR0_Counter++;
If (TMR0_Counter›200)
      {
      TMR0_Counter=0;
      Tmr_ok=1;
      }
TMR0_reg = 101;                   //1мксек * 32 * (256-98) ~ 0.05 сек,  
чёта не та частота, поставил 101)
T0IF_bit=0; 
}

void main()
{
Int1 Light=0;
set_tris_a (0b00000000);          //Все выводы порта a - выходы
set_tris_b (0b11111111);          //RB7...RB0 - входы
Port_A = 0x00;

enable_interrupts(GLOBAL);        //вааще разрешим прерывания
enable_interrupts (INT_TIMER0);

setup_timer_0 (RTCC_DIV_32 | RTCC_INTERNAL);  
TMR0_reg = 101; 

   while(TRUE)
   {
      If ((Tmr_ok==1) && (Led==0)) 
       {
        Led=1;
        Tmr_ok =0;
       }
      If ((Tmr_ok==1) && (Led==1)) 
       {
        Led=0;
        Tmr_ok=0;
       }

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

Так где проект в протеусе,откуда я знаю какой у тебя кварц там) Что там у тебя за подключаемый файл Timer.h
__________________
Глаза боятся,а руки делают.

Последний раз редактировалось CERGEI1982; 02.08.2012 в 18:01.
CERGEI1982 вне форума  
Непрочитано 02.08.2012, 18:27  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от rexdn Посмотреть сообщение
1. Для проверки частоты выдаваемой PIC'ом, в схему вставил 4060 и заставил выдавать частоту 0.5Гц (по идее такая же как и выходная в программе), поставил осцилограф.
2. Не совпадают частоты. А если учесть, что таймер будет считать 3-4 часа, то ошибка по времени будет - мама не горюй. И это эмуляция только!, а если это паять в железе? Ведь еще и от кварца сильно зависить будет, и от температуры окружающей.
3. Можно, конечно, в схему поставить ту же 4060 + кварц 32768 и по INT0 обрабатывать прерывания. Но хотелось бы как то удешевить и упростить схему.
Может кто сталкивался с такой проблемой?
Одни эмоции и кулибинские костыли .
http://www.ccsinfo.com/forum/viewtop...er=asc&start=0
__________________
Осторожно , злой кот
dosikus вне форума  
Сказали "Спасибо" dosikus
CERGEI1982 (04.08.2012)
Непрочитано 02.08.2012, 18:42  
rexdn
Прописка
 
Регистрация: 20.10.2008
Сообщений: 103
Сказал спасибо: 95
Сказали Спасибо 25 раз(а) в 18 сообщении(ях)
rexdn на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Проэкт.
Карц - 4Мгц.

Цитата:
Одни эмоции и кулибинские костыли.
Есть немного , начал потихоньку изучать CCS, что то с трудом в голову идёт . А за ссылочку спасибо
Миниатюры:
Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 39
Размер:	50.8 Кб
ID:	37412  
Вложения:
Тип файла: rar TMR0_ISR.rar (23.9 Кб, 36 просмотров)
rexdn вне форума  
Непрочитано 02.08.2012, 21:28  
rexdn
Прописка
 
Регистрация: 20.10.2008
Сообщений: 103
Сказал спасибо: 95
Сказали Спасибо 25 раз(а) в 18 сообщении(ях)
rexdn на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

@dosikus
Спасибо за ссылку.
Извените за вопросы, туплю наверно, или ткните в инфу, где можно прочитать, или объясните.

1. В программу (из вашей ссылки) добавил строки
Ticker_1 = XTAL_FREQUENCY;
Ticker_2 = XTAL_FREQUENCY / 4;
Ticker_3 = TIMER1_FREQUENCY;
2. Скомпелил код, смоделировал на Протеусе. Работает.

вопрос : в программе определенно следующее

#define XTAL_FREQUENCY 20000000
#define TIMER1_FREQUENCY (XTAL_FREQUENCY / 4)

а значение Ticker_1, Ticker_2 и Ticker_3 вы видете. Какая связь?
Пы Сы. не пинайте, спросить, кроме как у вас, не у кого.
Миниатюры:
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 31
Размер:	66.9 Кб
ID:	37413   Нажмите на изображение для увеличения
Название: 2.jpg
Просмотров: 29
Размер:	51.2 Кб
ID:	37414  

Последний раз редактировалось rexdn; 02.08.2012 в 21:33.
rexdn вне форума  
Непрочитано 02.08.2012, 22:00  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от rexdn Посмотреть сообщение
а значение Ticker_1, Ticker_2 и Ticker_3 вы видете. Какая связь?
Не понял какая связь ?
Вы создали 3 переменные и присвоили им значения констант .
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 02.08.2012, 22:10  
rexdn
Прописка
 
Регистрация: 20.10.2008
Сообщений: 103
Сказал спасибо: 95
Сказали Спасибо 25 раз(а) в 18 сообщении(ях)
rexdn на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Ну да, но
XTAL_FREQUENCY = 20 000 000, а Ticker_1 = 11520 (см. рисунок протеуса)
TIMER1_FREQUENCY = XTAL_FREQUENCY / 4 , а Ticker_3 = 19264
вот это мне и не понятно
rexdn вне форума  
 

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

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

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, время: 06:16.


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