Перейти к содержанию

Вопросы от начинающих по МК


Рекомендуемые сообщения

Доброго времени суток,

Прошу подсказать советом (практически уверен, что вопрос идиотский), но я никак не могу перегнать/создать нормальный проект, дабы в итоге получить прошивку к ATtiny2313. Мои вопросы в следующем:

1.какие программы я должен использовать, при условии, что программатор - USBASP, отладчик - atmel avr dip programmer.

2. Языки, которыми я пользуюсь/пытаюсь пользоваться - ассемблер и С++.

ПыСы. Мучаюсь уже который день с простейшей проблемой - создать проект и описать только цифровые входа/выхода со смыслом дал сигнал на вход - получил сигнал на соответствующем выходе... :unknw:

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

  • Ответов
  • Создана
  • Последний ответ

Топ авторов темы

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Alexeyslav,

#include <avr/io.h>
#include <util/delay.h>
#include <avr/interrupt.h>
#define F_CPU 8000000
#define nop asm ("PUSH R0":;asm ("POP R0":
volatile int y = 0;z = 0;i = 0;A = 0x7A;l = 0;F = 0;
int MAS[] = {0xFC,0xDA,0x10,0x10,0x10,0xEE,0xCE,0x1C,0x9E,0x3A,0x10,0x10};//
void ispout(y){...}

ISR(ADC_vect)
{
MAS[0] = ADCL;
MAS[1] =  ADCL > 128? (MAS[1] = 0x6E) : (MAS[1] = 0x1C);
}
ISR(TIMER0_OVF_vect)
{
ispout(4);
nop;
MAS[2] = 0x1E;
ispout(4);
ADCSRA |= (1<<ADIF);
TIFR |= (1<<TOV0);
}
int main(void)
{
DDRB = 0xFF;
PORTB = 0x00;
DDRD = (1<<DDD5);
PORTD = (1<<PD5);

ADCSRA = 0b10101111;
ADMUX = 0b11000111;
_delay_ms(50);
sei();
TCNT0 = 0;
TIMSK |= (1<<TOIE0);
TCCR0 |= (1<<CS02)|(0<<CS01)|(1<<CS00);
ADCSRA |= (1<<ADSC);
while(1)
{
cli();
MAS[2] = 0x8E;
_delay_ms(10);
sei();
}
}

прерывание от ацп возникает только один раз и в регистре всегда 1 , хотя настроено вроде на непрерывную работу

помогите пожалуйста куском кода на с, голова уже не варит совсем, где то читал что на работу может влиять компаратор и его надо выключать?

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

ДОбрый день.. подскажите в чем может быть беда.. JDM программатор. pic16f84а шил шил шил все работало. А тут вставил и все при чтении 0000, защиту не ставил. Стер, перезаписал прогу при записи и проверке и при чтении ошибка h000. В сумме около 20 перезаписей.

В настройках ничего не менял. Неужели мк "закончился"?

Ссылка на комментарий
Поделиться на другие сайты

А стирается нормально ? Что показывает чтение после стирания ?

Стирается нормально.

После стирания показывает все нули..

Изменено пользователем Инженер!Туленков
Ссылка на комментарий
Поделиться на другие сайты

Скорей программатор кончился. Проверь программатор.

помогите пожалуйста куском кода на с
Меня тошнит от С из-за его нечитабельности. То что вы понаписали в программе не имеет ни одного шанса на быструю проверку, следовательно никто этим заморачиваться не будет.

Общий принцип - настроить АЦП через ADCSRA (у вас о в программе зачем-то два раза перезаписывается без видимых причин что неймоверно путает... какое из значений правильное?)

Стартовать преобразование и ждать его завершения. Только потом считать ADCL и ADCH.

Ну и читать даташит на контроллер, стараться писать программу структурно, чтобы было понятно что где происходит.

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

всем здрасте)хочу научиться работать с микроконтроллерами и не знаю какой программатор выбрать чтоб под usb был подскажите какую нибудь простенькую схемку программатора желательно в dip корпусах буду благодарен)и с какого контроллера можно начать собирать простенькие схемки?

МК...я снова иду к тебе...

Ссылка на комментарий
Поделиться на другие сайты

Меня тошнит от С из-за его нечитабельности...

Хорошая шутка ...

#define nop asm ("PUSH R0":;asm ("POP R0":

Вы можете объяснить что ЭТО, и нафига ЭТО вообще совать в обработчик?..

Изменено пользователем Goodefine

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

с ATMEGA8535 начинай - и выводов много и DIP корпус присутствует. если нет - можно ATMEGA8 брать, выводов поменьше.

Программатор лучше купить чем собирать, под USB ты всеравно не соберешь с наскока, скорей всего чтобы его собрать надо будет микросхему прошивать - классическая проблема курицы и яйца. На ибее можно взять достаточно недорогой USB-ASP.

