Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 11.11.2006, 17:20  
EagleB3
Вид на жительство
 
Регистрация: 03.05.2006
Сообщений: 312
Сказал спасибо: 30
Сказали Спасибо 144 раз(а) в 52 сообщении(ях)
EagleB3 на пути к лучшему
По умолчанию Вот, может быть будет полезно

Очень простенький дивайс - хронограф.
Призван мерять скорость пули (пневматическое оружие, скорость до 350 м/с) по времени между двумя импульсами (пуля перекрывает две оптопары, находящиеся в начале и в конце измерительной базы (100мм)).
В начале программы универсальные заготовки - я планировал использовать ее как шаблончик (или библиотеку) под различные поделия (индикаторы с общим анодом/катодом, разное количество разрядов в индикаторе и проч.).

Прикрепленный файл: 7261622.zip
Реклама:
EagleB3 вне форума  
Непрочитано 11.11.2006, 17:28  
sns13
Частый гость
 
Регистрация: 10.11.2006
Сообщений: 23
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
sns13 на пути к лучшему
По умолчанию

Laksus,

Огромное Вам спасибо!
Заработало. Именно второе прерывание по сравнению и было фокусом. Очень странно, я читал вроде внимательно, но про ресет не говорилось. Это, насколько я понимаю, только для этого таймера? Для тамера1 и 0 такого не видать. Или это стандартно для всех прерываний, которые не имеют обработчика?

В остальном - я в курсе, что оно все неправильно, но когда оно начало устраивать ресет - начал косить все, что попадалось на экран, потому логики нету.
sns13 вне форума  
Непрочитано 11.11.2006, 17:36  
EagleB3
Вид на жительство
 
Регистрация: 03.05.2006
Сообщений: 312
Сказал спасибо: 30
Сказали Спасибо 144 раз(а) в 52 сообщении(ях)
EagleB3 на пути к лучшему
По умолчанию Re: Эта...

Сообщение от sns13
Делаю. На 7-ми сегментный. 4 штуки. Хочу 176ид2 поставить и потом понаклеить термометра и управления нагрузкой
Что-то я не постиг всю немыслимую красивость этой задумки... Я мог бы понять желание возиться с дополнительным корпусом (176ид2) если бы у тебя был маааленький камешек, или если бы все управление индикатором было загнано в 1 регистр. Так нет - один регистр под данные, еще один - под управление разрядом.
И при этом PD0(RxD) и PD1(TxD) заняты под полную фигню! Зато весь регистр A свободен... У тебя что, датчики аналоговый сигнал выдают? Ну да это дело хозяйское, конечно.

Очень советую на будущее - не отрубай себе UART без реальной необходимости. Это же твое окошко в мир - в PC, в виртуальный терминал (прелесть как удобно отлаживаться в том же Proteus), а может быть и в твои датчики температуры.

Прикрепленный файл: 7076956.rar
EagleB3 вне форума  
Непрочитано 11.11.2006, 18:13  
sns13
Частый гость
 
Регистрация: 10.11.2006
Сообщений: 23
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
sns13 на пути к лучшему
По умолчанию Re: Эта...

Сообщение от EagleB3
Сообщение от sns13
Делаю. На 7-ми сегментный. 4 штуки. Хочу 176ид2 поставить и потом понаклеить термометра и управления нагрузкой
Что-то я не постиг всю немыслимую красивость этой задумки... Я мог бы понять желание возиться с дополнительным корпусом (176ид2) если бы у тебя был маааленький камешек, или если бы все управление индикатором было загнано в 1 регистр. Так нет - один регистр под данные, еще один - под управление разрядом.
И при этом PD0(RxD) и PD1(TxD) заняты под полную фигню! Зато весь регистр A свободен... У тебя что, датчики аналоговый сигнал выдают? Ну да это дело хозяйское, конечно.

Очень советую на будущее - не отрубай себе UART без реальной необходимости. Это же твое окошко в мир - в PC, в виртуальный терминал (прелесть как удобно отлаживаться в том же Proteus), а может быть и в твои датчики температуры.
Ну я не профессионал совсем. Делаю по своему соображению, почему и понимаю, что почти все не совсем так, как принято. В общем хобби. А почему 176ид2? А черт его знает. Вроде стоит копейки а чуток выводов экономит. Да и бцд вроде проще отрабатывать в программе - пнул интеджер в порт и готово.
С уартом будет потом отдельная клоунада и с другим уклоном =)

