BASCOM AVR в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

380v писал(а):А не проще ли написать такую программу более простыми способами, без использования таймеров и других примудростей...


К сожалению меня простые варианты совсем не устроили. Как не крути, но у меня индикация немного пригасала. Пусть еле заметно, но мне это не понравилось. Это первое. Второе - мне нужен был исходник, в котором можно было бы легко поменять частоту обновления температуры, например... И третье, этот код легко допиливается до версии с кнопкой, когда термометр по нажатию просыпается, показывает температуру и снова засыпает. Что мне тоже было нужно. Там, собственно все для этого есть. И так же легко меняется время отображения температуры, например... Вот и натворил такое. :) Работает круглые сутки, проблем пока не заметил.

За Ваш код спасибо, я его разберу обязательно, но пока он у меня в железе не заработал... Мерцание жуткое и на индикаторе цифры левые...
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
xaker-man
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб июн 05, 2010 20:44:58

Re: BASCOM AVR в вопросах и ответах

Сообщение xaker-man »

Помогите написать программу для задачи: нужны импульсы прямоугольной формы, положительной полярности с амплитудой 6+1 В длительностью 200—250 мкс с частотой 350 гц. есть мега8515 и мега16, работает на 8МГц. Очень нужно, мучаюсь 2 недели :cry: . Заранее спасибо :)
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

xaker-man писал(а):Помогите написать программу для задачи: нужны импульсы прямоугольной формы, положительной полярности с амплитудой 6+1 В длительностью 200—250 мкс с частотой 350 гц. есть мега8515 и мега16, работает на 8МГц. Очень нужно, мучаюсь 2 недели :cry: . Заранее спасибо :)


Похоже, готовое решение нужно. :) Где плоды мук двухнедельных? Что именно не получается?
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
xaker-man
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб июн 05, 2010 20:44:58

Re: BASCOM AVR в вопросах и ответах

Сообщение xaker-man »

Мне не нужно готовое, я не понимаю каким способом это сделать? Если Шим, то считал, считал примерно сделал, но неработает. Мне нужно заставить спидометр от машины показывать скорость.
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Re: BASCOM AVR в вопросах и ответах

Сообщение Igor_67 »

Если BASCOM не панацея, то в нете туева хуча примеров спидометров на AVR и PIC. Что, гугль уже не помогает???
А если в общем случае, то идет подсчет импульсов с датчика, прикрученного на вторичный вал коробки, например. Или снимаются электронные импульсы по К-линии с ЭБУ (для инжекторов и иномарок) и опять же все это количество подсчитывается в МК. Здесь принцип частотомера - подсчет количества импульсов на входе внешнего прерывания, например INT0 или INT1, за определенный промежуток времени.
Вот примерно такой расклад, дальше - думайте, а не хотите думать, можно просто все слизать у умных людей. Подсказка в первой строке поста... 8)
Цапу крутить надо!!! Ку или не ку?
xaker-man
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб июн 05, 2010 20:44:58

Re: BASCOM AVR в вопросах и ответах

Сообщение xaker-man »

мне нужно спидометр(сам прибор), не не нужно показания снимать. Это где стрелка и одометр, я не знаю как сформировать для него ипмульсы.
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: BASCOM AVR в вопросах и ответах

Сообщение Мурик »

xaker-man писал(а):длительностью 200—250 мкс с частотой 350 гц. есть мега8515
Решение задачи в "лоб".

Код: Выделить всё

$regfile = "8515def.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 8
$framesize = 24

Config Portb.0 = Output

Do
  Portb.0 = 1
  Waitus 200
  Portb.0 = 0
  Waitus 2650
Loop
End

Импульсы будут на PB0.
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

Igor_67, ему не подсчет нужен, а просто симуляция работы спидометра-тахометра, как я понял. Лежит приборка на столе, дрын-дын-дын, и стрелки двигаются. :))
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

xaker-man, если эти импульсы нужны только для того чтоб стрелку двигать, то код от Мурика самое оно. И что там две недели придумывать. Все просто и замечательно. :)
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
xaker-man
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб июн 05, 2010 20:44:58

Re: BASCOM AVR в вопросах и ответах

Сообщение xaker-man »

