Jump to content

    
Sign in to follow this  
Petka

AvrUsb500 by Petka. продолжение

Recommended Posts

Давайте разберемся, у вас стоит делитель из 220к и 100к так? при входном напряжении в идеале 5В на выходе делителя будет 1.5625В так? и тогда вопрос как у вас ацп может намерять больше двух вольт?

кроме того ацп атмеги не будет адекватно работать с такими номиналами резисторов, почитайте даташит, не больше 10к, да и вообще зачем там нужен делитель, почему нельзя просто измерять напряжение на нужной вам ножке без делителя просто через резистор например 10к?

Самое интересное, что Порог напряжения для target RST установлен 1 В, ибо прошивка от Леонида Ивановича, даже если скачет то все равно 1,41, но не загорается. Пробовал напрямую +5 В на вывод RST разъема программатора тот же эффект. Может и правда попробовать делитель 2кОм и 1кОм, вместо 220кОм и 100кОм?(хотя сомнительно, что дело в делителе)

Edited by amv2000

Share this post


Link to post
Share on other sites
Давайте разберемся, у вас стоит делитель из 220к и 100к так? при входном напряжении в идеале 5В на выходе делителя будет 1.5625В так? и тогда вопрос как у вас ацп может намерять больше двух вольт?

2 Вольта это ДО делителя. Делитель нужен что бы вписать 5 вольт в диапазон измерения АЦП (2,56В для Меги8 и 1,2 для Меги88).

кроме того ацп атмеги не будет адекватно работать с такими номиналами резисторов, почитайте даташит, не больше 10к, да и вообще зачем там нужен делитель, почему нельзя просто измерять напряжение на нужной вам ножке без делителя просто через резистор например 10к?

1. См. выше

2. Откуда вы взяли значение 10к? В даташите ничего подобного нет. И взяться неоткуда т.к. входное сопротивление АЦП минимум 55 МегаОм!

 

...

Может и правда попробовать делитель 2кОм и 1кОм, вместо 220кОм и 100кОм?(хотя сомнительно, что дело в делителе)

Номиналы делителей менять не надо. Если уменьшите номиналы, получится цепочка, которая будет тянуть вниз RESET номиналом 3кОм.

Share this post


Link to post
Share on other sites
2 Вольта это ДО делителя. Делитель нужен что бы вписать 5 вольт в диапазон измерения АЦП (2,56В для Меги8 и 1,2 для Меги88).

 

1. См. выше

2. Откуда вы взяли значение 10к? В даташите ничего подобного нет. И взяться неоткуда т.к. входное сопротивление АЦП минимум 55 МегаОм!

 

 

Номиналы делителей менять не надо. Если уменьшите номиналы, получится цепочка, которая будет тянуть вниз RESET номиналом 3кОм.

1. Ясно, но решение очень странное, почему не использовать внешнюю опору от 5В?

2. А причем здесь входное сопротивление 55Мегаом!? вы наверное не знаете как устроено ацп у атмеги, вам фраза из даташита на М88 The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less. ничего не говорит? остальные атмеги устроенны аналогично.

3. Чтобы ничего не тянуло вниз, используйте опору от 5ти вольт и измеряйте просто через резистор без делителя.

в вашем варианте с делителем 220к и 100к работать адекватно не будет никогда.

Share this post


Link to post
Share on other sites
1. Ясно, но решение очень странное, почему не использовать внешнюю опору от 5В?

2. А причем здесь входное сопротивление 55Мегаом!? вы наверное не знаете как устроено ацп у атмеги, вам фраза из даташита на М88 The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less. ничего не говорит? остальные атмеги устроенны аналогично.

3. Чтобы ничего не тянуло вниз, используйте опору от 5ти вольт и измеряйте просто через резистор без делителя.

в вашем варианте с делителем 220к и 100к работать адекватно не будет никогда.

1. Есть несколько допустимых решений. Это одно из них. Хотите - поправьте схему, топологию, прошивку. Выложите сюда и помогите новичкам с их вопросами. Вам скажут спасибо.

2. Фраза про оптимизацию мне прекрасно понятна. К случаю измерения постоянного уровня напряжения одним каналом АЦП эта фраза не имеет никакого отношения. Без переключения каналов АЦП схема выборки/хранения будет работать нормально.

3. Эти резисторы выполняют ещё и дополнительный функционал - подтягивают линию RESET со стороны программатора к земле и ограничивают ток через защитные диоды порта при подключении проргамматора к запитанному устройству и отсутствии подключения программатора к USB порту. Подтяжка к земле позволяет определять отсутствие подключения кабеля программатора к программируемому устройству. Таким образом подтяжка к земле вместе с токоограничивающим резистором образует делитель. Номинал верхнего плеча можно обсуждать, но он должен быть значительно больше типичной подтяжки RESET к питанию. Номинал 100кОм подходит под все эти требования.

 

Share this post


Link to post
Share on other sites
Собрал на DIP. Работает, но только в CVAVR и Studio4, а в Studio5 и 6 нет. Пишет "Unable to connect to tool STK500 (COM4). Что делать?

Да видимо варианта два: либо заливать прошивку от Леонида Ивановича, либо просить автора пофиксить прошивку...

Share this post


Link to post
Share on other sites
Да видимо варианта два: либо заливать прошивку от Леонида Ивановича, либо просить автора пофиксить прошивку...

Значит это не только у меня?

Share this post


Link to post
Share on other sites
Значит это не только у меня?

Нет не только у Вас, в этой ветке почитайте http://electronix.ru/forum/index.php?showt...8372&st=750

может, что полезное для себя найдете.

Share this post


