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

mjpronin

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

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

  • Посещение

Репутация

0 Обычный

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

  • Звание
    Участник
    Участник
  1. "Сложность" представленной программы обясняется тем, что я выставил суть вопроса, а не программу в целом или даже часть программы. Ну а polling это не серьёзно. Прерывания, только прерывания. А выбор подфорума объясняется просто - вопрос плёвый, хотя иногда бывает, что в трёх соснах можно заблудиться.
  2. Всё, умываю руки. Низкий поклон. Спасибо. Получилось. Понятно: постоянное срабатывание прерывания из-за неочищенного буфера, неснятого бита. Думаю: помимо очистки буфера, можно насильно бит сбросить - прерывание не сработает.
  3. А разве функция-обработчик прерывания не должна после своего выполнения сбрасывать этот бит?
  4. Здравствуйте! Доброго Вам времени суток. Помогите, пожалуйста, разобраться с проблемой. Необходимо использовать переменную, которая может быть изменена как по ходу программы, так и в прерывании. Думаю, многие уже воскликнули: просто он забыл объявить её как volatile, вот и мучается. Нет, не забыл, но почему-то всё происходит, как будто контроллер не замечает её изменения. Я думаю, должно быть так: сначала «b» пока нет прирывания, потом один раз «а» и опять «b» пока опять не будет прерывание. А получается сначала «b», после прерывания «а» «b». Думаю, я что-то напутал. #define WORK 1 #define SEND 2 volatile char answer = WORK; int main () { sei(); while (1) { printf("b\n"); if(answer == SEND) { printf("a\n"); answer = WORK; } }; return 0; } ISR(USART_RXC_vect) { answer = SEND; }
  5. спасибо. буду дальше разбираться.
  6. Здравствуйте. Пришлось столкнуться с выбором модулей диапазона ISM. Раньше дело с такими вещами не имел, поэтому возникло много вопросов. Был бы очень признателен, если бы кто-нибудь ответил, хотя бы на часть из них. Несколько вопросов по терминологии: 1. В описании HM-TR433-TTL (HOPERF) встретил следующее: …..радиомодуль FSK трансивера для прозрачной передачи данных……Что значит для прозрачной передачи данных? 2. Если интерфейс: вывод модуляции (RXQ1-433), значит, данные надо загружать ШИМом? Широкое распространение имеют модули RFM (HOPERF), одни из самых дешевых. Но на многих форумах их не очень хвалят. Говорят, что аппаратного протокола в них нет, а отправлять сырые байты проблематично – много ошибок. Надо писать свой программный протокол. Но при использовании программного протокола резко падает скорость передачи. Да и потом достичь указанной дальности передачи не получается. Так ли это? Насколько адекватны эти модули заявленным параметрам? 3. Хлопотно ли работать с модулями без встроенного протокола? Или написать свой это не так уж сложно? 4. Может быть лучше обратить внимание на модули со встроенным протоколом: UART, ZigBee? Т.е. освободит ли меня совсем от геморроя наличие в модуле встроенного стандарта? (под встроенным протоколом или стандартом подразумеваю гарантированную производителем прием/передачу данных) 5. Действительно ли собственные программные протоколы резко снижают заявленную скорость обмена? 6. Посоветуйте модули, с которыми работали. Ограничения на выбор модуля пока не накладываю: ни цена, ни характеристики.
  7. Genadi Zawidowski Правильно ли я понял, что при таких настройках и инициализациях МК будет тактироваться по умолчанию, т.е. при 32kHz.
  8. sam-ba и sam7s

    kumle Подскажите, а с какой самба Вы работаете. Какие настройки Вы выбираете для полей Script & Address????? А то я задаю подобные вопросы в данной теме http://electronix.ru/forum/index.php?showtopic=80829 и никто не хочет отвечать.
  9. WinARM, IAR, KEIL

    Народ, ну разве никто не работает с SAM-BA? Ну, есть же хоть что-нибудь ответить!? Может быть мне новую тему создать?
  10. Я сейчас сам разбираюсь с ARM, так что очень хотел посоветовать Вам возьмите для своего проекта at90usb162/82. Во-первых это AVR – т.е. нет заморочек с новой архитектурой, потом его просто шить – т.е. все те же MOSI/MISO или при желании через USB, да и потом он пяти вольтовый.
  11. WinARM, IAR, KEIL

    Спасибо. Многое стало ясно. После того как я выполнил все предписанные манипуляции с TEST, плата определилась как новое устройство, затем произвел установку дров, потом SAM-BA признал МК и плату, произвел коннект через USB. Появились закладки для программирования необходимого МК. Остался последний вопрос. Я прочел, что первоначально необходимо произвести манипуляции в поле Scripts, а именно выбрать Boot from Flash (GPNVM2), но у меня в самбе того нет, зато есть: Disable BrownOut Detector (GPNVM0) Disable BrownOut Reset (GPNVM1) Enable BrownOut Detector (GPNVM0) Enable BrownOut Reset (GPNVM1) Enable Flash access Enable Security Bit Erase All Flash так что мне выбрать?? Enable Flash access?? Erase All Flash?? Проверьте, так ли Вы делаете, те кто работает с SAM-BA: 1. Произвожу манипуляции с перезаписью SAM-BA. Самба перезаписывается во flash и МК готов к записи пользовательской программы??? 2. Заливаю свою программу: Send File. Address: ??? Не знаю какой надо указать 0х00 чтобы в начало памяти писать или оставить то, что по умолчанию 0x100000 ????? Я так понимаю, надо писать в начало flash, чтобы пользовательская программа затерла собой самбу??? Или надо оставлять адрес по умолчанию???? 3. Выбираю флаг: Enable Flash access - Execute, что переключает стартовый адрес МК на начало flash памяти с пользовательской программой???? По крайней мере, так написано в одной из книг. 4. Надо ли производить манипуляции с Erase All Flash??? Производится ли данная операция автоматически??? Ведь если код последующей программы меньше кода предыдущей, то она затрет собой не весь код предыдущей и будет белиберда???? Производится ли стирание всего flash, когда происходит запись самбы в память???
  12. WinARM, IAR, KEIL

    Здравствуйте. Не стал создавать новую тему, т.к. новые вопросы дополняют предыдущие. Сейчас имею на руках: 1. Отладочная плата OLIMEX at91sam7-p64 (at91sam7s64) 2. IAR Embedded Workbench 5.4 Kickstar 3. SAM-BA 2.10 (пока JTAG программатора нет, надеюсь, буду шить через USB) 4. Долго не думая взял исходный код для программы предложенный Atmel (getting-started), изменил board.h под мою плату. Так что готовый проект есть. По интересующим вопросам уже почитал SAM-BA User Guide, а также Редькина, но остались вопросы. Подскажите, пожалуйста. 1. При компиляции проекта в IAR, где можно посмотреть информацию касательно размера программы – объем памяти занятый программой и переменными? 2. При запуске SAM-BA в списке «Select your board», что мне выбрать at91sam7s64-ek (но у меня не такая) или no_board? 3. При прошивке памяти программ, какую закладку выбрать DataFlash AT45DB/DCB или NandFlash? В поле Scripts надо ли каждый раз перед заливкой выбирать Erase All и Execute? 4. Если у меня в программе есть переменные, надо ли через SAM-BA дополнительно прошивать SRAM или только достаточно FLASH. 5. Надо ли вносить какие-нибудь изменения в поля: Start Address: 0x300000 Address: 0x40000000 (после Erase All разумеется уже 0х0) такие значения у меня были по умолчанию.
  13. WinARM, IAR, KEIL

    1. Правильно ли я понял, что YAGARTO это аналог WinARM, т.е. это тот же GCC? 2. Можно ди данный YAGARTO или WinARM (который уже давно не развивается ) прикрутить к KEIL? 3. Кто-нибудь знает что-нибудь про arm_crossworks??? Кто работал??? Отзывы???
  14. WinARM, IAR, KEIL

    Здравствуйте! Подскажите, пожалуйста. Раньше работал с AVR, в последнее время через AVRStudio и WinAVR. Очень понравилось именно в такой связке. Но решил пересесть на ARM. 1. Есть ли среда разработки для ARM типа AVRStudio не выходя из которой можно компилить посредствам WinARM. 2. Может быть кто-нибудь посоветует достойную альтернативу? Как я понял исходя из поиска в интернете: большое количество примеров приведены для IAR и WinARM, но так как я уже привык к GCC хотелось бы что-то, что позволяет удобную работу с WinARM. 3. Как я понял KEIL это нечто самобытное и примеров под эту среду не много, так ли это?
  15. Здравствуйте. Надеюсь вопрос в верном разделе. Подскажите, кто работал с подобными девайсами или имеет что сказать по данной теме. В датащите к данной микрухе EB-230 и подобным сказано, что Supply Voltage 3V+-10%. Хотел бы узнать насколько безопасно работать с напряжениями питания 3.3В – т.е. в притык к макс. напряжению питания? (мне просто надо будет коммутировать его с МК, где питание 3,3В) Насколько может быть безопасным питать EB-230 от 3В, а логически работать с МК, где 3,3В? Или лучше, между МК и eb230 запихать типа стабилитрон, резистор; транзистор, т.е. что-то городить? Заранее СПС.
×
×
  • Создать...