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

lech196

Участник
  • Постов

    14
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о lech196

  • День рождения 22.03.1985

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array
  1. http://cappels.org/dproj/Home.htm http://instruct1.cit.cornell.edu/courses/e.../FinalProjects/ http://google.com
  2. Достаточно установить AVR Studio начиная с версии 4.12 (на данный момент есть версия 4.13 (build 528)) Скачать можно здесь (73 Мб) http://atmel.com/dyn/products/tools_card.a...mp;tool_id=2725. После этого установить WinAVR (можно скачать здесь http://sourceforge.net/projects/winavr). Можно заглянуть сюда http://avr.h15.ru/
  3. GDI, Большое спасибо за ответ. Просто считал, что записанные биты защиты стереть уже ничем не удасться :-) Теперь понятно, что удалить их можно только стерев всю память контроллера и в итоге они свою функцию выполняют...
  4. Вот здесь есть некоторое описание алгоритма поиска устройств на русском языке.
  5. Вопрос по битам защиты. Как я понял из даташита установкой двух битов LockBit2 и LockBit1 выбирается режим защиты памяти кристала. Lock2 Lock1 1 1 - нет защиты 1 0 - защита от программирования (записи) 0 0 - защита от записи и чтения т.е. нет режима в котором возможна запись, но невозможно чтение? к примеру это было бы удобно для обновления ПО устройств, но в тоже время хотелось бы чтобы они были защищены от чтения...
  6. Если вы используете в своём проекте библиотеку AVRlib и подключили файл avrlibdefs.h (AVRlib global defines and macros) то это кажется странным, т.к. внутри файла эти макросы объявлены вот так: #ifndef outb #define outb(addr, data) addr = (data) #endif т.е. вы перепутали местами адрес и данные как вам уже сказали.
  7. Если автору необходимы точные часы, то решение довольно однозначное - запуск таймера 2 в асинхронном режиме с подключением внешнего кварца 32768 Гц к ногам TOSC1/2 (ставиться предделитель 128 и того 32768/(128*256)=1Гц). Т.е. прерывания по переполнению Т2 будет происходить каждую секунду. При этом если речь идёт о меге8, то использовать основной кварц (высокочастотный) уже не получиться, и придётся работать от внутреннего генератора. Если прибор делается на меге16/32 то можно поставить основной кварц, к примеру чтобы уменьшить ошибку скорости работы UART.
  8. Если в старшем конфигурационном байте запрограммировать фьюз RSTDISBL, то вывод RESET' меги8 можно будет использовать как обычный порт ввода-вывода. Интересует останется ли возможность прошивать микроконтроллер через последовательный интефейс SPI? Программатор - простейший, типа пять проводков. Использую PonyProg. Просто нет лишней меги и ставить эксперимент не хочется :)
  9. прозвонка

    Есть такая система: два микроконтроллера ATmega16 и между ними простейшая схема с несколькими парами "Вход-Выход" (просто проводники или НЧ фильтры) которую необходимо проверить на обрыв и замыкание. МК1 генерирует меанд частотой 1 кГц и после прохождения по цепям сигнал подаётся на вход АЦП МК2, где при многократном измерении находится максимальное значение сигнала. При разрыве в цепи проверяемого устройства на входе АЦП МК2 появляются наводки, с постоянно меняющимся значением (от 0.5 и до вольт 3х). Как с этим бороться? Я подтянул вход АЦП к земле 10к резистором, значение наводок теперь не выходит за значение погрешности измерения. Однако, хотелось бы услышать мнение более опытных в этих делах людей :)
  10. AVR Studio 4.12 build 460 WinAVR 20070122 ATmega32 В разделе объявления глобальных переменных объявлено: const char com_readsms[] = "AT+CMGR="; Существует следующая функция отправляющая строку по USART: void USART_sendtext(char *buff) { for(;*buff;) { while(!(UCSRA & (1<<UDRE))); UDR = *buff++; } } Вызываю её: USART_sendtext(com_readsms); При этом компилятор выдаёт warning: ../i2c_master_gsm.c:487: warning: passing argument 1 of 'USART_sendtext' discards qualifiers from pointer target type В принципе данная конструкция работает, однако таких варнингов набралось уже около 200, что немного напрягает. Подскажите пожалуйста как обыграть данную ситуацию? т.е. сделать всё правильно Заранее спасибо за ответ!
  11. А какая была длина кабеля? И сколько устройств присутствовало на шине? Подборка задержек заключалась только в подборе задержки выборки данных с линии? Или ещё какие либо из них требуют адаптации к длинной линии? Спасибо за ответ!
  12. Есть вопрос по 1-wire, задал его в форуме по интерфейсам тут т.к. вопрос именно о железном интерфейсе при работе с 1-wire где мастером служит МК. Заранее спасибо за ответы!
  13. Сам об этом задумывался, однако, при этом придётся задействовать единственный модуль UART микроконтроллера (mega8/16). Может кто-то всё таки собирал системы используя такие схемы: Каковы результаты? И вообще какой длинны систему удалось собрать без применения данных схем (используя только 1н порт МК и подтягивающий резистор)? На каком кабеле? Заранее спасибо за ответ!
  14. Интересует реальный опыт сопряжения микроконтроллера (AVR/PIC) с сетью 1-wire (короткие и длинные линии). В интернете описаний сети 1-wire очень много, но всё во-сновном сводится к общим вопросам и вопросам логического устройства сети. Хотелось бы увидеть контретную схему :-) Подключал шину к порту МК, используя простейшую схему (подтягивающий резистор 5кОм). При небольшой длинне линии всё работает отлично (в том числе и команда поиска устройств на линии SEARCH ROM). Однако если увеличить длинну линии до 10-15 м работа сети полностью нарушается. Эксперименты с зедержкой выборки данных с линии ни к чему не привели. Интересует, какие можно применить дополнительные схемы для восстановления работы длинной линии?. В аппноутах по обеспечению надёжности сети есть схема "усовершенствованный интерефейс МК" на одном ПТ и ещё одна более сложная схема на 2ух ПТ. При этом для управления сетью необходимо использовать уже не одну "ногу" МК, а 2 или 3. Также есть схема для уменьшения времени нарастания сигнала в линии из "0" в "1" подключающаяся к линии параллельно. Кто нибудь применял их? Каковы результаты? Заранее спасибо за ответ.
×
×
  • Создать...