Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AvrUsb500 by Petka. продолжение
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23
electronics
Цитата(Petka @ Jan 29 2012, 21:37) *
попробуйте сначала "make clean"

Пробовал выше написанное, выдает туже ошибку sad.gif
Petka
Цитата(electronics @ Jan 30 2012, 10:07) *
Пробовал выше написанное, выдает туже ошибку sad.gif

Переустановите компилятор.
electronics
Цитата(Petka @ Jan 30 2012, 10:36) *
Переустановите компилятор.

Пробовал, не помогает. Может я что то не правильно делаю.
Описываю последовательность своих действий:
1) в программе Programmers Notepad создаю новый проект в папке с исходниками
2) добавляю в проект все файлы исходников
3) открываю файл main.c
4) выполняю команду Tools/Make Clean
5) выполняю команду Tools/Make All
6) компилятор выдает ошибку main.c:1073: fatal error: opening dependency file .dep/main.o.d: No such file or directory
Не пойму, чего он ругается???
Petka
Цитата(electronics @ Jan 31 2012, 16:20) *
Пробовал, не помогает. Может я что то не правильно делаю.

Так и есть.
Не надо создавать никаких проектов. Просто с оригинальным Makefile выполните "Tools/Make All"
mcmega
Приветствую всех!
Может кто поможет. Собрал схему FT232RL+Mega8. При включении поморгал светодиод. Установил драйвер, всё нормально. Далее хотел прошить через PoniProg, но ничего не получилось. Поэтому прошил Mega8 другим программатором и выставил фьюзы как надо (в poni и CodeVisionAVR они выставляются одинаково). Выключил, переключил джампер в режим программирования, включил и всё. В винде (winxp) com порт пропал, устройство никак не обнаруживается, светодиодики на 22 и 23 ногах FT232RL постоянно горят и помиргивают, светодиод, подключеный к 14 ноге Mega8 - горит постоянно. Куда рыть??
Кстати прошивка под кварц 14745600 atmega8.hex размер 14565
Плата приложена.
mcmega
Когда замыкаю Х2 и Х4 (reset и 232RL) и подключаю USB, то определяется мой сом порт, что может быть у меня не так?
И ещё такой вопрос. Можно ли залить новую прошивку через USB (как при прошивке в первый раз)? или придётся другим программатором шить?
mcmega
Блин, подключился другим программатором к Mega8, использую CodeVisionAVR, сначало писал
chip signature mismatch
Read: byte0=0x00, byte1=0x00, byte2=0x00
mast be: byte0=0x1E, byte1=0x93, byte2=0x07
я ничего не делал, читал форум и периодически пробовал подключиться к контроллеру,
а сейчас пишет
chip signature: byte0=0x00, byte1=0x00, byte2=0x00
chip: AT43USB355 or AT76C711 or AT94K05 or AT94K
как это понимать, я вообще ничего уже не понимаю, что творится?
Леонид Иванович
Как сделать так, чтобы программатор был виден из AVR Studio как AVRISP, а не STK500?
В ответ на CMD_SIGN_ON передается строка "AVRISP_2", но все равно в заголовке окна STK500.
electronics
Цитата(Petka @ Jan 31 2012, 17:11) *
Не надо создавать никаких проектов. Просто с оригинальным Makefile выполните "Tools/Make All"

Спасибо, помогло.
Еще вопрос, в качестве L1 подойдет ферритовая бусина 1uH ток до 7А.
Petka
Цитата(electronics @ Feb 4 2012, 16:22) *
Спасибо, помогло.
Еще вопрос, в качестве L1 подойдет ферритовая бусина 1uH ток до 7А.

Да, подойдёт.
По идее там и должна стоять бусина. На момент разработки программатора бусины в розничной продаже были очень редкими. По этой причине я туда поставил дроссель, хотя годится и ферритовая бусина.

