mjpronin
Участник-
Постов
50 -
Зарегистрирован
-
Посещение
Репутация
0 ОбычныйИнформация о mjpronin
-
Звание
Участник
-
"Сложность" представленной программы обясняется тем, что я выставил суть вопроса, а не программу в целом или даже часть программы. Ну а polling это не серьёзно. Прерывания, только прерывания. А выбор подфорума объясняется просто - вопрос плёвый, хотя иногда бывает, что в трёх соснах можно заблудиться.
-
Всё, умываю руки. Низкий поклон. Спасибо. Получилось. Понятно: постоянное срабатывание прерывания из-за неочищенного буфера, неснятого бита. Думаю: помимо очистки буфера, можно насильно бит сбросить - прерывание не сработает.
-
А разве функция-обработчик прерывания не должна после своего выполнения сбрасывать этот бит?
-
avr проблемы с volatile переменной
mjpronin опубликовал тема в MCS51, AVR, PIC, STM8, 8bit
Здравствуйте! Доброго Вам времени суток. Помогите, пожалуйста, разобраться с проблемой. Необходимо использовать переменную, которая может быть изменена как по ходу программы, так и в прерывании. Думаю, многие уже воскликнули: просто он забыл объявить её как 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; } -
Модули диапазона ISM
mjpronin ответил mjpronin тема в В помощь начинающему
спасибо. буду дальше разбираться. -
Модули диапазона ISM
mjpronin опубликовал тема в В помощь начинающему
Здравствуйте. Пришлось столкнуться с выбором модулей диапазона ISM. Раньше дело с такими вещами не имел, поэтому возникло много вопросов. Был бы очень признателен, если бы кто-нибудь ответил, хотя бы на часть из них. Несколько вопросов по терминологии: 1. В описании HM-TR433-TTL (HOPERF) встретил следующее: …..радиомодуль FSK трансивера для прозрачной передачи данных……Что значит для прозрачной передачи данных? 2. Если интерфейс: вывод модуляции (RXQ1-433), значит, данные надо загружать ШИМом? Широкое распространение имеют модули RFM (HOPERF), одни из самых дешевых. Но на многих форумах их не очень хвалят. Говорят, что аппаратного протокола в них нет, а отправлять сырые байты проблематично – много ошибок. Надо писать свой программный протокол. Но при использовании программного протокола резко падает скорость передачи. Да и потом достичь указанной дальности передачи не получается. Так ли это? Насколько адекватны эти модули заявленным параметрам? 3. Хлопотно ли работать с модулями без встроенного протокола? Или написать свой это не так уж сложно? 4. Может быть лучше обратить внимание на модули со встроенным протоколом: UART, ZigBee? Т.е. освободит ли меня совсем от геморроя наличие в модуле встроенного стандарта? (под встроенным протоколом или стандартом подразумеваю гарантированную производителем прием/передачу данных) 5. Действительно ли собственные программные протоколы резко снижают заявленную скорость обмена? 6. Посоветуйте модули, с которыми работали. Ограничения на выбор модуля пока не накладываю: ни цена, ни характеристики. -
Мигание светодиодом на AT91SAM7S256
mjpronin ответил Dream10 тема в ARM, 32bit
Genadi Zawidowski Правильно ли я понял, что при таких настройках и инициализациях МК будет тактироваться по умолчанию, т.е. при 32kHz. -
sam-ba и sam7s
mjpronin ответил kumle тема в ARM, 32bit
kumle Подскажите, а с какой самба Вы работаете. Какие настройки Вы выбираете для полей Script & Address????? А то я задаю подобные вопросы в данной теме http://electronix.ru/forum/index.php?showtopic=80829 и никто не хочет отвечать. -
WinARM, IAR, KEIL
mjpronin ответил mjpronin тема в ARM, 32bit
Народ, ну разве никто не работает с SAM-BA? Ну, есть же хоть что-нибудь ответить!? Может быть мне новую тему создать? -
Поставить ARM вместо AVR
mjpronin ответил тема в ARM, 32bit
Я сейчас сам разбираюсь с ARM, так что очень хотел посоветовать Вам возьмите для своего проекта at90usb162/82. Во-первых это AVR – т.е. нет заморочек с новой архитектурой, потом его просто шить – т.е. все те же MOSI/MISO или при желании через USB, да и потом он пяти вольтовый. -
WinARM, IAR, KEIL
mjpronin ответил mjpronin тема в ARM, 32bit
Спасибо. Многое стало ясно. После того как я выполнил все предписанные манипуляции с 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, когда происходит запись самбы в память??? -
WinARM, IAR, KEIL
mjpronin ответил mjpronin тема в ARM, 32bit
Здравствуйте. Не стал создавать новую тему, т.к. новые вопросы дополняют предыдущие. Сейчас имею на руках: 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) такие значения у меня были по умолчанию. -
WinARM, IAR, KEIL
mjpronin ответил mjpronin тема в ARM, 32bit
1. Правильно ли я понял, что YAGARTO это аналог WinARM, т.е. это тот же GCC? 2. Можно ди данный YAGARTO или WinARM (который уже давно не развивается ) прикрутить к KEIL? 3. Кто-нибудь знает что-нибудь про arm_crossworks??? Кто работал??? Отзывы??? -
WinARM, IAR, KEIL
mjpronin опубликовал тема в ARM, 32bit
Здравствуйте! Подскажите, пожалуйста. Раньше работал с AVR, в последнее время через AVRStudio и WinAVR. Очень понравилось именно в такой связке. Но решил пересесть на ARM. 1. Есть ли среда разработки для ARM типа AVRStudio не выходя из которой можно компилить посредствам WinARM. 2. Может быть кто-нибудь посоветует достойную альтернативу? Как я понял исходя из поиска в интернете: большое количество примеров приведены для IAR и WinARM, но так как я уже привык к GCC хотелось бы что-то, что позволяет удобную работу с WinARM. 3. Как я понял KEIL это нечто самобытное и примеров под эту среду не много, так ли это? -
GPS приемник (EB-230)
mjpronin опубликовал тема в В помощь начинающему
Здравствуйте. Надеюсь вопрос в верном разделе. Подскажите, кто работал с подобными девайсами или имеет что сказать по данной теме. В датащите к данной микрухе EB-230 и подобным сказано, что Supply Voltage 3V+-10%. Хотел бы узнать насколько безопасно работать с напряжениями питания 3.3В – т.е. в притык к макс. напряжению питания? (мне просто надо будет коммутировать его с МК, где питание 3,3В) Насколько может быть безопасным питать EB-230 от 3В, а логически работать с МК, где 3,3В? Или лучше, между МК и eb230 запихать типа стабилитрон, резистор; транзистор, т.е. что-то городить? Заранее СПС.