|
AtMega8 -16PI + кварц на 4 МГц, связаны ли глюки с низкой частотой кварца? |
|
|
|
Apr 15 2006, 20:02
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 13-04-06
Пользователь №: 16 093

|
Писал одну программулину - долго не мог понять причину неработоспособности, наконец выяснил - результат работы функции delay_ms(100) не соответствует истине. На самом деле, задержка была где-то 400 мс. Кварц на 4 МГц, в CodeVision в свойствах указана частота 4 МГц. Однако такая вот проблема. Я поуменьшал задерки в 4 раза - микросхема, управляемая контроллером заработала, однако с глюками, причина которых скорее всего тоже во временных интервалах.
Что скажете?
|
|
|
|
|
Apr 15 2006, 21:32
|
Частый гость
 
Группа: Свой
Сообщений: 150
Регистрация: 13-10-05
Пользователь №: 9 614

|
А еще скорее Мега работает на внутреннем RC генераторе. Частота у него как раз в 4 раза меньше... Ну и статистика сообщений этого раздела форума это подтверждает. CKSEL частенько забывают прошивать.
|
|
|
|
|
Apr 16 2006, 04:58
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 13-04-06
Пользователь №: 16 093

|
эээээ.... зажил я CKSEL - контроллер вообще перестал программироваться - при стирании AvrealShell пишет - "микросхема не отвечает"...
|
|
|
|
|
Apr 16 2006, 05:48
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 13-04-06
Пользователь №: 16 093

|
блин, дурак я... вычитал где-то, что надо ставить "F" для частот больше 3 МГц, ну и поставил...
Если честно, про режим старта и BOD первый раз слышу... Но это не мешало мне раньше запускать контроллер.. Мне бы все как раньше, по умлочанию, но чтобы контроллер от кварца работал...
В параметрах для ATMega8 есть CKSEL (без нуля), параметра SUT0 нет. ЧТо прикажете делать?
P.S. для того чтобы вывести контроллер из комы нужно наверное воспользоваться внешним тактированием?
|
|
|
|
|
Apr 16 2006, 05:59
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(ogogogogogogogogogo @ Apr 16 2006, 08:48)  ЧТо прикажете делать? Очень внимательно читать даташит. ВЕСЬ, а не только страничку с УГО. Цитата P.S. для того чтобы вывести контроллер из комы нужно наверное воспользоваться внешним тактированием? вероятно да, если Вы там не установили RSTDSBL=0. иначе только высоковольным программатором.
|
|
|
|
|
Apr 16 2006, 06:50
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 13-04-06
Пользователь №: 16 093

|
Вывел из комы с помощью XTAL от AVReal.
Почитал даташит от atmel - слабо там написано про fuses. В частности про то как установить 4 МГц. В форуме в теме "Тактирование mega8" тоже этого нет.
Может быть кто-то на память понит как это сделать для Mega8?
Только просьба новичка - попонятней, а то фраза "cksel0-3 и ckopt все unprogramming(1),sut0-1" сбивает с толку...
Поконкретней. Вот как установлены у меня fuses - как прочел их AVreal:
OSCCAL = B0, AF, AD, AE BLEV = 1 BODEN = 1 SUT = 2 CKSEL = 1 BLB1 = 3 BLB0 = 3 RSTDSBL = 1 WDTON = 1 CKOPT = 1 EESV = 1 BSIZ = 0 BRST = 1
Как поменять значения для mega8 для работы с 4 Мгц ?
|
|
|
|
|
Apr 16 2006, 07:17
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 13-04-06
Пользователь №: 16 093

|
Может я тупой, но как вы представляете себе два значения для одного и того же параметра?
К тому же Avreal выдал следующее: "Value 1111 too large for fuse CKSEL"
Команда для avreal выглядела так: -p1 +MEGA8 -ab -n -e -fCKSEL=1111 -%
|
|
|
|
|
Apr 16 2006, 07:57
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(ogogogogogogogogogo @ Apr 16 2006, 10:17)  как вы представляете себе два значения для одного и того же параметра? е-мае.. CKSEL0 = не важно CKSEL1 = 1 CKSEL2 = 1 CKSEL3 = 1 неужели совсем не судьба в даташит заглянуть (стр. 25)
|
|
|
|
|
Apr 16 2006, 08:04
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 13-04-06
Пользователь №: 16 093

|
е-мае... даташит... я же писал, что в Avreal для mega8 есть только параметр CKSEL.
Неужели вместо этого нельзя сказать : "коллега не обращайте внимание на AVREAL, на самом деле там 4 параметра."
Впрочем спасибо.
Кстати - установка в CodeVision частоты 1 МГц привела к тому, что все работает ))). Эх... а я две недели бился...
|
|
|
|
|
Apr 16 2006, 08:18
|
Гуру
     
Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250

|
Цитата(ogogogogogogogogogo @ Apr 16 2006, 12:04)  е-мае... даташит... я же писал, что в Avreal для mega8 есть только параметр CKSEL.
Неужели вместо этого нельзя сказать : "коллега не обращайте внимание на AVREAL, на самом деле там 4 параметра." Догадаться, что F (шестнадцатеричное) = 1111 (двоичное), конечно, невозможно ...
--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|