Цитата(mcmega @ Feb 1 2012, 14:31) *
Блин, подключился другим программатором к Mega8, использую CodeVisionAVR, сначало писал
chip signature mismatch
Read: byte0=0x00, byte1=0x00, byte2=0x00
mast be: byte0=0x1E, byte1=0x93, byte2=0x07
я ничего не делал, читал форум и периодически пробовал подключиться к контроллеру,
а сейчас пишет
chip signature: byte0=0x00, byte1=0x00, byte2=0x00
chip: AT43USB355 or AT76C711 or AT94K05 or AT94K
как это понимать, я вообще ничего уже не понимаю, что творится?

Видимо вы не правильно подключились программатором к чипу. Проверьте наличие MISO, MOSI, SCK, RESET, VCC, GND. Нулевые фузы могут намекать на закоротку между MISO и GND.

Цитата(mcmega @ Jan 31 2012, 18:16) *
... В винде (winxp) com порт пропал, устройство никак не обнаруживается, светодиодики на 22 и 23 ногах FT232RL постоянно горят и помиргивают, светодиод, подключеный к 14 ноге Mega8 - горит постоянно. Куда рыть??
...

Добиться наличия виртуального КОМ порта в виндовс. Если нет порта, значит ошибка где-то в обвязке FT232RL. Ищите сначала её.
alfpk00
Всем привет!

Уважаемый Petka!
Собираюсь собрать данный программатор, есть несколько вопросов:

Планируется использование данного программатора в режиме постоянного подключения к программируемому МК (вместо разъема ISP будут разведены проводники на плате), к этому же порту МК подключен LCD. Можно ли использовать данный программатор в режиме постоянного подключения? (выходы программатора после программирования устанавливаются в Z состояние?).
Если нет, то что нужно изменить в схеме/прошивке?

Будет использоваться FT232RL b AtMega8 (DIP)
Спасибо!
Petka
Цитата(alfpk00 @ Feb 6 2012, 02:31) *
...
Можно ли использовать данный программатор в режиме постоянного подключения? (выходы программатора после программирования устанавливаются в Z состояние?).
...

Можно. Устанавливаются в Z-состояние.
foxghost
Цитата(Petka @ Jan 29 2012, 21:37) *
Попробуйте запрограммировать не через ponyprog а через avrdude. В самом первом посте этого топика в разделе "первоначальная прошивка программатора" есть описание как прошить программатор через avrdude.
http://electronix.ru/forum/index.php?s=&am...st&p=662781


Пробовал через avrdude ничего не вышло.
Только сейчас заметил при первом считывании фьюзов стоит активным SPIEN, может по этому уменя не получается первоначально прошить ATmega48PA?
Petka
Цитата(foxghost @ Feb 6 2012, 11:03) *
Пробовал через avrdude ничего не вышло.

Что пишет avrdude?
При запуске avrdude надо добавить в строку параметров ключ "-v -v"
Цитата
Только сейчас заметил при первом считывании фьюзов стоит активным SPIEN, может по этому уменя не получается первоначально прошить ATmega48PA?

Для точного ответа нужен знать, что выводит avrdude при попытке прошить.
Леонид Иванович
Цитата(Petka @ Feb 6 2012, 11:57) *
Для точного ответа нужен знать


А Вы, случайно, не знаете ответ на мой вопрос: http://electronix.ru/forum/index.php?showt...t&p=1023099
Petka
Цитата(Леонид Иванович @ Feb 6 2012, 12:17) *
А Вы, случайно, не знаете ответ на мой вопрос: http://electronix.ru/forum/index.php?showt...t&p=1023099

Нет.
foxghost
Вот что выдает
CODE
avrdude: Version 5.5, compiled on Jan 6 2008 at 13:57:17
Copyright © 2000-2005 Brian Dean, http://www.bdmicro.com/

System wide configuration file is "C:\Temp\AVRDUDE\avrdude.conf"

Using Port : \\.\com2
Using Programmer : stk500_by_petka
Overriding Baud Rate : 9600
Setting bit clk period: 10.0
Setting isp clock delay: 10
AVR Part : ATMEGA48
Chip Erase delay : 45000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :

Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 5 4 0 no 256 4 0 3600 3600 0xff 0xff
flash 65 6 64 0 yes 4096 64 64 4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

