Перейти к содержанию

Проблема С Кварцевым Резонатором


knyaz*

Рекомендуемые сообщения

Прошиваю программатором в котором используется кварц на 4 МГц...

В схеме стоит кварц на 23768 Гц...

Схема с кварцем на 32768 Гц не запускается если меняю на 4 МГц все пашет....

Может ли ATtiny2313 работать с кварцем на 32768 Гц?

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

post-26509-1204920515_thumb.png

Вот что написанно в даташите я так понимаю что ниже 0,4 МГц работать не будет///

Тогда напрашивается вопрос будит ли работать с внешним тактовым сигналом///

Ссылка на комментарий
Поделиться на другие сайты

Особенности хранения литиевых аккумуляторов и батареек

Потеря емкости аккумулятора напрямую зависит от условий хранения и эксплуатации. При неправильном хранении даже самый лучший литиевый источник тока с превосходными характеристиками может не оправдать ожиданий. Технология, основанная на рекомендациях таких известных производителей литиевых источников тока, как компании FANSO и EVE Energy, поможет организовать правильный процесс хранения батареек и аккумуляторов. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

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

А почему нельзя применить другой кварц?

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

http://www.rtcs.ru/comp/html/txt/ic/Atmel/.../attiny2313.htm

вот по этой ссыле пишут что тини 2313 может работать на частоте от 0 до 20 МГц

для меги128 написанно вот так

Низкочастотный кварцевый генератор

Для использования часового кварцевого резонатора 32.768 кГц в качестве источника синхронизации необходимо выбрать низкочастотный кварцевый генератор путем установки конфигурационных бит CKSEL равными “1001”. Подключение кварцевого резонатора показано на рисунке 19. Путем программирования конфигурационного бита пользователь может разрешить подключение встроенных конденсаторов к выводам XTAL1 и XTAL2, тем самым исключая необходимость применения внешних конденсаторов. Внутренние конденсаторы имеют номинал 36 пФ. После выбора данного генератора, длительности задержек при старте определяются конфигурационными битами SUT как показано в таблице 10.

прокатит ли такая же конфигурация?

Изменено пользователем knyaz*
Ссылка на комментарий
Поделиться на другие сайты

Ну так што стоит проверить? Архетектура то в них похожая, может и прокатит.

Помню когдато у меня Мега8 запускалась с таким кварцем. (Правда фюзы на ней были выставлены для работы с 4МГц кварцем) Так што с чем черт не шутит.

Ссылка на комментарий
Поделиться на другие сайты

попробовал выставить 1001 включается но только вот беда программа как будто бы зависает... есть вариант того что цифры просто бегуть от 0 до 9... ХЗ завтра буду покупать кварц другой да и контроллер думаю взять еще одит кто знает мож сам мк мне попался левый...

Ссылка на комментарий
Поделиться на другие сайты

вот текст программы

//Version 1.0.1
//Частота кварцевого резонатора 32,768 Hz

#include<avr/io.h>		
#include<avr/interrupt.h>	

//Объявление переменных
int temp;   	 //Переменная для хранения числа импульсов
int cat[3];	   //В массив записываются разряды
		   //Для вывода на сегмент
char segments[] = { 0x7e, 0x0c, 0xb6, 0x9e, 0xcc, 0xda, 0xfa,
				0x0e, 0xfe, 0xde };	

//Прерывание на входе INT0
ISR(SIG_INTERRUPT0)
{
temp++;		//Счет импульсов при каждом импулсе добавит 1
}

//Прерывание при переполнении T/C0
ISR(SIG_OVERFLOW0)
{
TCNT0=0x80;		//Записываем 128 для того что бы прерывание
				//происходило каждую секунду
temp=temp*6;   	//Число прешедших на вход импульсов
	   		//умножаем на 6
cat[0]=temp%10;	 //Делим на 10 остаток в масив 1-разряд
temp=temp/10;   	//Оставляем 2 разряда 
cat[1]=temp%10;	 //Делим на 10 остаток в масив 2-разряд
cat[2]=temp/10;	 //Делим на 10 целое число в масив 3-разряд
temp=0;			//Обнуляем счетчик импульсов
}

