Страница 177 из 304
Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб июн 22, 2013 13:47:54
edm2007
KOTик писал(а):если вы выставите тактирование МК от внешнего кварца, то при повторной прошивке этот же кварц должен быть на соответствующих ножках МК.В противном случае МК не войдет в режим программирование/прошивки, т.е. будет нуу, как бы "залочен".
Разумеется. Ведь теперь частотозадающим элементом для тактового генератора МК и будет являться кварц. Он не то что не войдет в режим программирования, он просто работать не будет. И это не залоченый МК, Вы немного путаете понятия. Залочить - это все же выставить Lock биты, запрещающие чтение & / | верификацию. В этом случае МК можно будет только стереть (хорошая защита от считываний прошивки с МК, с целью дальнейшего копирования изделия). А тактирование от внешнего кварца это штатный режим работы МК, ничего экстраординарного здесь нет. А если кто и забыл кварц припаять, так это уже его личное дело.
Куда "опаснее" выставить фьюз RSTDISBL. Этот фьюз сделает вывод RESET МК обычным пином порта (с незначительными ограничениями). А так как при последовательном программировании вывод RESET принимает непосредственное участие, то ISP программирование более будет невозможно (по выводам MISO, MOSI, SCK,
RESET). Но и это обычный режим, никакой блокировки тут нет. Просто нужен будет параллельный программатор, который способен достучаться до МК. Ну или FuseBitDoctor...
Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб июн 22, 2013 13:56:34
KOTик
edm2007 писал(а):KOTик писал(а):если вы выставите тактирование МК от внешнего кварца, то при повторной прошивке этот же кварц должен быть на соответствующих ножках МК.В противном случае МК не войдет в режим программирование/прошивки, т.е. будет нуу, как бы "залочен".
Разумеется. Ведь теперь частотозадающим элементом для тактового генератора МК и будет являться кварц. Он не то что не войдет в режим программирования, он просто работать не будет. И это не залоченый МК, Вы немного путаете понятия. Залочить - это все же выставить Lock биты, запрещающие чтение & / | верификацию.
...
Абсолютно верно, учитель

Потому и "Залочить" Я написал в кавычках, цитируя
dbf-334.
Разумеется, ничего трагического с МК не произойдет.
А пока добиваю свой ДРЛ/ДХО модуль согласно Вашим примерам и советам...
Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб июн 22, 2013 14:09:39
edm2007

Конечно я понял о каком "залочивании" идет речь. Тема эта актуальна будет всегда, и по ощущениям оно и выглядит как погибший МК. Особенно для неокрепшей психики начинающего программера.

Я и сам в прошлой жизни запросто отправил пару МК во внешнее тактирование. Горе мое на тот момент было сложно описать. Мир рухнул, похоронив под обломками все надежды на счастливое микроконтроллерное будущее... Кто же знал тогда, что не все оболочки считывают фьюзы при обращении к МК. И как следствие - фьюзы записываются совершенно непотребные... Лишь спустя много лет были обнаружены эти "залоченые" МК, к которым достаточно было подцепить внешние кварцы.

Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб июн 22, 2013 15:35:40
dbf-334
edm2007 писал(а): Залочить - это все же выставить Lock биты, запрещающие чтение & / | верификацию. В этом случае МК можно будет только стереть (хорошая защита от считываний прошивки с МК, с целью дальнейшего копирования изделия).
А можно про это по подробнее?