Спасибо, завтра попробую. Это нужно только для части программы, сама прога на 5 листов. Ещё раз зарание спасибо))) Я только начал изучать Bascom. У меня будет счастье, как когда первый раз увидел надпись на lcd))) :shock: А ещё вопрос, если нужно будет тут-же 1980 Гц, на другом порту.???
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

xaker-man писал(а):Это нужно только для части программы, сама прога на 5 листов...


Так Вы переделываете под себя чей-то код?
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
xaker-man
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб июн 05, 2010 20:44:58

Re: BASCOM AVR в вопросах и ответах

Сообщение xaker-man »

edm2007 писал(а):
xaker-man писал(а):Это нужно только для части программы, сама прога на 5 листов...


Так Вы переделываете под себя чей-то код?


нет (кроме термометра), я не сторонник переделывать коды(дольше разбираться в чужом коде, чем свой написать).
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

Тогда я ничего не понимаю. Вы написали прогу на 5 листов, и не знаете как ногой подергать? Если она такая большая, то как же Вы будете в главном цикле ногой дергать? Ведь эта программа еще что-то делает?
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
xaker-man
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб июн 05, 2010 20:44:58

Re: BASCOM AVR в вопросах и ответах

Сообщение xaker-man »

Она будет не всегда дергаться, а по команде в отдельном цикле, я не понимаю как считать задержку. И прога не заработала.
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

xaker-man писал(а):Она будет не всегда дергаться, а по команде в отдельном цикле, я не понимаю как считать задержку. И прога не заработала.


Это которая "в лоб"? Все там работает, оно не может не работать. :)

Изображение
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
xaker-man
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Сб июн 05, 2010 20:44:58

Re: BASCOM AVR в вопросах и ответах

Сообщение xaker-man »

Ещё раз спасибо))) Я понял, я не знал команды waitus)) Считать как я понял нужно так: 1 сек = 1000000 мкс / 350 Гц получаем 1гц = 2857 мкс вычетаем 200мкс получаем 2650 ))))))))) :lol: Да же заработала но как-то странно(Конечно вопрос не сюда), просто не работает, а когда я случайно на макетке задел пальцем кондер который идет к кварцу(контакт между кондером и кварцем) стрелка начала показывать показания. Я думаю что может тока нехватает на ноге. Если я задаю очень глупые вопросы меня не пинайте, я только учусь... Я знаю много языков програмирования(JavaScript, Pascal, basic, asp и т.д.) а bascom только учу))
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

xaker-man писал(а):Ещё раз спасибо))) Я понял, я не знал команды waitus)) Считать как я понял нужно так: 1 сек = 1000000 мкс / 350 Гц получаем 1гц = 2857 мкс вычетаем 200мкс получаем 2650 ))))))))) :lol: Да же заработала но как-то странно(Конечно вопрос не сюда), просто не работает, а когда я случайно на макетке задел пальцем кондер который идет к кварцу(контакт между кондером и кварцем) стрелка начала показывать показания. Я думаю что может тока нехватает на ноге. Если я задаю очень глупые вопросы меня не пинайте, я только учусь... Я знаю много языков програмирования(JavaScript, Pascal, basic, asp и т.д.) а bascom только учу))


С расчетами все правильно, только вот я не понял "1гц = 2857 мкс". :) Затактуйте от внутреннего генератора, и так проблем хватает, еще кварц трогать... :)
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
avrman
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Пт окт 01, 2010 20:17:58
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение avrman »

кто нибудь имел дело с аналоговым компаратором? в хэлпе и в учебнике от вилд-кэта сказано чрезмерно мало :o
Аватара пользователя
edm2007
Поставщик валерьянки для Кота
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение edm2007 »

avrman писал(а):кто нибудь имел дело с аналоговым компаратором? в хэлпе и в учебнике от вилд-кэта сказано чрезмерно мало :o


А в чем, собственно, проблема? Сказано мало по одной простой причине, там и говорить особенно не о чем. :) Включен/выключен, захват таймера и условие прерывания. Если не нужны захваты/прерывания, то проверить результат сравнения можно считав соответствующий бит (ACO) регистра ACSR. Для 2313 это ACSR.5, например. У других не смотрел.
Последний раз редактировалось edm2007 Пт дек 10, 2010 22:40:35, всего редактировалось 1 раз.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
avrman
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Пт окт 01, 2010 20:17:58
Контактная информация:

Re: BASCOM AVR в вопросах и ответах

Сообщение avrman »

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

Вернуться в «AVR»