Programmer Type : SERBB
Description : AvrUsb500 by Petka, reset=!txd sck=!rts mosi=!dtr miso=!cts

bitbang_cmd(): [ AC 53 00 00 ] [ FF FE 53 00 ]
avrdude: AVR device initialized and ready to accept instructions

Reading | bitbang_cmd(): [ 30 00 00 00 ] [ 00 30 00 1E ]
bitbang_cmd(): [ 30 00 01 00 ] [ 00 30 00 92 ]
################bitbang_cmd(): [ 30 00 02 00 ] [ 00 30 00 0A ]
################################## | 100% 0.30s

avrdude: Device signature = 0x1e920a
avrdude: Expected signature for ATMEGA48 is 1E 92 05
Double check chip, or use -F to override this check.
Petka
Цитата(foxghost @ Feb 6 2012, 16:44) *
Вот что выдает
...
avrdude: Device signature = 0x1e920a
avrdude: Expected signature for ATMEGA48 is 1E 92 05
Double check chip, or use -F to override this check.

В параметрах запуска avrdude поменяйте atmega48 на atmega48pa и повторите снова.
foxghost
Теперь вот не находит

System wide configuration file is "C:\Temp\AVRDUDE\avrdude.conf"

avrdude: AVR Part "atmega48pa" not found.

Valid parts are:
m6450 = ATMEGA6450 [C:\Temp\AVRDUDE\avrdude.conf:10832]



а на другой точно такой же плате выдало следующее

CODE
avrdude: Version 5.5, compiled on Jan 6 2008 at 13:57:17
Copyright © 2000-2005 Brian Dean, http://www.bdmicro.com/

System wide configuration file is "C:\Temp\AVRDUDE\avrdude.conf"

Using Port : \\.\com2
Using Programmer : stk500_by_petka
Overriding Baud Rate : 9600
Setting bit clk period: 10.0
Setting isp clock delay: 10
AVR Part : ATMEGA48
Chip Erase delay : 45000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :

Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 5 4 0 no 256 4 0 3600 3600 0xff 0xff
flash 65 6 64 0 yes 4096 64 64 4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

Programmer Type : SERBB
Description : AvrUsb500 by Petka, reset=!txd sck=!rts mosi=!dtr miso=!cts

bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
bitbang_cmd(): [ AC 53 00 00 ] [ FF FF FF FF ]
avrdude: AVR device not responding
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
Petka
Цитата(foxghost @ Feb 7 2012, 13:02) *
...
avrdude: AVR Part "atmega48pa" not found.
...

Atmel зачем-то изменила сигнатуру чипов Atmeg48pa. Была "0x1e 0x92 0x05"
А стала "0x1e 0x92 0x0A"

В файле конфигурации avrdude (avrdude.conf)
найдите строчку " signature = 0x1e 0x92 0x05;"
и замекните её на " signature = 0x1e 0x92 0x0A;"
foxghost
заменил



avrdude: Version 5.5, compiled on Jan 6 2008 at 13:57:17
Copyright © 2000-2005 Brian Dean, http://www.bdmicro.com/

System wide configuration file is "C:\Temp\AVRDUDE\avrdude.conf"
parse error at C:\Temp\AVRDUDE\avrdude.conf:6422
Petka
Цитата(foxghost @ Feb 7 2012, 14:02) *
System wide configuration file is "C:\Temp\AVRDUDE\avrdude.conf"
parse error at C:\Temp\AVRDUDE\avrdude.conf:6422

Попробуйте этот файл.
foxghost
Не помогло

avrdude: Version 5.5, compiled on Jan 6 2008 at 13:57:17
Copyright © 2000-2005 Brian Dean, http://www.bdmicro.com/