Какой фьюз за это отвечает в БАСКОМе, что бы содержимое МК нельзя было в дальнейшем прочитать?
Я так понимаю, что прошивку нельзя будет считать с МК, но доступ к нему все равно останется. Т.е. его можно просто стереть и потом записывать на него другую программу, как ни в чем не бывало? Полагаю, только надо будет блокирующий фьюз не забыть снять...
Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб июн 22, 2013 16:14:02
edm2007
dbf-334 писал(а):А можно про это по подробнее?
Да запросто. Какой фьюз и за что отвечает, прекрасно видно в даташите.
Касаемо же баскома, то за это отвечают фьюзы Lockbit 21. По умолчанию они зашиты как 11. То бишь разрешено и программирование и верификация данных. Ну а дальше как и в даташите 10 запрещает программирование Flash и EEPROM, а 00 запрещает еще и верификацию.
dbf-334 писал(а):Я так понимаю, что прошивку нельзя будет считать с МК, но доступ к нему все равно останется. Т.е. его можно просто стереть и потом записывать на него другую программу, как ни в чем не бывало?
Вы все правильно понимаете. Только с небольшими поправками. Прошивку считать будет можно, только содержать она будет совершенно неправильные данные. Это увеличивающиеся значения, и не более того. 00 01 02 03 ... AA AB AC. Сразу будет видно, что это явно не прошивка. Можете попробовать ради интереса, и сразу все поймете. И само собой разумеющееся, что такую "прошивку" применить будет невозможно. Если же был запрет еще и на верификацию, то она естественно будет в дальнейшем проходить с ошибкой.
dbf-334 писал(а):Полагаю, только надо будет блокирующий фьюз не забыть снять...
Lock биты сбрасываются автоматически при стирании микроконтроллера. Никаких дополнительных действий делать не нужно. Отсюда порядок действий: сначала зашиваем прошивку и основные фьюзы,
и только в самом конце в отдельном порядке Lock биты.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб июн 22, 2013 17:25:32
dbf-334
edm2007, спасибо большое за ответ!

Все очень подробно расписано, еще и с картинками.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс июн 23, 2013 12:32:11
dbf-334
Уважаемые коты!
Подскажите, как работать в БАСКОМ со звуком. Там есть команда SOUND, с ней я полностью разобрался. Только, по моим наблюдениям она имеет ряд недостатков при воспроизведении звука:
1) на всех остальных портах гаснут светодиоды
2) таймер, выделенный для другой задачи тоже приостанавливает работу (по моим наблюдениям, хотя может и ошибаюсь)
Вообщем создается впечатление, что команда SOUND на время своей работы забирает ресурсы МК, т.е. работает монопольно. Что не есть гуд.

Мне через пьезо-динамик нужно получить простое громкое "ПИП". Если бы не недостатки этой команды, то все бы устраивало... Есть ли другой способ получения звука на выходе МК, простой кратковременной подачей напряжения на вывод МК, звук не получить. Собственно понятно почему! Подозреваю, что нужно использовать таймер и выдавать нужное кол-во импульсов за единицу времени. Кто нибудь уже делал такое или есть способ попроще?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс июн 23, 2013 12:55:29
edm2007
dbf-334 писал(а):простой кратковременной подачей напряжения на вывод МК, звук не получить
Есть пьезоизлучатели со встроеным генератором. Вот на них как раз и достаточно подать напряжение...
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс июн 23, 2013 13:01:08
dbf-334
edm2007 писал(а):Есть пьезоизлучатели со встроеным генератором. Вот на них как раз и достаточно подать напряжение...
Да я знаю, но мне интереснее с этим поработать.)) Я так думаю, что команда SOUND должна использовать для своей работы таймер (например №1), тогда мой таймер №0 работает не в удел (прерывание прерыванию рознь). А мне время считать этим таймером надо, вот я и запнулся с этим звуком.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пн июн 24, 2013 14:34:26
kip96
как ни странно, но у меня как раз проблеммы были со звуком а не с светодиодами (динам. индикация). При уменьшении яркости индикатора, немного менялся звук.
Если у Вас светодиоды в статическом режиме, то они не должны отключаться при звуке. Если в динамике, по таймеру, то и генерите этим-же таймером звук(дёргайте ножку зумера), при условии нажатия кнопки.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вт июн 25, 2013 15:22:21
dbf-334
Индикация динамическая.