Link to post
Share on other sites
Нет не только у Вас, в этой ветке почитайте http://electronix.ru/forum/index.php?showt...8372&st=750

может, что полезное для себя найдете.

Спасибо, нашел ответ для себя. Правда, пробовал версию Леонида Ивановича перекомпилировать на Атмегу88, все прекрасно работает. А после Вашего совета перекомпилировал версию от Petka на Атмеге88. Также все классно работает из под Студии5.

 

to Petka

Изменил в "unsigned char analog2v(unsigned int aval)" r/=67; на r/=65; так как в этом случае для 220к и 47к у меня точнее показывает volts.

Share this post


Link to post
Share on other sites

Здравствуйте. Хочу повторить данный программатор. Но слегка изменить печатку - под более крупные компоненты и ещё кое-что. Есть вопросы:

 

1. Хочу выход "1 MHz" вывести на общий разъём X7, но так, чтобы он оказался в конце гребёнки. Вопрос: представляет ли какую-нибудь сложность перенести его на ногу 32 (PD2)? Так будет проще развести. Т.к. в МК я новичок, то планирую сначала запустить схему с обычной прошивкой, а уже потом разбираться в исходниках. Пока интересно, есть ли какие-то сложности в таком переносе.

 

2. Годятся ли в качестве L1 катушки на колечках, которые часто встречаются на материнках (несколько витков толстой проволоки на небольшом кольце)? К сожалению, я не знаю, какая у них индуктивность и как её оценить.

 

3. Можно ли в качестве блокировочных использовать керамические конденсаторы на 1 мкФ (вместо 0.1 мкФ)? Просто надёргал со старой Нокии...

 

Share this post


Link to post
Share on other sites
Здравствуйте. Хочу повторить данный программатор. Но слегка изменить печатку - под более крупные компоненты и ещё кое-что. Есть вопросы:

1. Хочу выход "1 MHz" вывести на общий разъём X7, но так, чтобы он оказался в конце гребёнки. Вопрос: представляет ли какую-нибудь сложность перенести его на ногу 32 (PD2)? Так будет проще развести. Т.к. в МК я новичок, то планирую сначала запустить схему с обычной прошивкой, а уже потом разбираться в исходниках. Пока интересно, есть ли какие-то сложности в таком переносе.

Этот вывод можно перенести на любой другой GPIO.

2. Годятся ли в качестве L1 катушки на колечках, которые часто встречаются на материнках (несколько витков толстой проволоки на небольшом кольце)? К сожалению, я не знаю, какая у них индуктивность и как её оценить.

Годятся. Номинал индуктивности не критичен.

3. Можно ли в качестве блокировочных использовать керамические конденсаторы на 1 мкФ (вместо 0.1 мкФ)? Просто надёргал со старой Нокии...

Можно. Работать будет.

Share this post


Link to post
Share on other sites

Собрал я данный программатор. Скорость довольно-таки шустрая. :) Автору болагодарность!

Программер собрал на atmega8 с кварцем на 11,0592 МГц (кварц на 14,7456 МГц не нашёл :( ). Исходник соответственно подкорректировал на этот кварц (за основу взял AvrUSB500_by_Petka_HEX_SRC_v6_uni.zip). Проверил "чтение/запись/проверка" на mega8, mega32, can128, mega48v. Ниже прикрепил архив с исходником, прошивкой и схемой. FTDI-чип использовал только как преобразователь в UART (bitbang даже и не распаивал, а мегу8 прошивал с помощью avrdude и avr910). Светодиод висит на порте РВ2; "1МГц" - на РС0; контроль сброса - на РС4; SCK, MISO, MOSI - на РС1, РС2, РС5; сброс - на РС3.

171008.ZIP

Share this post


Link to post
Share on other sites

Добрый день.

Помогите пожалуйста советом.

Собрал этот девайс. Прошил успешно. Успешно поборол хаотичное помигивание светодиода.

Когда решился девайсом воспользоваться, при подключении к AVR Stodio5 пишет: "Unable to connect to tool STK500 (COM3)"

Перепрошил другой прошивкой от пользователя "Леонид Иванович" с сигнатурой STK500_2 Эффект тот же.

При этом микроконтроллер греется. И сильно - палец на нём не удержишь. Пи этом прошивается, моргает диоом как надо.

Вопросы:

1) От чего может быть? И, соответственно, что делать? По монтажу косяков пока не обнаружил (но поиски ещё не прекратил).

2) Просветите пожалуйста, где почитать о подключении этого девайса к терминалу, как с ним через терминал общаться (какие команды и т.д.), зачем и для чего.

Share this post


Link to post
Share on other sites
Перепрошил другой прошивкой от пользователя "Леонид Иванович" с сигнатурой STK500_2 Эффект тот же.

При этом микроконтроллер греется. И сильно - палец на нём не удержишь. Пи этом прошивается, моргает диоом как надо.

Если греется, то явно ошибка физическая на плате. Изменение прошивки вряд ли поможет. Возможно один из выходов на земле, а на нем программно выставляется 1.

О терминале написано здесь в первом сообщении.

Edited by andries5

Share this post


Link to post
Share on other sites
Если греется, то явно ошибка физическая на плате. Изменение прошивки вряд ли поможет. Возможно один из выходов на земле, а на нем программно выставляется 1.

О терминале написано здесь в первом сообщении.

 

Спсибо!

Именно так и получилось. TXDT на земле. Внешне нигде косяков и замыканий нет, а под SMD конденсатором дорожка на землю закорочена. Теперь не греется, в CodeVision программатор видится, шьёт. Диодики мигают. Ляпота :)))) Осталось только его с AVRStudio5 состыковать, а то пока не хотят общаться.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this