Хорошая шутка ...
Может где-то и существует читабельная программа на С но я таких не встречал. Все почему-то стремятся втулить в одну строчку массу символов которую фиг с наскока разберешь. Паскаль мне больше нравится, более человечный.

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

http://chipmk.ru/ind...r-asm&Itemid=69

http://chipmk.ru/ind...r-asm&Itemid=69

Учитесь пользоваться гуглом.

И программатору абсолютно все равно на чем у вас написана программа, ему главное "кекс" (HEX) подавай.

вроде ставил, правда 4ю версию.

Сейчас переустановолю и попробую снова, Спасибо!

Ссылка на комментарий
Поделиться на другие сайты

Все почему-то стремятся втулить в одну строчку массу символов которую фиг с наскока разберешь...

Вы считаете что это Си виноват?

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

http://avrdevices.ru...mator-dlya-avr/ а что насчёт этого программатора он вроде не сложный? и если уж покупать то какой посоветуете не дорогой? Изменено пользователем RaDiokot

МК...я снова иду к тебе...

Ссылка на комментарий
Поделиться на другие сайты

Может он и не сложный, но проблема курицы и яйца - чтобы его собрать нужен другой программатор. Либо брать уже прошитую под него микросхему, по цене раз в 10 больше. вот вроде такого только подешевле найти.

Вы считаете что это Си виноват?
Меня больше волнует не количество символов, а тот факт что наличие или отсутствие всего одного неприметного символа или его позиция в выражении может изменить смысл до противоположного. а когда этих символов набирается в выражении больше 5-6 это уже становится невыносимым. такое ощущение что язык это поощряет, хотя виноваты в этом конечно же люди которые злоупотребляют этой возможностью. Дай им волю, так наверно и все программы писались бы в одну строчку. Изменено пользователем Alexeyslav

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

Любые у которых есть возможность внутрисхемного программирования. т.е. выводы RESET-MOSI-MISO-SCK в линейке атмеловских помоему есть 1 или 2 контроллера которые программируются только через JTAG...

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

есть извесная платформа arduino в тчём её отличие от тойже меги?

Arduino это как отладочная плата для работы с мк (ну как я понимаю), почитайте на сайте http://www.arduino.ru/Hardware , там эти платформы почти все на atmega построены

Ссылка на комментарий
Поделиться на другие сайты

всё ясно)вот я щас думаю http://habrahabr.ru/post/128939/ вот насчёт этого варианта а запрограмировать управляющюю мегу через lpt при желании можно)как вам эта схемка?наткнулся на ещё одну не менее интересную http://avrdevices.ru/usb-programmator-dlya-avr/ тут вроде уже не яйцо курица..

Изменено пользователем RaDiokot

МК...я снова иду к тебе...

Ссылка на комментарий
Поделиться на другие сайты

Arduino - это не какой-то контроллер, а подход к конструированию устройств - это универсальные платы и всевозможные дополнения к ним, это специальная среда программирования и т.д. и т.п. построено это все на контроллерах серии ATMEGA.

Платка под "ардуино" без её родной среды программирования - это никак не иначе обычная отладочная платка с микроконтроллером, порой просто коммутационная панелька под контроллер чтобы не паять его. Вся суть ардуино находится в софте - в загрузчике вшитом в микроконтроллер и среде программирования, что позволяет обойтись без программатора.

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

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

тут вроде уже не яйцо курица
Именно она самая, програматор сделан на контроллере который без прошивки его самого не заработает.

А первая схема... она сделана на программной обработке USB - чуть что не так, отваливается. и опять же контроллер надо где-то прошить. Проще купить, найти толкьо подешевле - никаких проблем не будет ни с прошивкой ни возможных косяков со сборкой.

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

так там же написано что шьётся через прогу просто подключением к usb вроде прога FLIP называется..она же реализованна на AT90USB162

Изменено пользователем RaDiokot

МК...я снова иду к тебе...

Ссылка на комментарий
Поделиться на другие сайты

так там же написано что шьётся через прогу просто подключением к usb вроде прога FLIP называется..она же реализованна на AT90USB162

Я сам начинающий, но как мое мнение: если есть лпт - соберите программатор 5 проводков, говорят что он 100% работает, а если нету то закажите себе готовый на и-бэе а то намучаетесь вы с этими прошивками программаторов. Я вот в соседнем городе нашел avrusb в переводе на русские рубли - 200р, на днях должен придти, буду пытаться прошивать attiny2313 :)

Ссылка на комментарий
Поделиться на другие сайты

Хм, может быть и так. Если мега не с затертым бутлоадером

LPT чем плох - сгорает довольно быстро от манипуляций с ним "наживо", требует плясок с бубном для работы на виндовс ХР, 7-ке и выше.

