|
Atmega162 странности?! |
|
|
|
Feb 4 2009, 19:20
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 203

|
Не знаю в чем причина но с такой бякой сталкиваюсь впервые. Может я просто не знаю этот камень, но вот такая беда. Сначала пропал SPI взял JTAG смотрю фузы, спи на месте, а с частотой какая то ерунда вот дословно что я увидел а АВРСтудии (Int. RC Osc.; Start-up time: 6 CK + 65 ms) то есть частоты как таковой вроде нет? Заливаю простейший код по моргать диодом не работает. Ставлю внешний генератор на 8 мгц тоже не работает. В общем не знаю что и думать. Может кто сталкивался с подобным?
|
|
|
|
|
Feb 5 2009, 05:27
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 203

|
Цитата(=GM= @ Feb 5 2009, 00:05)  Int. RC Osc. - это ж вроде внутренний RC-генератор, получается что частота, как таковая, есть... Да внутренний, но как же, а где ее количество 1,2,4,8 ???
|
|
|
|
|
Feb 5 2009, 06:03
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 203

|
Цитата(haker_fox @ Feb 5 2009, 08:50)  Это не количество, а ряд частот. Выбирается фьюзами (fuse bits). Похоже что вы не внимательно прочитали мой пост. Извините за ошибку конечно же ряд частот. Так вот еще раз говорю что в АВРСтудии должно по идее быть (Int. RC Osc. 8; Start-up time: 6 CK + 65 ms) но там цифры нет, на других контроллерах все нормально, вот я и засомневался может с камнем что не так. Поэтому и интересуюсь может кто сталкивался с подобным явлением.
|
|
|
|
|
Feb 5 2009, 06:49
|
Участник

Группа: Участник
Сообщений: 54
Регистрация: 25-01-06
Из: Самара
Пользователь №: 13 578

|
Цитата(adruha @ Feb 5 2009, 10:03)  Похоже что вы не внимательно прочитали мой пост. Извините за ошибку конечно же ряд частот. Так вот еще раз говорю что в АВРСтудии должно по идее быть (Int. RC Osc.8; Start-up time: 6 CK + 65 ms) но там цифры нет, на других контроллерах все нормально, вот я и засомневался может с камнем что не так. Поэтому и интересуюсь может кто сталкивался с подобным явлением. Если речь идет действительно о ATmega 162, то там никакой сетки частот нет, есть один внутренний генератор 8 МГц, а системная частота может настраиваться через регистр CLKPR. Посмотреть, работает ли внутренний генератор, проще всего на выходе Port B.0 при запрограммированном CKOUT Fuse.
|
|
|
|
|
Feb 5 2009, 08:17
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 203

|
да бох с ним с внутренним яж вам говорю подцепил внешний на 8 мгц и не пашет нет прерывания и все.
|
|
|
|
|
Feb 5 2009, 11:07
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 203

|
больше мыслей нет?
|
|
|
|
|
Feb 5 2009, 11:08
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(adruha @ Feb 5 2009, 16:17)  да бох с ним с внутренним яж вам говорю подцепил внешний на 8 мгц и не пашет нет прерывания и все. ничего не понятно, что Вы хотите... Если подцепили внешний кварц, так выберите "Ext. Crystal..." и прошейте это значение фьюзов. О каком прерывании идет речь?
--------------------
Выбор.
|
|
|
|
|
Feb 5 2009, 11:36
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 203

|
Цитата(haker_fox @ Feb 5 2009, 14:08)  ничего не понятно, что Вы хотите... Если подцепили внешний кварц, так выберите "Ext. Crystal..." и прошейте это значение фьюзов. О каком прерывании идет речь? Ну конечно я прекрасно понимаю что нужно выбрать внешний кварц в настройках фузов. Я так и делаю но камень не работает. Прерывания имею ввиду элементарные на порту В2 например сидит нога светодиода программно делаю ее источником положительного сигнала (или минуса без разницы, есно меняю диод ногами) и осуществляю задержку _delay_ms(50); после задержки программно запрещаю ногу В2 как источник плюса. Так вот диод не моргает хоть какую задержку ставь.
|
|
|
|
|
Feb 5 2009, 13:29
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 203

|
Код #include <avr/io.h> #include <compat/deprecated.h> #include <avr/interrupt.h> #include <util/delay.h>
void led(void){ sbi(DDRA,PA4); sbi(PORTA,PA4); _delay_us(50); cbi(DDRA,PA4); cbi(PORTA,PA4); }
int main(void) { while(1) { led(); }
} Я думаю схему можно и самому догадаться там один диод!
|
|
|
|
|
Feb 5 2009, 13:54
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Код void led(void){ sbi(PORTA,PA4); _delay_us(50); cbi(PORTA,PA4); _delay_us(50); } А если так? Чем смотрите прерывания? Надеюсь не по светодиоду? Ножку на выход настройте один раз!!! где нить в начале программы. Если хотите увидеть мигание светодиода, то частоту мигания следует взять во много раз ниже. Например 1Гц. Тогда используйте задержку в 500 мс, на не в 50 мкс.
--------------------
Выбор.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|