System wide configuration file is "C:\Temp\AVRDUDE\avrdude.conf"
error at C:\Temp\AVRDUDE\avrdude.conf:332 unrecognized character: "w"
Petka
Цитата(foxghost @ Feb 7 2012, 16:36) *
Не помогло
....
error at C:\Temp\AVRDUDE\avrdude.conf:332 unrecognized character: "w"

воспользуйтесь свежей версией avrdude:
http://download.savannah.gnu.org/releases/...h7610-win32.zip
avrdude.conf возьмите мой.
foxghost
попробовал вот концовка


Writing | bitbang_cmd(): [ 58 08 00 00 ] [ 00 58 08 D9 ]
bitbang_cmd(): [ AC A8 00 DC ] [ 00 AC A8 00 ]
bitbang_cmd(): [ 58 08 00 00 ] [ DC 58 08 DC ]
################################################## | 100% 0.31s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xDC:
avrdude: load data hfuse data from input file 0xDC:
avrdude: input file 0xDC contains 1 bytes
avrdude: read
Petka
Цитата(foxghost @ Feb 7 2012, 17:10) *
попробовал вот концовка

...
################### | 100% 0.31s
...
avrdude: 1 bytes of hfuse written
...

Поздравляю, вы теперь умеете прошивать программатор!
foxghost
спасибо большое, а собственно вчем был прикол стольких мучений?
И весь процесс программирования занял 15мин. это нормально?

Petka
Цитата(foxghost @ Feb 7 2012, 17:20) *
спасибо большое, а собственно вчем был прикол стольких мучений?

Атмел поменяла сигнатуру.
Цитата
И весь процесс программирования занял 15мин. это нормально?

Нормально.
ReAl
Цитата(Petka @ Feb 7 2012, 11:33) *
Atmel зачем-то изменила сигнатуру чипов Atmeg48pa. Была "0x1e 0x92 0x05"
А стала "0x1e 0x92 0x0A"

Я что-то пропустил?

doc8025A — документация версии А на ATmega48P(V)/88P(V)/168P(V)/328P(V)
Дата — июнь 2007 года.
Сигнатура у ATmega48P — 1E 92 0A

ATmega48PA унаследовала сигнатуру от ATmega48P(V), а не от ATmega48(V), у которой взяла сигнатуру ATmega48A

doc8161B - документация версии B (более ранняя не сохранилась) на ATmega48PA/88PA (ещё даже без 168PA)
январь 2009
Сигнатура ATmega48PA — 1E 92 0A
foxghost
Цитата(Petka @ Feb 7 2012, 17:22) *
Атмел поменяла сигнатуру.

Нормально.


К сожалению радость была не долгой, AVR не видит данный девайс.
Petka
Цитата(ReAl @ Feb 7 2012, 19:05) *
Я что-то пропустил?
Сигнатура ATmega48PA — 1E 92 0A

Речь про отличие версии ATmega48 от ATmega48P (и ATmega48PA)

Цитата(foxghost @ Feb 7 2012, 19:41) *
К сожалению радость была не долгой, AVR не видит данный девайс.

Что за AVR? Симптомы? Что хотите сделать? Что получается? Что не получается?
foxghost
AvrStudio 4.15 (4.19) выбираю tools>program avr>connect выбираю STK500 (порта все перепробывал) далее connect и в итоге ничего, выскакивает обратно окно select avr programmer (перемычку на плате переставил после самопрограммирования)
Petka
Цитата(foxghost @ Feb 8 2012, 11:41) *
AvrStudio 4.15 (4.19) выбираю tools>program avr>connect выбираю STK500 (порта все перепробывал) далее connect и в итоге ничего, выскакивает обратно окно select avr programmer (перемычку на плате переставил после самопрограммирования)

Светодиод на программаторе горит?
foxghost
при подключении светодиод моргает как положено, при обращении avrstudio нет не горит
Petka
Цитата(foxghost @ Feb 8 2012, 12:09) *
при подключении светодиод моргает как положено, при обращении avrstudio нет не горит

