Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Продукция MICROCHIP

Продукция MICROCHIP Технические вопросы по всей продукции Microchip

Ответ
 
Опции темы Опции просмотра
Старый 10.11.2020, 21:25   #1
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Не стартует умножение тактовой частоты HS PLL

Контроллер PIC18F2320 не в какую не хочет запускаться на 40 МГц. Запускается на частоте 10 МГц то есть на частоте кварца что впаян в плату. Не могу разобраться.






ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 21:46   #2
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 33
Сообщений: 2,547
Вес репутации: 4677/102
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

ATAMAN
Выложите код, где Вы выставляете частоту.


Как Вы проверяете? Во младших пик машинный цикл выполняется за 4 такта. То если Вы будете дергать ножкой, то у Вас на 40 MHz будет выполняться меньше 10 М инструкций в секунду.
besogon вне форума   Ответить с цитированием
Старый 10.11.2020, 21:50   #3
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 61
Сообщений: 3,462
Вес репутации: 4234/125
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

АТАМАН, я надеюсь, что вы отдаете себе отчет в том, что при работе с PLL на частоте 40 МГц, время машинного цикла будет 100 нс, то есть системная частота будет 10 МГц?
Марк на форуме   Ответить с цитированием
Старый 10.11.2020, 21:52   #4
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

В программе mikroC PRO for PIC в ней биты конфигурации можно определить и настроить только в этом окне
https://i.postimg.cc/m25wSXvr/image.gif
В самом листинге где пишеться код программы не выставишь.
ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 21:54   #5
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 61
Сообщений: 3,462
Вес репутации: 4234/125
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Как вы определили, что частота накачки МК 10 МГц?
Марк на форуме   Ответить с цитированием
Старый 10.11.2020, 21:54   #6
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от Марк Посмотреть сообщение
АТАМАН, я надеюсь, что вы отдаете себе отчет в том, что при работе с PLL на частоте 40 МГц, время машинного цикла будет 100 нс, то есть системная частота будет 10 МГц?
К сожалению нет. Я не знал. Но тогда смысл от HS PLL?
ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 21:58   #7
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 61
Сообщений: 3,462
Вес репутации: 4234/125
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Вообще то смысл в том, что с кварцем 40 МГц осциллятор работать не будет. Все восьмибитники Микрочипа работают на системной частоте в 4 раза меньшей, чем частота осциллятора. Ориентироваться нужно не на частоту осциллятора, а на максимальную скорость МК в MIPS. Она определена в даташите. Прямо в самом начале.
PIC18 быстрее 16 MIPS не бывает. Но часть периферии в некоторых семействах МК работает на частоте осциллятора.
Марк на форуме   Ответить с цитированием
Старый 10.11.2020, 21:58   #8
petrd
Senior Member
 
Регистрация: 09.02.2008
Адрес: Воронеж
Возраст: 49
Сообщений: 1,865
Вес репутации: 2279/87
petrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond repute
Отправить сообщение для petrd с помощью ICQ
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

А почему решили, что он не запускается на 40 МГц? Все же вопрос про железо или Протеус?
.......................
Уже написали.
В MikroC в этом окошке надо писать частоту ядра, а не кварца, т.е. в Вашем случае 40 МГц. Он от нее будет задержки считать, боле ничего.
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3)
petrd вне форума   Ответить с цитированием
Старый 10.11.2020, 21:58   #9
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от Марк Посмотреть сообщение
Как вы определили, что частота накачки МК 10 МГц?
Написал программу которая дергает ногой МК по переполнению TMR3 в прерывании. На ноге получил в железе 901 Гц что соответствует расчёту.
Нажмите на изображение для увеличения
Название: Снимок5.GIF
Просмотров: 9
Размер:	189.3 Кб
ID:	11799
А должно быть 3613 Гц
Нажмите на изображение для увеличения
Название: Снимок3.GIF
Просмотров: 5
Размер:	198.2 Кб
ID:	11800
ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 21:59   #10
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от petrd Посмотреть сообщение
А почему решили, что он не запускается на 40 МГц? Все же вопрос про железо или Протеус?
И в железе и в протеусе всё одно не запускается.
Код:
/t_0=(((TMR1H<<8)|TMR1L)<<8|TMR3H)<<8|TMR3L;
 #include    "lcd.h"
 #include    "Enc.h"