Изменено пользователем Alexeyslav

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • Все предложенные к рассмотрению источники питания работают примерно по одному принципу: сетевое напряжение выпрямляется, фильтруется (получаем чуть больше 300 вольт постоянного), затем преобразуется снова в переменное, но уже на частотах в несколько десятков килогерц, понижается на трансформаторе и снова выпрямляется. За счёт высокой частоты преобразования используется трансформатор на ферритовом, а не на стальном, сердечнике, гораздо меньших габаритов и стоимости. Минусы: значительное усложнение схемы блока и вероятность возникновения различных помех от него. Модули управления (кроме первого) также являются импульными преобразователями, с теми же достоинствами и недостатками. Если нужно по быстрому собрать некое подобие ЛБП, то уж лучше брать модуль вроде этого. Ну и блок питания к нему соответствующий. Но не очень понятно, какой практический опыт можно получить от соединения готовых модулей парой проводов.  
    • У меня больше всего вопросов вызвала необычная схема обеспечения отрицательного питания. Автор этой обстоятельной заметки пишет: For this supply to work correctly, the transformer must have a secondary voltage of at least 18V RMS.  Почему? Что будет не так с отрицательным питанием, если напряжение на трансформаторе будет меньше 18В?   https://tinyurl.com/23mlwxtt - я в простейшей эмуляции ставлю 12В пикового напряжения для трансформатора и на стабилитроне все как положено: -5.6В.
    • Согласен, очень криво объяснил. Это работа трёх вольтовой линии, просто на диод шотки сдвоенный, на один анод приходит сигнал напрямую с трансформатора, а на второй через дроссель. Вольт/деление 5 вольт в клетке, тайминг по моему 10 МС. Третья фотография это сигнал на катодах уровень земли ровно по центру экрана. Но все линии по итогу в порядке 3.3 в, 5, в, 12 в и -12 в. Нагрузить все линии не могу сразу ,так как тут же выгорают транзисторы (имеется нагрузка 250 ватт по 10 ампер на каждую линию за исключением-12в), поэтому нагружаю 3.3 вольтовую линию на 10 ампер,  подключаю переменный резистор 50 ватт на 15 ом на 5 вольтовую линию и постепенно довожу до той той картины с перекосом (это гдето  50 ватт общее). По поводу микросхемы, вверху имеется скрин где между импульсами проскакивает мини импульс, если так можно сказать, он проскакивает и на одной  и на второй ноге (7,8). Микросхема не tl 494, а lw4933/abx942.1/c9421646. Далее они приходят на базы транзисторов 945g  коллекторы этих транзисторов соединены с  выводами трансформатора. Просто схема типовая, легче мне кажется просто привести фото самого блока, для тех кто разбирается будет гораздо информативне.  Диод шотки по 12 вольтовой линии был подгоревший, заменил на донора. Приводить скрины не буду что бы не захламлять тему. В итоге, пока все так же, при достижении определенной нагрузки суммарно где-то 50 ватт, появляется этот "выброс и перекос". По этому имеются мысли на два варианта, это микросхема , этот мини импульс между периодами, на низкой нагрузке особо не влияет, но при достижении определенной приводит с самовозбуждению входной цепи и непроизвольному открытию транзистора нижнего плеча. Либо дело в "горячей части", плавающий дефект в обвязке силовых ключей.  Спасибо за ответ.
    • @Gomerchik а вы контролировали как меняется уровень сигнала на А1 ардуины?
    • Спасибо за совет. Автором данного проекта я не являюсь, мне нужно было воссоздать уличный датчик для метеостанции взамен пропавшего(( Из разного найденного в интернете этот проект работает с моей станцией Орегон (спасибо автору). В понедельник попробую последовать Вашему совету. Но все равно куча непоняток  как блин это работает)) Если дело в неправильной отправки команды, то как на это влияет подключение датчика температуры? Если совсем не подключать таймер, то передача идет один раз (как и прописано в программе), станция принимает и отображает, но минут через сколько-то естественно станция уже ни чего не показывает, но с таймером питание полностью не пропадает с ардуинки, но передача сигнала каким-то образом работает по таймеру.  В моем понимании данная команда подается один раз потому, что таймер должен отключать питание МК после передачи сигнала и каждые 43 сек снова подавать питание (так того требует станция).  Ардуино передает показания температуры отключается полностью и 43 секунды мк не работает.  Сейчас у меня питание пока сделано на подпитке от солнечной батареи, но пару пасмурных дней и аккумулятор съедается до отключения(
    • thickman Так и сделаю. Вытащу из бу БП.  Буду знать, как отличить. Благодарю. Заменил транзисторы на IRFB20N50K. Картина стала, совсем другой.  Похоже трудность не в драйвере, на момент подвозбуда, переходные процессы, в нем, завершены. Увеличил затворные резисторы до 50ом, стало немного лучше.  Не понятно, почему верхний ключ греется несколько сильнее. Возможно, стоит посмотреть ток в коллекторе.  Снабберные емкости временно удалил, изменений не произошло.  Замена ТГР на другой, на кольце MSTN-16A-TH, так же, результата не принесла.   irfb20n50k.pdf
  • Похожий контент

×
×
  • Создать...