Подключите программатор к программируемому чипу.
Убедитесь, что светодиод на программаторе горит непрерывно.
Только после этого повторите попытку подключиться к программатору из AVRStudio.
кт315
Цитата(foxghost @ Feb 8 2012, 10:41) *
AvrStudio 4.15 (4.19) выбираю tools>program avr>connect выбираю STK500 (порта все перепробывал) далее connect и в итоге ничего, выскакивает обратно окно select avr programmer (перемычку на плате переставил после самопрограммирования)

Зачем все порта пробывать? Запустите диспечер устройств, разверните папку Ports и подключите программатор. У вас добавится строка USB Serial port(в скобачках номер порта). Вот его в студии и выбирайте.
SanderSae
Кому интересно. Таблица выбора кварца, расчитанной из формулы:

Err(%) = ( Fкв / (16*Bod*(UBRR+1)) - 1 ) * 100%

| Err | < 0.5% - рекомедованная атмелом максимальная ошибка при которой гарантируется качество передачи.

Решив два уравнения получаем ( при Bod = 115200 ):

Fкв[MHz] > 1,83398 ( UBBR + 1 )
Fкв[MHz] < 1,85242 ( UBBR + 1 )

UBBR = 4
Fкв = 9,1699 ... 9,2621 MHz (Err=0 при Fкв = 9,216)

UBBR = 5
Fкв = 11,00388 ... 11,11452 MHz (Err=0 при Fкв = 11,0592 MHz)

UBBR = 6
Fкв = 12,83786 ... 12,96694 MHz (Err=0 при Fкв = 12,9024 MHz)

UBBR = 7
Fкв = 14,67184 ... 14,81936 MHz (Err=0 при Fкв = 14,7456 MHz)

UBBR = 8
Fкв = 16,50582 ... 16,67178 MHz (Err=0 при Fкв = 16,5888 MHz)

UBBR = 9
Fкв = 18,3398 ... 18,5242 MHz (Err=0 при Fкв = 18,4320 MHz)

P.S. Если найдете ошибки, ПРОШУ поправить.
ae_
Цитата(SanderSae @ Feb 13 2012, 17:17) *
Кому интересно. Таблица выбора кварца, расчитанной из формулы:...
Решив два уравнения получаем...
P.S. Если найдете ошибки, ПРОШУ поправить.

Частота UART прямо пропорциональна частоте кварца, зачем всё усложнять?
Возьмите точную частоту, например 11.0592 и желаемый допуск, например 0.5%.
Получаем 11.0592 * 0.995…1.005 = 11.003904…11.114496
SanderSae
Цитата(ae_ @ Feb 14 2012, 08:15) *
Частота UART прямо пропорциональна частоте кварца, зачем всё усложнять?
Возьмите точную частоту, например 11.0592 и желаемый допуск, например 0.5%.
Получаем 11.0592 * 0.995…1.005 = 11.003904…11.114496


Спасибо. Так конечно проще, но:
1. Надо было составить список точных частот (кратность зависит от параметров делителя);
2. Если в мануале есть готовая формула, почему бы не воспользоваться.

Кстати, я поставил сначала 16МГц - были ошибки передачи. Когда подсчитал, выбрал из кучи старых кварцев
наиболее подходящий, пересобрал проект и все заработало.

zheka
Кстати, может я отстал от жизни со своим открытием, но понадобилось недавно собрать еще один программатор, скачал последние дравйвера - программатор прошился не за полтора часа, как раньше, а за 15 минут.
foxghost
Цитата(Petka @ Feb 8 2012, 12:19) *
Подключите программатор к программируемому чипу.
Убедитесь, что светодиод на программаторе горит непрерывно.
Только после этого повторите попытку подключиться к программатору из AVRStudio.

Подключил (вместе с Atmega ) светодиод проморгал -> загорелся непрерывно -> при попытке обращения к МК ошибка.
Petka
Цитата(foxghost @ Feb 17 2012, 20:09) *
Подключил (вместе с Atmega ) светодиод проморгал -> загорелся непрерывно -> при попытке обращения к МК ошибка.