За советы спасибо огромное!

Прикрепленный файл: 7076956.rar
sns13 вне форума  
Непрочитано 11.11.2006, 20:28  
Laksus
Частый гость
 
Регистрация: 14.09.2005
Сообщений: 34
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Laksus на пути к лучшему
По умолчанию

Цитата:
..., я читал вроде внимательно, но про ресет не говорилось.
Это, насколько я понимаю, только для этого таймера?
Для тамера1 и 0 такого не видать.
Или это стандартно для всех прерываний, которые не имеют обработчика?
______________________________________
Смотрим даташит на AT90S8535
www.atmel.com/.../DOC1041.PDF
выясняем какие у него есть прерывания.

Если будем использовать CodeVisionAVR то смотрим файл
...:cvavrevalinc90S8535.H
выясняем как эти прерывания обозваны в этом компиляторе
(в других компиляторах скорее всего имена будут немного другие)
// Interrupt vectors definitions
#define EXT_INT0 2
#define EXT_INT1 3
#define TIM2_COMP 4
#define TIM2_OVF 5
#define TIM1_CAPT 6
#define TIM1_COMPA 7
#define TIM1_COMPB 8
#define TIM1_OVF 9
#define TIM0_OVF 10
#define SPI_STC 11
#define UART_RXC 12
#define UART_DRE 13
#define UART_TXC 14
#define ADC_INT 15
#define EE_RDY 16
#define ANA_COMP 17

Пишем код, запускаем Project-Make, если не заругалось на ошибки то,
открываем файл *.asm, который автоматически был создан при
компиляции и смотрим, что получилось.
Сначала идут описание макросов, а затем начинается программа:
.CSEG
.ORG 0

.INCLUDE "bcdmodule.vec"
.INCLUDE "bcdmodule.inc"

__RESET:
...

Открываем файл "bcdmodule.vec" и видим, что будет при каждом из прерываний.
Еще удобней посмотреть, это в файле *.lst (bcdmodule.lst).
Хорошо видно, что для прерываний для которых нет обработчика
происходит переход на адрес 0x00, то есть __RESET
Часто, в программах написаных на ассемблере, используют RETI,
но, по моему, переход на ресет лучше.
_____________
Александр
2006 11 11
Laksus вне форума  
Непрочитано 12.11.2006, 10:24  
EagleB3
Вид на жительство
 
Регистрация: 03.05.2006
Сообщений: 312
Сказал спасибо: 30
Сказали Спасибо 144 раз(а) в 52 сообщении(ях)
EagleB3 на пути к лучшему
По умолчанию

2 sns13
Сообщение от Laksus
Смотрим даташит на AT90S8535...
Если будем использовать CodeVisionAVR...
Пишем код, запускаем Project-Make
Все это абсолютно верно, но при работе с CVAVR, особенно для начинающего, есть гораздо более простой путь, позволяющий избежать многих ошибок. Надо при создании проекта запустить генератор кода и настроить там аппаратные средства (в том числе прерывания). CVAVR сам сгенерирует все необходимые подпрограммы, в которые останется только вставить код.

Но, конечно, чтобы настроить камень надо читать даташит. И надо понимать (хотя бы постичь в процессе проб и ошибок) что и куда помещает CVAVR - тогда можно и добавлять новые куски в имеющуюся прграмму используя тот же генератор (в режиме preview).
EagleB3 вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна микросхема или схема ГУН greafuger Поиск схем. Делимся схемами 2 19.10.2009 14:42
ОЧЕНЬ нужен datasheet на CS4213GP или MB4213P или CSC4213 Skrut Информация по радиокомпонентам 1 22.05.2008 15:20
Нужна программа Энергетик-2 или подобная ndreich Информация по радиокомпонентам 0 12.10.2007 00:49
Как науч. пользоватся P-cad2002\4 или EDS 3.03 или EWU7.0 ? airats Proteus, KiCAD и другие ECAD 5 25.04.2007 23:15


Часовой пояс GMT +4, время: 13:59.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot