Мелкие вопросы по МК и ПЛИС.

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ильнур
Родился
Сообщения: 1
Зарегистрирован: Вс фев 26, 2012 17:20:00

Микрочипы

Сообщение Ильнур »

Добрый день уважаемые форумчане!,у меня к вам такой ворос,все ли контроллеры (микрочипы) нужно программировать? простите за глупый вопрос если он таковымявляется.
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение pyzhman »

Не бывает глупых вопросов. Есть простые и сложные. В составе контроллера есть память. В нее заносится программа. Либо на предприятии-изготовителе, либо пользователем. Так что ответом на ваш вопрос является утверждение - все.
Docendo discimus
Chettuser

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Chettuser »

Добавлю что бывают одноразовые и многоразовые (с буквой F у MICROCHIP).
Однако существовали, не знаю как сейчас, МК которые программировались на заводе - это уже узкоспециализированные и выпускались ограниченной партией.
Так что вопрос вполне нормальный.
Аватара пользователя
Vergilium
Грызет канифоль
Сообщения: 260
Зарегистрирован: Ср фев 13, 2008 14:41:32
Откуда: Украина, Николаев

Re: Мелкие вопросы по цифровой технике.

Сообщение Vergilium »

Здраствуйте. Подскажите пожалуйста по такому вопросу. Есть мега8 и часики DS1307, пишу код в AVR Studio 5 и симулирую в PROTEUS 7.9. Так вот, дело в том что после запуска МК После инициализации портов и т.п. хочу выполнить запись в DS1307 настройку, в CONTROL регистр 0х10 (т.е. внешний такт 1Hz от ds1307), после чего делаю СТОП и сразу начинаю считывать с нулевой ячейки время. После чего время считывается каждую секунду. НО, настройку записывает, СТОП не выполняется, а данные начинают считыватся с последней ячейки т.е. 0х07 (Сontrol). Непойму в чем ошибка. :oops: Код ниже:

//---------- внешнюю генерацию на часах------------
twi_start_adress(DS1307_ID,TW_WRITE,TW_START);
twi_send_byte(CONTROL);
twi_send_byte(0x10);
STOP;
//---------- время----------------------------------------------
DS1307_GetTime();


void DS1307_GetTime(void)
{
//---------- времени и даты---------------------------
twi_start_adress(DS1307_ID,TW_WRITE,TW_START); //Не выполняется
twi_send_byte(0); //Не выполняется
twi_start_adress(DS1307_ID,TW_READ,TW_REP_START);
time[0] = twi_rec_byte(TWEA);
time[1] = twi_rec_byte(TWEA);
time[2] = twi_rec_byte(TWEA);
twi_rec_byte(TWEA);
time[3] = twi_rec_byte(TWEN);
STOP;
}
Вложения
1.png
(13.16 КБ) 318 скачиваний
Немного нервов и девайс готов
Аватара пользователя
канифоль
Встал на лапы
Сообщения: 110
Зарегистрирован: Сб янв 08, 2011 12:56:03
Откуда: Москва

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение канифоль »

собирал часики по этой статье http://kaligraf.narod.ru/kaligraf_narod_002.html с первого раза контроллер зашить правильно не удалось, пришлось стирать.. далее залил прошивку включаю часики показывают 9999. может я как то запорол контроллер? раньше имел дело с pic12f629 так там была константа из за нее у меня и не работал тогда девайс :)) а есть ли нечто подобное в этом мк?
Chettuser

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Chettuser »

Очередной телепатический модуль летит в мусорку... :idea:
С прошивкой что делали?
Аватара пользователя
Vergilium
Грызет канифоль
Сообщения: 260
Зарегистрирован: Ср фев 13, 2008 14:41:32
Откуда: Украина, Николаев

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Vergilium »

По поводу моего вопроса, никто ничего не посоветует? Может хотябы мыслей по этому поводу?
Немного нервов и девайс готов
MorskoyZmey
Родился
Сообщения: 13
Зарегистрирован: Ср фев 29, 2012 19:21:08

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение MorskoyZmey »

Поделитесь опытом, если не жалко^
Есть микросхемки памяти Atmel DataFlash с последовательным доступом по SPI, по типу AT45DB081D (8Mбит).
Валидно ли использовать такие, как хранилище звуковых файлов, если оные требуется воспроизводить по запросу без задержек?

Как мне показалось из ДШ, вроде как, перед чтением можно указывать страницу и смещение, т.е. ну практически RAM.
В чем же тут последовательность помимо того, что не нужно указывать адрес каждого блока и что интерфейс последовательный?

В чем я не прав? Оно дешевле всего остального в принципе. Меня волнует скорость и объем :))
Благодарю за внимание
Аватара пользователя
AI_Disable
Сверлит текстолит когтями
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб
Контактная информация:

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение AI_Disable »

MorskoyZmey, есть положительный опыт использования датафлэшь для хранения wav файлов. Из плюсов - действительно, нужно всего лишь указать начальный адрес и потом непрерывно читаешь. Весь код воспроизведения - около килобайта. Из минусов - неудобно заменять и закачивать в датафлэшь эти файлы. Пришлось писать отдельную прошивку и загонять через RS-232...
Но в целом свою цену оно оправдывает.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Arlleex »