Какой микроконтроллер программируете?
foxghost
Цитата(Petka @ Feb 20 2012, 16:19) *
Какой микроконтроллер программируете?


Данная картинка появляется из той серии ATmega48PA на которой вы помогли запрограмирровать сам программатор, на Atmega8 вроде ничего подбоного не происходит.
Petka
Цитата(foxghost @ Feb 20 2012, 19:24) *
Данная картинка появляется из той серии ATmega48PA на которой вы помогли запрограмирровать сам программатор, на Atmega8 вроде ничего подбоного не происходит.

Если успели запрограммировать фузы, то эта мега тактируется от внешного кваца. Если кварц не подключен, то мега программироваться не будет. В этом случае подайте ей на XTAL1 частоту с генератора. (как подать я где-то выше уже писал Вам).
james77
Здравствуйте, Petka!
Перечитал весь топик, но решения своей проблемы не нашел.
Собрал Ваш программатор по схеме из вложений в первый топик первой части темы (ATmega8A+FT232RL, кварц 14,7456 МГц). Запрграммировал при помощи PonyProg. Установил фьюзы. Переставил перемычку в обычный режим. Зашел терминалом в программатор, отклик есть, все как по мануалу. НО!!! При подключении программатора к USB светодиод моргает быстро раза три-четыре, а затем хаотично в полсилы помаргивает. При подключении таргета светодиод горит постоянно. AVRStudio (ни 4-я ни 5-я) и CodeVision программатор не видят. Монтаж проверил, соплей КЗ нет (по крайней мере я не нашел), В чем может быть проблема?

Прилагаю свою печатную плату (я добавил светодиоды на Rx и Tx FT232RL и джампер для переключения режима самопрограммирования).
Petka
Цитата(james77 @ Feb 21 2012, 02:34) *
...НО!!! При подключении программатора к USB светодиод моргает быстро раза три-четыре, а затем хаотично в полсилы помаргивает.
...

Что с питанием? Для теста закоротите входную катушку "L1".
james77
Цитата(Petka @ Feb 21 2012, 06:25) *
Что с питанием? Для теста закоротите входную катушку "L1".


Питание стабильное, 5,03 В.
Была мысль, что срывается генерация кварца, но тогда в терминале был бы мусор, так ведь?
Главное, что меня смущает, это то, почему в терминале отзывается, а студия напрочь отказывается видеть.
Petka
Цитата(james77 @ Feb 21 2012, 10:40) *
Питание стабильное, 5,03 В.
Была мысль, что срывается генерация кварца, но тогда в терминале был бы мусор, так ведь?
Главное, что меня смущает, это то, почему в терминале отзывается, а студия напрочь отказывается видеть.

Для более точной диагностики попробуйте программу-программатор avrdude.
С строку запуска добавьте "-v -v" для вывода максимальной диагностики.
alex_zhuravlyov
у меня такое тоже было, все работало а студия не видела программатор, потом в окне выбора программатора поставил не какой-то конкретный компорт, а auto и студия сама нашла программатор, причем такое было только на win7, на хрюше все работало.
james77
Добрался до осциллогорафа. В режиме генерации "1 МГц" выдает на 23-й ноге меандр частотой 145 КГц. Т.е. я так понимаю проц прошился нормально, тактирование работает нормально. Где же тогда копать?
Я так понимаю хаотичного моргания светодиода не должно быть?

Цитата(Petka @ Feb 21 2012, 09:07) *
Для более точной диагностики попробуйте программу-программатор avrdude.
С строку запуска добавьте "-v -v" для вывода максимальной диагностики.


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

Цитата
у меня такое тоже было, все работало а студия не видела программатор, потом в окне выбора программатора поставил не какой-то конкретный компорт, а auto и студия сама нашла программатор, причем такое было только на win7, на хрюше все работало.


Пробовал и auto тоже, не помогает. Я работаю в ХР.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.