//unsigned short New=0, EncState=0, EncData=0, t_0=0, New_0=0;
unsigned int t_1=0,t_2=0;
unsigned long resul=0;
char lcd_buf[15];
union{
unsigned short unsh[2];
unsigned int unlo;
}muuni;
void main()
{
TRISA=0b00000000;
TRISB=0b11000111;
TRISC=0b00000000;
PORTA=PORTB=PORTC=0;
INTCON=0B11000000;
INTCON2=0B01111111;
PIE2=0b00000010;
ADCON1=0B0001111;
T3CON=0b00000001;
INTCON3=0b00001000;
lcd_init();
lcd_clear();
muuni.unlo=60000;
while(1)
{
muuni.unlo=Encoder(muuni.unlo);

resul=(40000000/(65535-muuni.unlo)/2);
LongToStr(resul, lcd_buf);
lcd_gotoxy(0,10);
lcd_puts(lcd_buf);

WordToStr(muuni.unsh[1], lcd_buf);
lcd_gotoxy(0,0);
lcd_puts(lcd_buf);

WordToStr(muuni.unsh[0], lcd_buf);
lcd_gotoxy(1,0);
lcd_puts(lcd_buf);

WordToStr(t_1, lcd_buf);
lcd_gotoxy(1,10);
lcd_puts(lcd_buf);

}
}
//==============================================================================
void interrupt(void)
{
if(PIR2.TMR3IF)
{
PIR2.TMR3IF=0;
TMR3H=muuni.unsh[1];
TMR3L=muuni.unsh[0];
  PORTC.RC2=~PORTC.RC2;
}
if(INTCON3.INT1IF)
{
INTCON3.INT1IF=0;
t_1=(TMR3H<<8)|TMR3L;
}
}
ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 22:06   #11
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от Марк Посмотреть сообщение
Но часть периферии в некоторых семействах МК работает на частоте осциллятора.
Что то нет такого в дш может это для АЦП?
ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 22:08   #12
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 61
Сообщений: 3,462
Вес репутации: 4234/125
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от ATAMAN Посмотреть сообщение
Написал программу которая дергает ногой МК по переполнению TMR3 в прерывании. На ноге получил в железе 901 Гц что соответствует расчёту.
Все правильно. В этом МК 3-й таймер тактируется системной частотой, то есть 10 МГц.
Марк на форуме   Ответить с цитированием
Старый 10.11.2020, 22:08   #13
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от Марк Посмотреть сообщение
Вообще то смысл в том, что с кварцем 40 МГц осциллятор работать не будет.
В схеме кварц у меня стоит 10 МГц.
ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 22:09   #14
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 61
Сообщений: 3,462
Вес репутации: 4234/125
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от ATAMAN Посмотреть сообщение
Что то нет такого в дш может это для АЦП?
Вы взяли допотопный МК и хотите иметь новые фичи...
Возьмите PIC18F27Q43 и получите искомое. Да еще с кучей бантиков...
Марк на форуме   Ответить с цитированием
Старый 10.11.2020, 22:12   #15
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от Марк Посмотреть сообщение
Все правильно. В этом МК 3-й таймер тактируется системной частотой, то есть 10 МГц.
Точно TMR3 тактируется системной частотой делённой на 4.
ATAMAN вне форума   Ответить с цитированием
Старый 10.11.2020, 22:12   #16
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 61
Сообщений: 3,462
Вес репутации: 4234/125
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от ATAMAN Посмотреть сообщение
В схеме кварц у меня стоит 10 МГц.
Правильно. Читайте даташит. Максимальная частота кварцевого осциллятора - 20 МГц. Если хотите получить 10 MIPS, нужно ставить кварц 10 МГц и включить PLL.
Марк на форуме   Ответить с цитированием
Старый 10.11.2020, 22:13   #17
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 61
Сообщений: 3,462
Вес репутации: 4234/125
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от ATAMAN Посмотреть сообщение
Точно TMR3 тактируется системной частотой делённой на 4.
НЕТ!!! Системная частота (Fcy) - это частота осциллятора (Fosc) деленная на 4. Вот от нее и питается таймер.
Марк на форуме   Ответить с цитированием
Старый 10.11.2020, 22:15   #18
petrd
Senior Member
 
Регистрация: 09.02.2008
Адрес: Воронеж
Возраст: 49
Сообщений: 1,865
Вес репутации: 2279/87
petrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond reputepetrd has a reputation beyond repute
Отправить сообщение для petrd с помощью ICQ
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Цитата:
Сообщение от ATAMAN Посмотреть сообщение
Написал программу которая дергает ногой МК по переполнению TMR3 в прерывании. На ноге получил в железе 901 Гц что соответствует расчёту.
Вложение 11799
А должно быть 3613 Гц
Вложение 11800
Все правильно должно быть - 901. В калькуляторе ставите галку на 40МГц и галку на Fosc\4 и получаете так, как и будет на самом деле.
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3)
petrd вне форума   Ответить с цитированием
Старый 10.11.2020, 22:17   #19
ATAMAN
Senior Member
 
Аватар для ATAMAN
 
Регистрация: 09.01.2012
Возраст: 37
Сообщений: 506
Вес репутации: 373/41
ATAMAN is just really niceATAMAN is just really niceATAMAN is just really niceATAMAN is just really nice
По умолчанию Re: Не стартует умножение тактовой частоты HS PLL

Всё понял. Спасибо всем за помощь.
ATAMAN вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что за зверь - Скатерограмма Edua Общетехнические вопросы 17 01.03.2013 23:33
Имитатор DS18B20 Filya44 Вопросы начинающих 14 12.03.2012 17:39
Нужна ли МК ОС? syv Инструментарий 179 22.01.2009 10:59
Не работает умножение переменных в PIC18F2520!!! WildFrog Вопросы начинающих 11 06.08.2008 10:20
Макимальная частота прерываний от TMR0 ANH Продукция MICROCHIP 114 05.04.2008 00:50


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


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