Только вот, как правильно сгенерить таймером звук не знаю.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пн июл 01, 2013 12:43:03
осторожно! леоныч!!!
Всем доброго времени суток. Кто нибудь применял демодулятор tda9886h ?
Я уже весь даташит перекурил, не могу понять в чем дело. Вот даташит
TDA9885_TDA9886.pdf
Вроде все правильно отправляю в микросхему, но на выходе глухая тишина. Второй день бьюсь с этой заразой.
Отправляю так
Setradio1:
Do
Waitms 10 'Пауза 10мс
I2cstart
I2cwbyte &B10000110 'Адрес демодулятора '
I2cwbyte &B00000000 'B DATA) Суб адрес
I2cwbyte &B01000100 'Данные В
I2cwbyte &B00000001
I2cwbyte &B00110000 'Данные С
I2cwbyte &B00000010
I2cwbyte &B00100000 'Данные Е
I2cstop
Return
Loop
Подскажите что я не так делаю? Ну не могу допереть ни как...
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вт июл 02, 2013 10:04:16
осторожно! леоныч!!!
Сегодня попробовал так отсылать данные на демодулятор
Setradio1:
Do
Waitms 10 'Пауза 10мс
I2cstart
I2cwbyte &B10000110 'Адрес демодулятора '
I2cwbyte &B00000000 'B DATA) Суб адрес
I2cwbyte &B01000100 'Данные В
I2cstop
I2cstart
I2cwbyte &B10000110
I2cwbyte &B00000001
I2cwbyte &B00110000 'Данные С
I2cstop
I2cstart
I2cwbyte &B10000110
I2cwbyte &B00000010
I2cwbyte &B00100000 'Данные Е
I2cstop
Return
Loop
Не помогло. Ему без разницы. Не понятно что ему нужно. Если отсылать как в прошлом посте, то на выходах вообще тишина.
Где бы найти пример применения этой микросхемы на Bascom. Сильно сомневаюсь что это вообще возможно....
Re: BASCOM AVR в вопросах и ответах
Добавлено: Чт июл 04, 2013 14:55:49
KOTик
Товарищи мудрые коты!
Нарисовал схему одного устройства.
Имеются каналы ввода/вывода, обвязка и т.д.
Написал 2 прошивки под разные задачи (1.датчик освещенности; 2.стробоскоп).
При этом, принципиальная схема, элементная база, обвязка и т.д. не изменилась, частота МК, фьюзы и т.д. идентичны.
Устройство отлично работает.
Залил одну прошивку - 1 девайс, залил другую - другой.
А теперь, собственно сабж:
Имеется всего один свободный порт мк (аттини13).
Задача состоит в том, чтобы оперативно менять функцию устройства без перепрошивки.
Т.е. прижал свободный порт на массу - выполняется прошивка 1.hex с одной функцией, порт не прижат - работает прошивка 2.hex и, естественно, другая функция и по назначению другое устройство получается.
Как можно залить в этот МК 2 прошивки (каждая по объему на 1/4 меньше от общей памяти мк) и выбирать, активную прошивку, а следовательно, функцию устройства?
Может как-то эти hex-ы считывать с внешней памяти и джампер вот туда и поставить? (сорри, если ни то ляпнул)
_______
ПыСы. Вариант с объединением 2 программ в bascom'е это уже крайний вариант.
Хочется что-нить по проще..
Re: BASCOM AVR в вопросах и ответах
Добавлено: Чт июл 04, 2013 15:15:30
edm2007
KOTик писал(а):Вариант с объединением 2 программ в bascom'е это уже крайний вариант.
Вот как раз вариант с объединением и есть самый нормальный. Если схема, обвязка и прочее не меняется, то грамотный код и всех делов. А остальное это ну... Ни к чему. Ну какая внешняя память, какие джамперы?
KOTик писал(а):Имеется всего один свободный порт мк (аттини13).
У тиньки 13 всего один порт. А у Вас речь идет об одном пине порта, видимо.

Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб июл 06, 2013 09:03:06
arrr
осторожно! леоныч!!!
TDA9887
Пример:
'then set to FM mode (IF=10.70 MHz)
I2cstart
I2cwbyte &H86
I2cwbyte &H00
I2cwbyte &H4E '4E high sens ,0E mute on
I2cwbyte &HD0
I2cwbyte &H77
I2cstop
Waitms 100
Взято здесь
http://www.kh-gps.de/fm1216.htm
Re: BASCOM AVR в вопросах и ответах
Добавлено: Ср июл 10, 2013 13:17:35
dimon-790
Вопрос по функции Ischarwaiting : Так понимаю она работает только с аппаратным юартом ? а есть ли что подобное для софтового ?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Ср июл 10, 2013 23:54:19
domrustika
есть простая задумка включать и выключать светодиод через tsop4836 . может кто помочь накидать схему подключения и код что бы это реализовать?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Чт июл 11, 2013 11:05:28
amv2000
domrustika писал(а):есть простая задумка включать и выключать светодиод через tsop4836
Эта задумка уже давно осуществилась
http://avrproject.ru/publ/protokol_rc5_ ... r/1-1-0-30
Re: BASCOM AVR в вопросах и ответах
Добавлено: Чт июл 11, 2013 12:12:54
domrustika
ооо это именно то что нужно!

пасибо!