реклама на сайте
подробности

 
 
8 страниц V  « < 5 6 7 8 >  
Reply to this topicStart new topic
> жутко глючит мк, помогите пожалуйста
fredo
сообщение May 8 2008, 19:32
Сообщение #91


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 13-09-06
Пользователь №: 20 357



Цитата(_Ivan_33 @ May 8 2008, 21:59) *
начал изучать счетчики - вопрос: как записать и куда записать значение при котором счетчик должен отреагировать? т.е. конечное значение счета...

В регистр сравнения OCR, при совпадении его значения со значением счетного регистра будет сгенерировано прерывание.
Либо записываешь начальное значение в счетный регистр и ждешь переполнения.

Сообщение отредактировал fredo - May 8 2008, 19:37
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 9 2008, 10:34
Сообщение #92


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



Цитата
#include <tiny2313.h>
#include <delay.h>
bit a=0;
bit b=0;
void main(void) {
#asm("sei");
TCCR1B|=(1<<2);
TCCR1B|=(1<<0);
DDRB=2;
GIMSK|=(1<<5);
PCMSK|=(1<<7);
while(1) {
if (a==1&&b==1) {a=0;
PORTB=2;
...
if(a==1) {a=0;
PORTB=0;};};};}
void interrupt [PCINT.7](void) {
a=1;
delay_xc(1000);
a=0;}
void interrupt [TIM1_COMPA]{
b=1;}


вместо ... напишите отсчет времени по счетчику ну скажем 2 секунды...
прога для attiny2313
и потом выключить отсчет времени...


--------------------
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 25 2008, 15:24
Сообщение #93


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



вот пишу опять сюда... ничего не получается... тот же самый случай
Цитата
#include <tiny2313.h>
#include <delay.h>
int a=0;
void main(void) {
#asm("sei");
DDRB=2;
GIMSK|=(1<<5);
PCMSK|=(1<<7);
while(1) {
if (a==200) {a=0;
PORTB=2;
if(a==200) {a=0;
PORTB=0;};};};}
interrupt [PCINT] void pin_change_isr0(void) {
a++;}

опять ничто не получается... я уже просто не знаю что делать ...
ничего не мигает ... ну если только иногда ...
цепь питания - блок питания - 500 мкф на 25 вольт кренка 100 мкф на 25 вольт 0,1 мкф - сам контроллер


цепь определения перехода - 560 ком и диод 1N4007...


на резет подано лог1 через 10 ком

возникла мысль поменять блок питания...


--------------------
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение May 25 2008, 15:40
Сообщение #94


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(_Ivan_33 @ May 25 2008, 18:24) *
вот пишу опять сюда... ничего не получается... тот же самый случай
На этом форуме буквально через день ищется одна и та же ошибка. Если у вас переменная меняется в прерывании, а проверяется в основной программе, то она обязательно должна быть объявлена с квалификатором volatile! Поэтому у вас должно быть volatile int a = 0;


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 25 2008, 15:55
Сообщение #95


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



эффект тот же... но мигать стало почаще


--------------------
Go to the top of the page
 
+Quote Post
domowoj
сообщение May 25 2008, 16:07
Сообщение #96


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Цитата(_Ivan_33 @ May 25 2008, 22:24) *
цепь определения перехода - 560 ком и диод 1N4007...

Откуда 560 ком и куда диод?


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
WHALE
сообщение May 25 2008, 16:08
Сообщение #97


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



дык а зачем вам прерывание от смены уровней на пинах и где у вас инициализация и прерывание от таймера?и разрешать прерывния лучше в конце инциализации контроллера прямо перед входом в главный цикл.


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 25 2008, 16:10
Сообщение #98


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



1) взято с аналогичного девайса но + диод на ногу мк
2) таймера нету ... просто если посмотреть на волну переменного тока там будет 2 перехода через 0 и исходя из периода волны мы считаем


--------------------
Go to the top of the page
 
+Quote Post
domowoj
сообщение May 25 2008, 16:20
Сообщение #99


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Цитата(_Ivan_33 @ May 25 2008, 23:10) *
1) взято с аналогичного девайса но + диод на ногу мк
2) таймера нету ... просто если посмотреть на волну переменного тока там будет 2 перехода через 0 и исходя из периода волны мы считаем

Вольт сколько подаешь ?
Диод на землю не нужен тк он есть внутри МК.


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 25 2008, 16:26
Сообщение #100


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



220 вольт...
не на землю а эту переменку и выпрямить ...
если что я уходить не буду - пишите


--------------------
Go to the top of the page
 
+Quote Post
domowoj
сообщение May 25 2008, 16:55
Сообщение #101


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



А рекомедации побоку да?
AVR182: Zero Cross Detector
Ищи в гугле, там все подробно разжевано
в картинках.


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 25 2008, 17:11
Сообщение #102


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



я фигово знаю технический английский
но там было написано что подключать просто через 1 мегоом?


--------------------
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 25 2008, 20:05
Сообщение #103


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



охохохохохох не получается у меня управлять лампочкой накаливания ...
цепь управления нога мк 220 ом оптопара moс3021 симистор BT138
придется переходить к менее силовому проекту ...

хотя блин никто из вас разработчиков электроники не делал такого чуда??? что никто не может мне помочь???

Сообщение отредактировал _Ivan_33 - May 25 2008, 20:07


--------------------
Go to the top of the page
 
+Quote Post
domowoj
сообщение May 26 2008, 01:32
Сообщение #104


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Цитата(_Ivan_33 @ May 26 2008, 03:05) *
охохохохохох не получается у меня управлять лампочкой накаливания ...
цепь управления нога мк 220 ом оптопара moс3021 симистор BT138
придется переходить к менее силовому проекту ...

хотя блин никто из вас разработчиков электроники не делал такого чуда??? что никто не может мне помочь???

Приведенный тобой выше код должен заставить мигать светодиод(соответственно включенный)
этим самым ты научишься ловить переход через 0.
Затем нужно научиться (или научить) синхронизировать таймер с сетью. те в момент перехода
сбрасывать его. Период полного счета его должен быть близок к 10мсек(100Гц).
Потом освоить работу компараторов таймера.
Без осциллографа вслепую это сделать очень трудно!
Ты просто не увидишь результатов работы своей программы.

Вышеуказанная прогр. работает???


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение May 26 2008, 06:08
Сообщение #105


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



на лампочке не получается - на светиодиоде не проверял....


--------------------
Go to the top of the page
 
+Quote Post

8 страниц V  « < 5 6 7 8 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 15th July 2025 - 23:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01506 секунд с 7
ELECTRONIX ©2004-2016