//Основной цикл
int main(void)
{
DDRB=0xFE;	 //Конфигурация порта В 11111110
DDRD=0x0B;	 //Конфигурация порта D 00001011
GIMSK=0x40;	//Внешнее прерывание на входе INT0 активно
MCUCR=0x03;	//Прерывание на входе INT0 по возрастаюшему фронту
EIFR=0x00;	 //Сбросить флаги внещних прерываний
TCCR0B=0x04;   //Частота тактов делится на 256
TIMSK=0x02;	//Прерывание при переполнении T/C0
TIFR=0x00;	 //Сбрасываем флаги прерываний от T/C0
TCNT0=0x80;	//Записываем 128 для того что бы прерывание
		   //происходило каждую секунду
ACSR=0x80;	 //Выключение аналогово компаратора
sei();		 //Глобальное разрешение прерываний
while(1){
PORTD=0x01;			   //Зажигаем первый разряд
PORTB=segments[cat[0]];	//Зажигаем элементы разряда
PORTD=0x02;			 //зажигаем второй разряд
PORTB=segments[cat[1]];	//Зажигаем элементы разряда
PORTD=0x08;				//Зажигаем тертий разряд
PORTB=segments[cat[2]];	//Зажигаем элементы разряда
};
}

вопрос у меня еденственный правильно ли вызываю прерывания хотя при отладке в vmlab все нормально работает =0

Изменено пользователем knyaz*
Ссылка на комментарий
Поделиться на другие сайты

Ну в программировании МК я сам новичок, так што по коду советов никаких дать немогу. Ну тут мне всеже кажется что проблема всетаки в нехватке частоты.

Или как вариант, попался плохой кварц и мк нестабильно с ним работает.

Хотя если в vmlab работает то может всетаки проблемы или с МК или с кварцем.

Изменено пользователем Lisovic
Ссылка на комментарий
Поделиться на другие сайты

у мну оказывается хреново компилируется сама программа в winavr или avr-gcc а хотя компилируя в cvavr запускается только на 4 МГц так что мне кажется что тиня2313 не будет работать с часовым кварцем

а по поводу языка С и компилятора могу сказать одно надо учить Ассемблер и будет счастье =)

Ссылка на комментарий
Поделиться на другие сайты

Здесь мне кажется проблема всетаки в прошивке. Поскольку МК всетаки запускается.

На таких частотах скорее всего и проявляется медлительность языка С.

Фактически фиг его знает как компилятор скомпилирует прогу, возможно там появляется лишние такты, и при таких частотах они и парят мозги.

Тем и хорош Ассемблер что всегда можно посчитать количество тактов. И написать так чтоб ничего лишнего в ней небыло.

Сдесь http://startcd.narod.ru/clock/clock.html есть интересная стаття, там МК тактируется от внутреннего генератора, и дополнительно от часового кварца. Там есть исходник на С. Может найдешь там чтото полезное.

Ссылка на комментарий
Поделиться на другие сайты

спасибо за ссылу но эт я знаю да и МК там мега8 у как мне известно у этого МК в даташите задокументированно как запускать его с часовым кварцем =)

Щас начинаю учит АССЕМБЛЕР =) попробую прогу написать опятьже для часового кварца...

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

Дело вовсе не в ассемблере (на котором можно сделать ещё более запутанную программу).

Советую вам найти примеры кода на Си для динамической индикации (см. http://forum.cxem.net, радиокот, могу выслать на почту и т.д.), или хотябы поставьте задержки после вывода каждой цифры.

В вашей программе написано:

GIMSK=0x40; //Внешнее прерывание на входе INT0 активно

MCUCR=0x03; //Прерывание на входе INT0 по возрастаюшему фронту

Куда вы подключили кварц? к выводам XTAL1, XTAL2 или к INT0 ? Вполне возможно ваш обработчик прерываний INT0 никогда не вызывается и поэтому ничего не происходит.

Советую запускать attiny от внутреннего источника 4МГц, а время считать как в примере (http://startcd.narod.ru/clock/clock.html). Я сам планирую так сделать, как только куплю большие индикаторы для часов)))

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...