Доброй ночи. Хотелось бы узнать, какова относительная погрешность у ИОН AVR8? Конкретно интересует Atmega8. В даташите не нашел, хотя, может быть потому, что плохо искал. Если кто знает - пожалуйста, напишите.
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение pyzhman »

Погрешность ИОН еще ладно. Там эту кривую еще выпрямлять надо. И подгонять. Все описано в даташите.
Docendo discimus
MorskoyZmey
Родился
Сообщения: 13
Зарегистрирован: Ср фев 29, 2012 19:21:08

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение MorskoyZmey »

AI_Disable писал(а):MorskoyZmey, есть положительный опыт использования датафлэшь для хранения wav файлов. Из плюсов - действительно, нужно всего лишь указать начальный адрес и потом непрерывно читаешь. Весь код воспроизведения - около килобайта. Из минусов - неудобно заменять и закачивать в датафлэшь эти файлы. Пришлось писать отдельную прошивку и загонять через RS-232...
Но в целом свою цену оно оправдывает.


Благодарю. Вдохновляет.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение ploop »

Хотелось бы узнать, какова относительная погрешность у ИОН AVR8?

Зависит от температуры. При чём сильно. Опыты проводили уже.
SmarTrunk
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение SmarTrunk »

Arlleex
Для АТмега8А есть график "BANDGAP VOLTAGE vs. VCC", где-то на стр. 276, там эти графики для трех температур -40, +25, +85С. А опорное напряжение получается из этого Bandgap Voltage
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Gudd-Head »

А то, что опора может быть от 2,3 до 2,9 В все молчат...
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
SmarTrunk
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение SmarTrunk »

Gudd-Head
Ну это да, читали, в даташитах. А что, и правда такой разброс, или перестраховываются, а реально все лучше? Сам не могу собрать статистику, по двум имеющимся у меня АТмега.
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Gudd-Head »

SmarTrunk писал(а):А что, и правда такой разброс, или перестраховываются, а реально все лучше?

Правда. Сам долго тупил, когда вместо ожидаемых 2,56 опора была примерно 2,7 В (Мега8).
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
К.С.А
Грызет канифоль
Сообщения: 265
Зарегистрирован: Пн окт 27, 2008 22:55:45

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение К.С.А »

Мне попадались мега8 с опорой 2,47 и 2,65 вольт
dnhftm
Родился
Сообщения: 11
Зарегистрирован: Чт янв 19, 2012 17:13:20

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение dnhftm »

Всем привет
Итак усиленно изучаю Си и сами контроллеры АВР
задача такая есть контроллер атмега 16 использую пока встроенный кварц на 8 мегагерц
нужно сделать срабатывания Шим на 1 канал по будильнику
регулирование шим по DS18B20
используя разные примеры и библиотеки СВАВР написал
Часы-будильник с использованием переполнения по таймеру 0
с антидребезговой обработкой кнопок
вывод этого всего на экран
програмный Шим я ещё не добавлял но он есть ( может сделаю на таймере они ещё в запасе есть )
эмулирую в протеус
я могу сказать смело что протеус как то это дело не очень жалует
часы будильник работают нормально но как подключаю термодатчик протеус начинает тормозить часы
при нажатии на кнопки часы тоже чутка тормозят из-за антидребезга delay_ms
и наоборот отдельно термометр без часов работает отлично

вопрос в том что или у меня код получился кривой поэтому протеус не оценивает
или протеус тормозит тк на симуляции все работает медленно и на реальной плате может все будет работать

какие решения я придумал
1)максимально разгрузить процессор установив выносные часики на i2c
2)с термометром врятли я что то сделаю пусть живет на атмеге
3)настроить шим по таймеру


буду рад услышать идеи если кто подскажет как реализовать выносные часики на какойнибудть микрушке без календарика
идеи по реализации стабильной работы сего устройства
juzik
Встал на лапы
Сообщения: 128
Зарегистрирован: Пт сен 23, 2011 23:49:20
Откуда: Симферополь, Украина

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение juzik »

А как Вы антидребезг реализовали? Походу в теле процедуры в цикле опрашиваете состояние кнопок? Если так, то это естевственно будет тупить.

Вынесете опрос в прерывание по таймеру. Предположим он у вас будет срабатывать 100 раз в сек (т.е. каждые 10мсек). Вариант до 8 кнопок:
1. Создаем массив из N байт, где N кол-во проверок (возьмем 10, можно и меньше)
2. При каждом прерывании записываем в очередную ячейку байт состояния кнопок
3. Если все N раз бит соотвествующей своей кнопке выставлен, значит она нажата.

Это существенно разгрузит основную логику работы программы, а поигравшись с параметрами можно настроить под свои нужды.

З.Ы. я сам недавно собрал часы+будильник+термометр+брометр+психрометр. Всё дело выводится на экран 128*32 (вроде). И всё на меге32, без внешних модулей.
Ответить

Вернуться в «Разные вопросы по МК»