Микроконтроллеры PIC, AVR, TI, STM, ARM, роботы
Написание программ для микроконтроллеров, отладка. Делимся кодами и навыками. Ротоботехника.
Схемы на микроконтроллерах, AVR Atmel, PIC Microchip,
программаторы, программирование, прошивка. И пр.
В форуме 115 тем
-
Нажатие кнопки должно сопровождаться звуковым тиком.....
от Гость Vlad5- 0 ответов
- 2 тыс просмотра
Нажатие любой кнопки должно сопрвождаться зажиганием соответствующего светодиода и сопровождаться звуковым тиком. Состояние светодиодов сохранять во флэш память данных. Помогите написать программу на ассемблере испльзуя директиву в начале .include "8515def.inc"
-
- 2 ответа
- 3,8 тыс просмотров
Смотрите тему новую маю, "Программа на ассемблере"
-
Вольтметр на ATMega16A - где ошибка?
от Гость serg0- 7 ответов
- 5,6 тыс просмотров
Всем доброго дня! Собираю обычный ампер-вольтметр на ATMega16A (такая в магазине была). При простом измерении напряжения после рез. делителя очень сильно меняются показания - в 2-2,5 раза. АЦП должен быть намного точнее. Чтобы исключить ошибки в коде, последний упростил до невозможности. Сейчас он просто конвертирует АЦП-преобразование в 16-ричный вид и выводит его на ЖКИ. После Мега "засыпает", запуская очередное преобразование. Далее опять конвертирует и выводт. Все модули исключил, чтобы не ошибиться (оставил только LCD). Еще делал: менял частоту АЦП (сейчас стоит 250 кГц - на ней почему-то точнее всего), начал мерять напряжение в режиме ADC Noice R…
-
Как програмно вызвать прерывание RESET? 1 2
от Гость химик- 18 ответов
- 10,4 тыс просмотра
Добрый вечер. Нужно програмно в CVAVR для микроконтролера ATmega8 вызвать прерывание RESET. Прерывание будет выполняться при определенном условии в обработчике прерывания таймера 0.
-
willem prog и TMP47C443N-HK81
от Гость pashashulga- 11 ответов
- 9,5 тыс просмотров
Здравствуйте! Есть программатор willem prog и камень tmp47c837n можно ли этим программатором прошить данный МК? Знаю, что на офф. сайте willem prog есть сводная таблица по поддерживающим мк, но в списке нету tmp.
Последний ответ от if33, -
Помогите скомпилировать в CodeVisionAVR
от Гость ALViktor- 2 ответа
- 7,9 тыс просмотров
Здравствуйте. Не получается скомпилировать. Выдает ошибку Linker error: the program has no 'main' function Проект рабочий, взят отсюда _https://radiokot.ru/circuit/digital/measure/59/ 01.zip Нужно скомпилировать под индикатор 16 на 4 (16 символов на 4 строки) распиновку pin_kovir. В проекте все это есть. Проект на Atmega 8. У меня никак не получается, никогда этим не занимался. Помогите пожалуйста.
-
Светодиодный индикатор уровня с "залипанием" на AVR 1 2
от Гость audiokiller-
- Админ
- 22 ответа
- 15,5 тыс просмотра
Давно хотел получить такой индикатор, какие были в 80-е годы в японских магнитофонах. Там была куча сегментов и сегмент, соответствующий максимальному уровню, продолжал светиться некоторое время. Современные микросхемы управления светодиодами такого не позволяют - нет этого самого "залипания". Есть микросхема LB1412, но она а) с малым числом диодов; б) у нее не очень удобное соотвтетствие количества включенных светодиодов уровню сигнала; в) - самое главное - она запоминает не все уровни, а только старшие (типа помнит перегрузку), а это не то. Понятно, что на микроконтроллере такое сделать несложно. Вот только опыта у меня с ними мало... Нашел в сети устройства на PIC…
Последний ответ от FOLKSDOICH, -
-
Проблема с Atmega8A 1 2
от zud-
- Админ
- 18 ответов
- 16,6 тыс просмотров
Собрал конструкцию часов на Atmega8 с радиокота - всё прекрасно работает, подарил соседям. Собрал себе на Atmega8A (TQFP корпус) и тут странность - не "заводится". На ногах кварца - 0. Но если прогер соединён с процем, то при включении питания всё работает, но с мерцанием. В чём может быть проблема?
-
-
PIC прерывания
от Гость hsl- 0 ответов
- 4,2 тыс просмотра
Доброго времени суток всем! Продолжаю разбираться с MK PIC, делаю на С в MPLAB, МК PIC12F629, вопрос по прерываниям. Правильно ли я понимаю концепцию, процедура для прерывания одна и в ней уже определяем от чего произошло прерывание? Есть вот такая процедура прерывания таймера по переполнению void interrupt isr(void) if(TMR1IF) { TMR1IF =0; TMR1= 65537 - 1000 + TMR1; tmr1_modal(); ms++; if(ms>999) { ms=0; NOP(OUT=0); // 1 секунда } } } Правильно ли будет добавить в нее прерывание от внешнего сигнала вот так? void interrupt isr(void) { if(INTF) { INTF=0; imp++; sec=sec-100; } if(TMR1IF) { TMR1IF =0; TMR1= 65537 - 1000 + TMR1; tmr1_modal…
-
PIC биты конфигурации
от Гость hsl- 7 ответов
- 24,9 тыс просмотров
Доброго времени суток! Пытаюсь разобраться с программированием PIC, поставил MPLAB, с самой программой на С в принципе боле-менее понятно и мало чем отличается от того же С на АВР, а вот с битами конфигурации что то запутался, есть вот такое описание То, что биты указаны словами INTIO & UNPROTECT & и т.д. понятно, а вот построение этих слов никак в толк не возьму, и с тем что приведено в даташите как то не совсем вяжется, вот например "PWRTEN - включен таймер включения питания;", а как в таком случае будет выглядеть "выключен таймер включения питания"? Хотя этого я и не знаю, но принцип понятен, а вот с написанием "0x3FFC & 0x3FFF & 0x3F7F & 0x3FFF…
Последний ответ от if33, -
Показания АЦП ATmega16
от Гость Sommi- 3 ответа
- 4,5 тыс просмотра
Написал программу для АЦП для ATmega16 PORTA 0 АЦП. Подключаю землю выдаёт 0, подключаю питание 5013 милливольт(вроде все норм). Подключаю батарейки 1,5 - 3 В показывает одно и тоже 2,4 В. В чем может быть проблема?ъ Здесь скрытый текст. Кликни, чтобы увидеть! #include <mega16.h> #include <stdio.h> #include <delay.h> #define ADC_VREF_TYPE 0xC0 unsigned int result; unsigned int read_adc(unsigned char adc_input) { ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCS…
-
Купюроприёмник фирмы ICT модель А7 + ATmega8 1 2
от Гость alex_kmv- 12 ответов
- 11,5 тыс просмотров
Добрый вечер, хочу собрать одно устройство на базе купюрника, всё было хорошо, пока не дошло дело до написания и программирования МК. Есть купюрник ICT A7 работающий в пульсовом режиме, задача состоит в том, чтобы при подачи соответствующего количества импульса в МК включался таймер (на определённое время) и подавался сигнал на реле.
-
Электронный квартирный звонок 1 2
от Гость alnikr-
- Админ
- 17 ответов
- 11,7 тыс просмотров
Когда-то купил домой звонок на батарейках. Проработал звонок несколько дней и сдох. В этом китайском продукте я оставил только динамик и кейс под 3 пальчиковые батарейки. Вставил в коробку свою разработку. Вот её особенности: - не потребляет питания до нажатия кнопки звонка, отключается после проигрывания мелодии, работает на 1-м комплекте батарей почти 4 года; - простая схема для формирования пауз между звуками; - программирование мелодий доступно именно в музыкальном представлении, то есть запись d6,low(DO_1),high(DO_1) означает - 6 длительностей нота ДО 1-й октавы, 0 после музыкального фрагмента означает конец мелодии; - выбор мелодии производится количеством…
-
-
- 4 ответа
- 3,2 тыс просмотра
появилось время чуток для изученя программирования и необходим четырёхзоный термометр. По четвёртому уроку Владимира "Грызем микроконтроллеры" собрал схему, подцепил датчики, температуру показывают, но без десятых долей. Нашёл эти "десятые" доли, но точку их отделяющие найти не могу. Помогите, плизззз, тугому :smile:
Последний ответ от zud, -
В массив констант записать длинную последовательность 0хFF
от Гость serzh_5- 4 ответа
- 3,2 тыс просмотра
Зравствуйте. Создавая большие массивы чисел, для вывода изображения на дисплей, обнаружил интересную штуку. Если в массив констант записать длинную последовательность 0хFF, то МК прошивается, но не проходит верефикацию и в массиве в итоге оказаваются другие числа. Если же длинных последовательностей 0хFF нет, то верефикация проходит и числа в массиве те которые записывал. С чем это может быть сязано? Я пробывал прошивать AVRProg и CodeVisionAVR. Прогроматор AVR910 от PROTTOSS. Грешу на процес програмирования, может увидев длинную последовательность 0хFF програматор решает что это конец?
-
Аналоговый компаратор ATmega8
от Гость химик- 7 ответов
- 9,1 тыс просмотров
Добрый вечер. Помогите разобраться с этой приблудой. Суть: если на инвертирующем входе компаратора напряжение становится выше, срабатывет прерывание. Регистры вытавил так: ACSR=0b01001010; SFIOR=0b00001000; Вход 0 от внутреннего ИОН, вход 1 от ноги АЦП PORTC.0. Вроде бы все правильно, но в протэусе не работает. Может ли кто проверить правильность установки регистров? Здесь скриншот Протэуса и файлы CVAVR+Protteus 001.rar
-
PICkit2_lite
от Гость yarik007- 8 ответов
- 7,6 тыс просмотров
Вообщес собрал программатор PICkit2_lite . по той схеме и вот печатка к нему. Драва установились сразу , но когда зашел в программу выдает следующие The Pickit2 has no Operating system. use the Tools menu to download an os. Делал как по инструкции тоже самое и не как это ошибка не пропала. использовал транзисторы КТ3102А в железном корпусе, кт361 в, bs250, 1N5818 и кд 522. Зарание спс за помощь или совет. готовая_версия_pick2_2V_.rar
-
Динамическая индикация ATmega16
от Гость химик- 7 ответов
- 7 тыс просмотров
Доброго времени. Вот такая вот проблемка, слабо светятся сегменты, которые светиться не должны. На многих сайтах читал, что токоограничивающие резисторы не нужны, так-как при большой скорости переключения кристал не успевает сгореть. Кстати у меня время свечения каждого символа равно 1,2мсек. Если натыкать резисторов, яркость сильно изменится?
Последний ответ от teamoon, -
Выбираем универсальный программатор 1 2
от Гость yurkaf- 18 ответов
- 14,2 тыс просмотра
к Willem отношение двоякое, с одной стороны это простой программатор из доступных деталей, и в возможностях заявлено ого-го, но с другой ......в общем программы на Willem глючные все, нет ни одной которая 100% работоспособна...под каждый чип нужно выбирать, ну и привыкать соответственно, и всегда помнить что неправильно поставленными перемычками и выключателями Willem валит микросхемы памяти...то же при неудачно подобранной версии программы.. оправданным считаю случай когда нужно шить 27Сххх с ультрафиолетовым стиранием, эти шьет, при определенном навыке конечно и многое другое на троечку, .короче с ним как на минном поле... Для выбора программатора нужно для начала…
Последний ответ от bedjamen, -
Доброго времени суток. Не знаю будет ли интересна данная тема, но как говорится удалить не долго, вобщем вот, представляю: Цифровой индикатор топлива и напряжения, сделанный на микроконтроллере Atmega8 и дисплее от телефона Nokia 1110(i) в корпусе родного индикатора топлива ВАЗ2106 В приборе реализована настройка емкости бака, политровая калибровка, установка яркости подсветки, настройка инертности показаний, переключение инверсного или обычного режима. А это собственно схема Прошивка сюда по размеру уже не влезает, но если данный проект будет интересен, могу сделать подробное, в меру возможностей, описание на портале. И еще один момент, хоть идея дан…
-
включение внешних устройств с arduino
от Гость vorlok- 3 ответа
- 5 тыс просмотра
Свое знакомство с микроконтроллерами решил начать с arduino. Много где про него пишут. Заказал в dealexrtreme. Посылка уже на подходе. Меня интересует вот какой вопрос. Хочу использовать arduino в авто. У меня стоит eee pc 700 в место магнитолы. Хочу при помощи arduino включать ноутбук через 5 секунд после того как машина заведется ну и выключать через пару минут после того как вытащу ключ. Пытался найти в интернете похожие проекты по включению внешних устройств с arduino, но кроме использования реле ничего толком не нашел. Может кто поможет дельным советом, либо подскажет что искать?
-
Кто в онлайне 0 пользователей, 0 анонимных, 34 гостей (Посмотреть всех)
- Зарегистрированных пользователей в онлайне нет