Inquirer писал(а):Нет-нет. Если вЫходной сигнал будет 0-3,3В , то его надо будет масштабировать на 0-5В . Я тут боюсь точность потерять.
Опять непонятно. Что значит "масштабировать"? Если нужно усилить выходной сигнал - ставим операционный усилитель и все. На 20 кГц любой ОУ потянет.
У меня пока нету понятия "усилитель". Я программист. Если мне надо 0-3,3 отобразить на 0-5 , я использую коэффициент и умножаю. Так вот, я опасаюсь, что некоторые из нужных мне значений попадут в промежутки между такими умноженными результатами.
stas00n писал(а):Так бутлоадер как минимум надо будет сперва прошить программатором, так что без последнего никак обойтись не удастся. Предусмотрите в схеме разъем внутрисхемного программирования и обновляйте прошивку программатором сколько влезет. Простейший программатор ("5 проводков") для AVR делается за час, для PIC - за полдня.
Ну, один-то раз я могу сходить к знакомому и записать бутлоадер, а вот конфисковывать у него программатор - это ой. Но если простейший программатор для AVR за час делается, то стоит его сделать
stas00n писал(а):Если в знаменателе переменная, без деления, увы, никак. А вот использовать плавающую запятую в Вашей задаче я бы не стал, хватит и целочисленной арифметики (или с фиксированной запятой, которая суть та же целочисленная, т.к. запятая "в уме"). У Вас входные данные будут максимум 10-битные, так что 16-битных операндов хватит за глаза и за уши; для произведения 16х16 понадобится 32 бита, перед следующим умножением надо будет просто урезать результат предыдущего до 16 бит.
Частоту я могу ставить только соответствующую поставленному в схеме кварцу или любую (учитывая что мой программатор сам clk не выдает)?
Ещё такой вопрос. На mega8535 тоже автоматически сброс происходит при подаче питания?
Просто первое подозрение, понятно, на ресет, поэтому и спрашиваю.
Если посмотреть в даташите на мегу, тот там в зависимости от корпуса есть прямой ресет и инверсный. А в документации на аналог про это ничего не сказано.
Обозначен ресет по их документации так: RESET#. Это прямой или инверсный, кто-нибудь знает?
Ещё раз благодарю за внимание.
I know what you're thinking. "Did he fire six shots or only five?"...
...you've got to ask yourself one question: "Do I feel lucky?" Well, do ya, punk?
warrior2031 писал(а):Если посмотреть в даташите на мегу, тот там в зависимости от корпуса есть прямой ресет и инверсный.
Вроде во всех АВР-ках ресет происходит при низком уровне, не зависимо от типа корпуса, у аналога должно быть также. Кстати его надо к +питания подтянуть...
warrior2031 писал(а):Частоту я могу ставить только соответствующую поставленному в схеме кварцу или любую (учитывая что мой программатор сам clk не выдает)?
Не выше частоты тактирования контроллера. Иногда приходится дополнительно занижать, например, если длинные провода - плохие фронты, земля не очень. Тогда нужен запас некоторый.
Для тех, у которых есть фьюз CKDIV8, при прошитом фьюзе частота тактирования равна кварц/8, это нужно учитывать.
Кстати, подробнее о synchronisation lost тут
warrior2031 писал(а):Ещё такой вопрос. На mega8535 тоже автоматически сброс происходит при подаче питания?
Просто первое подозрение, понятно, на ресет, поэтому и спрашиваю.
...
Обозначен ресет по их документации так: RESET#. Это прямой или инверсный, кто-нибудь знает?
# в конце принято ставить для инверсных сигналов. У всех AVR сброс нулём.
Если бы были проблемы с линией сброса, контроллер не распознавался бы вообще. А так он распознаётся и сигнатура считывается правильная.
Лень в виде мании величия: «ты гений, зачем стараться?». В виде комплекса: «всё равно не выйдет, зачем упираться?». Как логика: «если достаточно, зачем знать и уметь больше?». Цель одна: остановить. Не любит тепло работающих мышц и шум работающего мозга.
Хотел бы поинтерефсоваться у знатоков Atmega8 - формат регистра ВВ SFIOR - сколько там незаразервированных/зарезервированных битов - как они читаются и какими устанавливаются их значения после включения питания.
Не умеешь - не берись, но не взявшись не научишься...
To Stalker46
Старших 4 бита не используются и всегда 0. А остальные при сбросе тоже будут 0. Если хотите конкретнее, уточните для чего Вам надо этот регистр: для компаратора или сброса таймеров?
Спасибо, что откликнулись:)
Мне нужен бит PUD, но т.к. я инициализирую SFIOR регистром R16, вот поэтому и спрашивал - каково начальное состояние битов.
Просто если изначально бит был 1, то я его сброшу записью в него 0, при этом установив бит PUD в 1.
Спасибо!!!
Не умеешь - не берись, но не взявшись не научишься...
Stalker46, в таких случаях сначала считывают байт(регистр), изменяют его в нужном месте не изменяя остальное, а потом записывают обратно.
например установить биты так:
Можете пояснить, плиз, что означает такая запись: (1<<BIT1)|(1<<BIT5) ?
Например, вот в такой строчке: sbr tmp,(1<<BIT1)|(1<<BIT5)
Я правильно понимаю, что константы BIT1 и BIT5 сдвигаются на 1 разряд влево (в сторону старшего бита), с полученными числами выполняется функция ИЛИ, и затем это число записывается в регистр tmp?
Неоднократно в даташитах такое встречал, но сам в программах не использовал.
Фак, кот грызёт провод! Сейчас его ударит либо током, либо тапком! ))
Гефестион писал(а):Я правильно понимаю, что константы BIT1 и BIT5 сдвигаются на 1 разряд влево (в сторону старшего бита), с полученными числами выполняется функция ИЛИ, и затем это число записывается в регистр tmp?
да
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Гефестион, НЕТ! сдвигается единица (1) " sbr tmp,(1<<BIT1)|(1<<BIT5) " такое кол-во раз, чему равна константа (в примере BIT1 и BIT5)
если напишите (5<<2), получите число 0b00000101 сдвинутое на 2 разряда влево, а именно 0b00010100
а в остальном нет отличий от Вашего варианта.
Inquirer программатор "5 проводков" делается за час максимум с учетом отсутствия у Вас опыта; кто держал в руках паяльник, управится минут за 15.
Разрываете вдоль шлейф для старого HDD, чтобы было 10 проводов, накалываете на розетку IDC-10, другую сторону припаять к DB-25 розетке по схеме, - все, программатор готов
stas00n писал(а):Разрываете вдоль шлейф для старого HDD, чтобы было 10 проводов, накалываете на розетку IDC-10, другую сторону припаять к DB-25 розетке по схеме, - все, программатор готов
А почему на XS2 VCC и XTAL1 в воздухе висят? На эти пины ничего не подсоединять или на них подавать с других источников сигнал? Ну VCC-то понятно - питание. Либо от батарейки, либо если внутрисхемно, то от источника питания устройства. А что за XTAL1, зачем он вообще указан на схеме, если не подключен?
Ножка VCC используется для питания буфера 74HC244 в программаторе STK200, в "5 проводках" буфер выкинут, все соединено напрямую, поэтому питание ему не нужно. Ножки LED и XTAL тоже не используются, просто подписаны так же как на стандартном ISP разъеме.
stas00n писал(а):Ножка VCC используется для питания буфера 74HC244 в программаторе STK200, в "5 проводках" буфер выкинут, все соединено напрямую, поэтому питание ему не нужно. Ножки LED и XTAL тоже не используются, просто подписаны так же как на стандартном ISP разъеме.
Замечательно А какая программа может через такой "программатор" прошивать авр-ы?
PonyProg. Можно прямо из CodeVisionAVR, я, правда, не пробовал, но по идее должно работать. Теоретически, все программы, которые работают с STK200, могут работать и с этим, т.к. логически они идентичны, просто в настоящем STK200 сингальные линии буферизованы для улучшения фронтов и для защиты.
Здравствуйте. Собрал я программатор Гололобова Вот по этой схеме. Использую с атмегой 16А через настоящий Com-port. питание на мегу подаю с USB. Проверял все подключения 100 раз. Но Uniprof упорно не хочет видеть МК, avrdude с подправленным конфигом (по ссылке выше) тоже. исползовал провод 40см, и втыкал напрямую в Com порт - все одно. Так по сабжу, в чем может быть проблема?
Народ - а чего это слухи ходили, что в Attiny2313 частота внутреннего RC генератора 1МГц???
Ведь смотрю евстифеева -
таблица -
Внутренний калиброванный RC-генератор:
(режим по умолчанию)
Частота внутреннего RC генератора по умолчанию:
8МГц.
Не понял??
Не умеешь - не берись, но не взявшись не научишься...
2 enq: величина сигналов на порте обычно составляет ±12В, а логического уровня для стационарника маловато, тем более лог "0" в МК это +0 до, примерно, +0,5В, а в СОМ - от -3 до -25. Если хочете просто соберите вот это