Сделайте за меня задание.
-
alyonachurina
- Родился
- Сообщения: 2
- Зарегистрирован: Ср июн 20, 2012 17:18:15
Re: Сделайте за меня задание.
Помню. Пожалуйста помогите разобраться...
Реализовать работу триггеров K155TM2 на МК AT90S8515
Здравствуйте.
Помогите пожалуйста реализовать работу триггеров имс K155TM2 на МК AT90S8515, точнее нужна программа на Си.
Сам ни черта в мпс не разбираюсь((
Заранее спасибо всем, кто чем то помог или хотя бы не потролил)
Помогите пожалуйста реализовать работу триггеров имс K155TM2 на МК AT90S8515, точнее нужна программа на Си.
Сам ни черта в мпс не разбираюсь((
Заранее спасибо всем, кто чем то помог или хотя бы не потролил)
- ChipKiller
- Сверлит текстолит когтями
- Сообщения: 1163
- Зарегистрирован: Ср янв 05, 2011 16:25:15
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
открою "большую тайну" - для работы K155TM2 никакой МК не нужен, так что вопрос из серии "на хрена козе баян"....
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
хм.. это моя курсовая... надо вопрос этот преподавателю задать
- Moto_v3x
- Потрогал лапой паяльник
- Сообщения: 307
- Зарегистрирован: Ср мар 31, 2010 11:45:58
- Откуда: Славянск
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Рискну предположить что надо на МК AT90S8515 сымитировать работу K155TM2
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Мне друг пытался помочь но препод чет сказал что не правильно, может кто глянет что не так.
Файл номер 1
#include <avr/io.h>
#include <util/delay.h>
#define S 0
#define R 1
#define C 2
#define D 3
#define Q 4
#define Qi 5
int main()
{
// Установим бит 0 порта В как входы (для входа S)
DDRB &=~_BV(S);
// Установим бит 1 порта В как входы (для входа R)
DDRB &=~_BV(R);
// Установим бит 2 порта В как входы (для входа C)
DDRB &=~_BV(C);
// Установим бит 3 порта В как входы (для входа D)
DDRB &= ~_BV(D);
// Установим бит 4 порта В как выход (для выхода Q)
DDRB |=_BV(Q);
// Установим бит 5 порта В как выход (для выхода Qi)
DDRB |=_BV(Qi);
while(1)
{
//1Если S=0 R=0
if ((bit_is_clear(PINB,S))&&(bit_is_clear(PINB,R)))
//1.1
{
}
//2Если S=0 R=1
if ((bit_is_clear(PINB,S))&&(bit_is_set(PINB,R)))
{
//1.2
PORTB &=~_BV(Q);
}
//3Если S=1 R=0
if ((bit_is_set(PINB,S))&&(bit_is_clear(PINB,R)))
{
//1.3
PORTB |=_BV(Q);
}
//4Если S=1 R=1 C=1
if ((bit_is_set(PINB,S))&&(bit_is_set(PINB,R))&&(bit_is_set(PINB,C)))
{
//1.4
PORTB |=_BV(Q);
}
//5Если R=1 S=1 D=1
if ((bit_is_set(PINB,S))&&(bit_is_set(PINB,R))&&(bit_is_set(PINB,D)))
{
//1.5
PORTB |=_BV(Q);
}
//6Если S=1 R=1 D=0
if ((bit_is_set(PINB,S))&&(bit_is_set(PINB,R))&&(bit_is_clear(PINB,D)))
{
//1.6
PORTB &=~_BV(Q);
}
}
return 0;
}
Файл номер 2
# include <90s8515>
{
PORT C = PIN A
} // обработка INT.0
interrupt [ TIM 1 OVF ]
void timer 0_over flow (void)
{
TCNT0 = TCNT0+1
}
TCNT0 = TCNT0-1; // обработка INT.1
void main ( void )
{
DDRA =0x00;
DDRC=0xff;
DDRD=0x03;
DDRB=0x00;
PORT C =0x00;
PORT D =0x01;
asm ( "sei" );
while (1);
}
и блок схема
Файл номер 1
#include <avr/io.h>
#include <util/delay.h>
#define S 0
#define R 1
#define C 2
#define D 3
#define Q 4
#define Qi 5
int main()
{
// Установим бит 0 порта В как входы (для входа S)
DDRB &=~_BV(S);
// Установим бит 1 порта В как входы (для входа R)
DDRB &=~_BV(R);
// Установим бит 2 порта В как входы (для входа C)
DDRB &=~_BV(C);
// Установим бит 3 порта В как входы (для входа D)
DDRB &= ~_BV(D);
// Установим бит 4 порта В как выход (для выхода Q)
DDRB |=_BV(Q);
// Установим бит 5 порта В как выход (для выхода Qi)
DDRB |=_BV(Qi);
while(1)
{
//1Если S=0 R=0
if ((bit_is_clear(PINB,S))&&(bit_is_clear(PINB,R)))
//1.1
{
}
//2Если S=0 R=1
if ((bit_is_clear(PINB,S))&&(bit_is_set(PINB,R)))
{
//1.2
PORTB &=~_BV(Q);
}
//3Если S=1 R=0
if ((bit_is_set(PINB,S))&&(bit_is_clear(PINB,R)))
{
//1.3
PORTB |=_BV(Q);
}
//4Если S=1 R=1 C=1
if ((bit_is_set(PINB,S))&&(bit_is_set(PINB,R))&&(bit_is_set(PINB,C)))
{
//1.4
PORTB |=_BV(Q);
}
//5Если R=1 S=1 D=1
if ((bit_is_set(PINB,S))&&(bit_is_set(PINB,R))&&(bit_is_set(PINB,D)))
{
//1.5
PORTB |=_BV(Q);
}
//6Если S=1 R=1 D=0
if ((bit_is_set(PINB,S))&&(bit_is_set(PINB,R))&&(bit_is_clear(PINB,D)))
{
//1.6
PORTB &=~_BV(Q);
}
}
return 0;
}
Файл номер 2
# include <90s8515>
{
PORT C = PIN A
} // обработка INT.0
interrupt [ TIM 1 OVF ]
void timer 0_over flow (void)
{
TCNT0 = TCNT0+1
}
TCNT0 = TCNT0-1; // обработка INT.1
void main ( void )
{
DDRA =0x00;
DDRC=0xff;
DDRD=0x03;
DDRB=0x00;
PORT C =0x00;
PORT D =0x01;
asm ( "sei" );
while (1);
}
и блок схема
- Вложения
-
- Безимени-2.jpg
- (84.33 КБ) 342 скачивания
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
В программу сейчас вникать неохота. 
А по блок схеме есть реплика.
После состояний 1.* микросхема, что, работать перестаёт?


А по блок схеме есть реплика.
После состояний 1.* микросхема, что, работать перестаёт?
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Сам не бум бум или тут уместней наверно не мяу мяу в этом, делал вроде человек с красным дипломом
, поэтому прошу помощи тут 
, поэтому прошу помощи тут - GP1
- Поставщик валерьянки для Кота
- Сообщения: 2401
- Зарегистрирован: Пт май 23, 2008 19:32:22
- Откуда: Россия, Волгоград
- Контактная информация:
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
позволю себе заметить, что у ТМ2 есть 2 вывода, по лог 0 триггер перейдет любо в 0 (по R). любо в 1 (по S), независимо от сигналов на D,C, и будет удерживаться в этом состоянии до снятия сигнала с R/S,
что-то я не заметил такого ни в блок схеме (походу она вообще ни о чем), ни в программе.
что-то я не заметил такого ни в блок схеме (походу она вообще ни о чем), ни в программе.
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Попрошайничать некрасиво
, но GP1 можешь помочь? если есть время конечно.
, но GP1 можешь помочь? если есть время конечно.Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Andrey91 писал(а):Попрошайничать некрасиво, но GP1 можешь помочь? если есть время конечно.
Я вот только одного не пойму, у вас что препод дебил и не поймет, что вы даже рядом не стояли?
Учиться, учиться, ...
- GP1
- Поставщик валерьянки для Кота
- Сообщения: 2401
- Зарегистрирован: Пт май 23, 2008 19:32:22
- Откуда: Россия, Волгоград
- Контактная информация:
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
помогать - это не мое, но дать пинка в нужном направлении, сколько угодно.
1 для начала представь работу К155ТМ2 (2 Д-триггера)
т.е. есть вход D на котором может быть 1 или 0
вход С, по нарастающему фронту на котором происходит переключение триггера (вот только не помню ТМ2 двухтактный или однотактный, посмотришь в доках) - сразу напрашивается внешнее прерывание по нарастающему фронту
входы R,S работающие по 0 уровню, опять же вн.прерывание по 0 уровню
2. рисуешь диаграмму работы ТМ2 по ней алгоритм - и в путь...
1 для начала представь работу К155ТМ2 (2 Д-триггера)
т.е. есть вход D на котором может быть 1 или 0
вход С, по нарастающему фронту на котором происходит переключение триггера (вот только не помню ТМ2 двухтактный или однотактный, посмотришь в доках) - сразу напрашивается внешнее прерывание по нарастающему фронту
входы R,S работающие по 0 уровню, опять же вн.прерывание по 0 уровню
2. рисуешь диаграмму работы ТМ2 по ней алгоритм - и в путь...

Последний раз редактировалось GP1 Пт июн 29, 2012 21:32:17, всего редактировалось 1 раз.
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
ds1307 писал(а):Andrey91 писал(а):Попрошайничать некрасиво, но GP1 можешь помочь? если есть время конечно.
Я вот только одного не пойму, у вас что препод дебил и не поймет, что вы даже рядом не стояли?
Препод нормальный вроде, просто я на свободном посещении
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Andrey91 писал(а):Препод нормальный вроде, просто я на свободном посещении
Или я отстал от жизни... или
Если это курсовая, то за нее оценку ставят. И препод имеет право спросить у вас, что вы написали в ней. А вариант: Я на свободном посещении и не знаю, что я написал, не прокатит.
Или обучение уже не так ведется?
Учиться, учиться, ...
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
ds1307 писал(а):Andrey91 писал(а):Препод нормальный вроде, просто я на свободном посещении
Или я отстал от жизни... или
Если это курсовая, то за нее оценку ставят. И препод имеет право спросить у вас, что вы написали в ней. А вариант: Я на свободном посещении и не знаю, что я написал, не прокатит.
Или обучение уже не так ведется?
Обучение давно так не ведется
- ChipKiller
- Сверлит текстолит когтями
- Сообщения: 1163
- Зарегистрирован: Ср янв 05, 2011 16:25:15
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Andrey91 помочь и сделать за ... - две разные вещи. Задача простая, так что рекомендую скачать справочник ( например "Популярные цифровые микросхемы." Автор: Шило В.Л.) и разобраться ...
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
ChipKiller писал(а):Andrey91 помочь и сделать за ... - две разные вещи. Задача простая, так что рекомендую скачать справочник ( например "Популярные цифровые микросхемы." Автор: Шило В.Л.) и разобраться ...
Афтору
Сомневаюсь, что кто-то возмется за это бесполезное дело

Учиться, учиться, ...
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
ds1307 писал(а):ChipKiller писал(а):Andrey91 помочь и сделать за ... - две разные вещи. Задача простая, так что рекомендую скачать справочник ( например "Популярные цифровые микросхемы." Автор: Шило В.Л.) и разобраться ...
Афторуэто не поможет, он код не умеет писать. Подойдет только вариант сделать за...
![]()
Сомневаюсь, что кто-то возмется за это бесполезное дело
Дело то не бесполезное, а доброе, давно добрые дела делал?
Re: Реализовать работу триггеров K155TM2 на МК AT90S8515
Andrey91 писал(а):Дело то не бесполезное, а доброе, давно добрые дела делал?
А вот тут, Вы ошиваетесь. Это не доброе дело. Сделать все за Вас, так какой-же вы специалист будете?
С совестью своей определитесь

Учиться, учиться, ...
