Страница 3 из 5
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 18:53:27
Ser60
Чтобы остановить таймер в этом МК, достаточно прервать подачу импульсов на его счетный вход. Для этого можно обнулить младшие 3 бита регистра TCCR0B. В Таблице 11-9 в ДШ на ATTINY13A это явно указано.
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 18:55:29
просто КОТ
Нашёл как остановить таймер в таблице 33.
Хм, а если я напишу
Код: Выделить всё
TCCR0B=00000111
delay_ms(100500)
TCCR0B=00000000
То где он сохранит то, что насчитал?!
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 18:57:53
Ser60
В регистре TCNT0.
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 19:00:30
просто КОТ
Благодарствую, буду скоро, с новыми вопросами. Никуда не уходи!
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 19:00:58
hybroid
Во, говорил про ассемблер, а в итоге виден си.
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 19:05:18
BoRtO
просто КОТ писал(а):К Гамме исходник не нашёл, но там тоже скорее всего лажа -- экран..
ftp://shodtech.net/ а точнее
ftp://shodtech.net/Дозиметр_Гамма_3.5/F ... ver.1/SRC/
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 20:47:59
shodan
Уважаемый Просто кот, ПРЕЖДЕ чем высказываться о чужой работе, сделай САМ ЛУЧШЕ, а мы все посмотрим, лажа тем у тебя или нет. В 4х с половиной тыщи постов я что-то не видел красивого и удобоваримого кода.
И тут сразу ты делаешь такой глубокий анализ, ФЕНОМИНАЛЬНО!
Ты прям меня за живое задел, хороший проект и прям сразу "УЖОС ЛАЖА".
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 22:58:03
просто КОТ
Шодан, твоим дозикам премию надо. Лажей я именовал процесс понимания кода. Ибо знания Си мои пока скромны, я не совсем понимаю код. Вот и выходит лажа!
shodan писал(а): В 4х с половиной тыщи постов я что-то не видел красивого и удобоваримого кода.
Дописываю свой ШЕДЕВР, щас вылажу. Прошу подойти с пониманием, это одна из первых программ!
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 23:05:46
shodan
Я про пост на первой странице темы про код сталкера.
Если критикуеш не код и проект, то так и пиши, мол... УЖОС... знаний нехватает разабраться....
А то фигня выходит
PS.И про плюсик... Гаммы не мои, они Князева за что ему огромное спасибо, это его разработка, я только доработал и слегка развил вместе с sdram85 и Nusik1975.
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 23:18:53
просто КОТ
Ну прости, эмоции. Сам понимаешь. Скачал, открыл, а там ТАКОЕ СТРАШНОЕ И НИПАНЯТНОЕ! ЖЕСТЬ!
Кстати, вот МОЁ! Да, тоже ацкая жесть. По идее, оно должно мигнуть светодиодами на РВ.0 РВ.3 и РВ.4 и уснуть. При нажатии на кнопку, что на выводе РВ.1 оно должно проснуться, включить таймер на 10 секунд и остановить его. Импульсы поступающие на РВ.2 будут посчитаны и в зависимости от их кол-ва зажжётся один из светиков. Затем он потухнет. Мигнут все и МК уснёт. Правильно?!
Код: Выделить всё
#include <tiny13.h>
interrupt[2] void ExtInt1(void)
{TCCR0B=00000111
delay_ms(10000)
TCCR0B=00000000
if (TCNT0<5)
{PORTB.3=1
delay_ms(2000)
PORTB.3=0};
if (TCNT0<10 && TCNT0>5)
{PORTB.4=1
delay_ms(2000)
PORTB.4=0};
if (TCNT0>30)
{PORTB.0=1
delay_ms(5000)
PORTB.0=0};
}
void main(void)
{DDRB=0b11101;
PORTB=0b00010;
MCUCR=0b00000010
GTCCR=0b10000000
#asm("sei")
while (1)
{PORTB.0=1
PORTB.3=1
PORTB.4=1
delay_ms(500)
PORTB.0=0
PORTB.3=0
PORTB.4=0
#asm ("sleep");};
}
Re: Сопряжение дозиметра с МК.
Добавлено: Вс май 13, 2012 23:28:06
hybroid
Читать же нихрена не удобно, что за выпендрёж с отступами и скобками?
Уж прости меня, но за такое форматирование исходника надо руки отрывать и обратным концом в жопу засовывать.
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 13:14:37
просто КОТ
Да, а я думал так лучше. . . А как надо?!
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 21:45:17
Ser60
Я не смог скомпилировать Ваш код в AVR Studio 6 и подправил его немного. Из кода не ясно что должна программа делать если число импульсов будет между 10 и 30. В данной программе не делается ничего.
- Test.c
- С код
- (639 байт) 289 скачиваний
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 21:52:55
просто КОТ
Хм, что то у мя в КВАВР компилятор не пашет вообще. В ХЕКС ни мой ни твой код не переделывает. Ошибок не находит, вообще не запускается. КАК МНЕ ЕГО ЗА ХЕКСИТЬ?!
И да, очень тебе Сэр60 признателен. Без тебя я бы долго мучался. Кстати, а сильно мой код был кривой или почти правильный?!
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 21:54:54
hybroid
У тебя было дофига ошибок синтаксиса. Сейчас тебе под GCC написали, он и не должен в CV собраться его компилятором.
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 22:02:31
просто КОТ
О.К. а то я смотрю там что то не то. Можешь пояснить, что это значит?!
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 22:26:01
hybroid
Тоже, что и:
Код: Выделить всё
PORTB = PORTB | 0b00001000;
PORTB = PORTB & 0b11110111;
Т.е. в первом случае устанавливает в единицу все биты, кроме третьего (с нуля считаем и справа). Во втором сбрасываем в ноль все, кроме третьего. Состояние третьего бита не затрагивается. Просто я развернул |= и &= ну и из хекса в бинарную запись.
Кныжку по си в зубы. Или хоть статьи читай. Пока какой-то дикий говнокод.
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 22:28:33
просто КОТ
А запись Сэр60 похожа на то, что мне надо?! Или там тоже вырвиглазый. . .
Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 22:36:27
hybroid
Вроде бы он сам про свой код достаточно написал. Нормальный исходник. Его можно читать и он собирается, в отличии от твоего
А что надо.. он же тебе написал, что у тебя там куска логики не хватает про число импульсом между чем-то и чем-то. Я твой не пытался смотреть. Не читаю то, что скачет абы как отступами и вызывает желание напиться

Re: Сопряжение дозиметра с МК.
Добавлено: Пн май 14, 2012 22:41:53
Ser60
Непохожа, хотя-бы потому, что нет комментариев. Но это я Вам оставил. А хекс в аттачменте. Проверить в железе не могу - у меня такого МК нет. Насчет глюков, в Вашем коде отсутствовали много точек с запятой. А вообще в AVR есть встроенный симулятор.