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

 
 
 
Reply to this topicStart new topic
> Silabs C8051F345 не удается затактировать от внешнего генератора( опорника)
dr.ON
сообщение Nov 7 2008, 11:58
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 7-10-06
Пользователь №: 21 072



Стоит задача затактировать данный МК от кварцевого опорного генератора( НЕ ОТ КВАРЦА)( выход 0.8V p-p, не CMOS).
Подаю сигнал через развязывающий конденсатор на ногу Р0.6 потом на Р0.7 - НЕ РАБОТАЕТ.
Дальше еще хуже, подавал сигнал с генератора с регулируемой амплитудой( выставлял размах до 3V) НЕ РАБОТАЕТ.

Режимы генератор пробоавл и так External CMOS Clock Mode и так Crystal Oscillator Mode
Режим ног открытый сток, менял аналоговый/цифровой тип входа - НЕ РАБОТАЕТ.

Код инициализации генерил с помощью Родного мастера/конфигуратора.
Потом руками даже писал( разбирался в его регистрах) - НЕ РАБОТАЕТ.

void Oscillator_Init()
{
OSCXCN = 0x27;//0x67;
CLKSEL = 0x51;
OSCICN = 0x00;
}


Кто имел с ними дело помогите пожалуйста. wacko.gif

P.S. на C8051F310 проблем с генератором почти не было( хотя тоже родной код от мастера неработал при отладке, добавляли задержки)
Go to the top of the page
 
+Quote Post
barabek
сообщение Nov 7 2008, 14:47
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(dr.ON @ Nov 7 2008, 21:58) *
Стоит задача затактировать данный МК от кварцевого опорного генератора( НЕ ОТ КВАРЦА)( выход 0.8V p-p, не CMOS).
Подаю сигнал через развязывающий конденсатор на ногу Р0.6 потом на Р0.7 - НЕ РАБОТАЕТ.
Дальше еще хуже, подавал сигнал с генератора с регулируемой амплитудой( выставлял размах до 3V) НЕ РАБОТАЕТ.



void Oscillator_Init()
{
OSCXCN = 0x27;//0x67;
CLKSEL = 0x51;
OSCICN = 0x00;
}


По поводу 0,8В - вообще-то он и не должен работать, только если это не шаманство smile.gif А вот с сигналом от 0-0.8("0") и выше 2 В ("1", а у Вас до 3 В и нога, я так понимаю, P0.7 и без всяких кондеров? ) и с частотой 24МГц (судя по всему Вам нужно 6МГц для USB) работать должно. Правда еще зачем-то требуется "скиптить" этот пин P0.7 по даташиту.
Поэтому встречный вопрос, а что значит НЕ РАБОТАЕТ? Может а Вас банально вотчдог срабатывает smile.gif
Go to the top of the page
 
+Quote Post
dr.ON
сообщение Nov 7 2008, 20:19
Сообщение #3





Группа: Новичок
Сообщений: 3
Регистрация: 7-10-06
Пользователь №: 21 072



Цитата(barabek @ Nov 7 2008, 18:47) *
По поводу 0,8В - вообще-то он и не должен работать, только если это не шаманство smile.gif А вот с сигналом от 0-0.8("0") и выше 2 В ("1", а у Вас до 3 В и нога, я так понимаю, P0.7 и без всяких кондеров? ) и с частотой 24МГц (судя по всему Вам нужно 6МГц для USB) работать должно. Правда еще зачем-то требуется "скиптить" этот пин P0.7 по даташиту.
Поэтому встречный вопрос, а что значит НЕ РАБОТАЕТ? Может а Вас банально вотчдог срабатывает smile.gif

"Шаманство"
Генератор переключался в режим внешнего кварца, и сигнал 0.8В( от пика до пика/полный размах) через развязывающий кондючек подавался на входной пин генератора( там он усиливался )и все работало. Так было сделано на 310х.
А вот с 345м чето так сразу не получилось.

Не работа заключается в "зависании" отладчика после строки "CLKSEL = 0x51;"

P.S. Частота нужна 24.576
P.S.2 Замороченные процы. Еще встречал проблемы с тактированием на МСПэшках430.
Go to the top of the page
 
+Quote Post
repairDV
сообщение Nov 7 2008, 20:38
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 578
Регистрация: 7-11-06
Из: Хабаровск
Пользователь №: 22 044



mov P0SKIP, #0ch ; P0.3 p0.2 - SKIP
;-------------------------------------------
;-----------------------------------------------------
mov OSCXCN, #20h ;extern clock
mov CLKSEL, #01h ;external
mov OSCICN, #00h ;disable internal oscillator
;-------------------------------------------------
Это у F350; рабочий код

Сообщение отредактировал repairDV - Nov 7 2008, 20:51


--------------------
Маленький нанайца. А-а. А-а. Оморочком плыл. Маленький проточка. Осетра ловил.
Go to the top of the page
 
+Quote Post
barabek
сообщение Nov 8 2008, 07:53
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(dr.ON @ Nov 8 2008, 06:19) *
"Шаманство"
Генератор переключался в режим внешнего кварца, и сигнал 0.8В( от пика до пика/полный размах) через развязывающий кондючек подавался на входной пин генератора( там он усиливался )и все работало. Так было сделано на 310х.

Не пойму, для чего Вам это нужно? Возьмите обыкновенный кварц. Нет такого кварца или хотите съэкономить ножку - возьмите нормальный генератор с выходом, соответствующим требованиям. Ведь "шаманство" не гарантирует стабильной работы, если конечно Вы не делаете поделку для себя, а не для заказчика. По поводу работы от внешнего генератора - попробовал Ваш код на 320. Не сразу заработало! Оказалось дело в щупах от генератора - и форма и напряжение сильно поменялось. В конце концов запустил-таки на 24,576МГц, но на синусоиде (у меня генератор на прямоугольник до 12.5 МГц, а на синусоиду до 25). Советую, проверьте осцилом, действительно ли то что нужно на самой ножке контроллера. А то получится как у меня.
Go to the top of the page
 
+Quote Post
dr.ON
сообщение Nov 12 2008, 13:13
Сообщение #6





Группа: Новичок
Сообщений: 3
Регистрация: 7-10-06
Пользователь №: 21 072



Опорник для точности.
Выход синус 0.8В для снижения наводок( чувствительная аппаратура)

"Рабочий" код:


P0SKIP = 0xC3;

OSCXCN = 0x67;
for (i = 0; i < 3000; i++); // Wait 1ms for initialization
while ((OSCXCN & 0x80) == 0);
CLKSEL = 0x51;

При этом выключать встроенный генератор нельзя( отваливается отладчик).
При таком коде размах сигнала( sin) ~2.5В p-p !!! на входе P1.0
Go to the top of the page
 
+Quote Post

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

 


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


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