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

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

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

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

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

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


 
Опции темы
Непрочитано 11.01.2012, 19:40  
qsgtx
Частый гость
 
Регистрация: 18.10.2011
Сообщений: 30
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
qsgtx на пути к лучшему
Радость проверка работоспособности комбинационного узла

проверка работоспобности комбинационного узла можно ли упросить и переделать схему есть ли варианты??? мультиплексоры используются как память в него вбиваем бинарный файл с выходными сигналами для проверки!!! есть ли альтернатива если не использовать не 4 регистора сдива а всего 2 и мультиплексора два!! как бы не очень удобно получилось!!!
Вложения:
Тип файла: rar EPROM.rar (171.4 Кб, 73 просмотров)
Реклама:
qsgtx вне форума  
Непрочитано 11.01.2012, 19:42  
qsgtx
Частый гость
 
Регистрация: 18.10.2011
Сообщений: 30
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
qsgtx на пути к лучшему
По умолчанию Re: проверка работоспособности комбинационного узла

,лисстинг программного ккода


// LCD module connections
sbit LCD_RS at PORTC2_bit;
sbit LCD_EN at PORTC3_bit;
sbit LCD_D4 at PORTC4_bit;
sbit LCD_D5 at PORTC5_bit;
sbit LCD_D6 at PORTC6_bit;
sbit LCD_D7 at PORTC7_bit;

sbit LCD_RS_Direction at DDC2_bit;
sbit LCD_EN_Direction at DDC3_bit;
sbit LCD_D4_Direction at DDC4_bit;
sbit LCD_D5_Direction at DDC5_bit;
sbit LCD_D6_Direction at DDC6_bit;
sbit LCD_D7_Direction at DDC7_bit;
// End LCD module connections

char i, j, k, m; // параметр цикла
//синхроимпульсы записи в регистры и выходной синхроимпульс
char clk[5][3] = {0x00,0x01,0x00, //запись в 1 регистр
0x00,0x02,0x00, //запись во 2 регистр
0x00,0x04,0x00, //запись в 3 регистр
0x00,0x08,0x00, //запись в 4 регистр
0x00,0x10,0x00};//пятый импульс передаем наружу (?!)
char random[4];//4 байта 32-р случайного числа
char rnd[4][3];
//Таблица истинности для 4 проверяемых устройств
char out[2][256] = {0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09 ,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,//=== 0
0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19, 0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29, 0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39, 0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49, 0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59, 0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69, 0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79, 0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89, 0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99, 0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9, 0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9, 0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9, 0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9, 0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9, 0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9, 0xFA,0xFB,0xFC,0xFD,0xFE,0xFF;//=== 1
0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, 0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19, 0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29, 0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39, 0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49, 0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59, 0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69, 0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79, 0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89, 0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99, 0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9, 0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9, 0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9, 0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9, 0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9, 0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9, 0xFA,0xFB,0xFC,0xFD,0xFE,0xFF};//=== 2
char adres, res; //выставляемый адрес
char result[2], flag[2]; //принимаемая порция данных от 4 устройств, флаги ошибок
char buf[2]; // для преобразования в символы

void main(){

DDRA = 0x00; //на ввод значения проверяемых устройств
DDRD = 0xFF; //вывод адреса (входные величины) для проверяемого устройства
DDRE = 0xFF; //управляющие синхроимпульсы

Lcd_Init(); // Initialize LCD
Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Cmd(_LCD_CURSOR_OFF);// Cursor off
Lcd_Out(1,1,"4*8 BIT LOGIC TESTER");
Lcd_Out(2,2,"Initialize data...");

//индикация начала работы - уходящие единицы
for (k=0; k‹=3; k++) random[k] = 0xFF;
for (k=0; k‹=8; k++) {
j=0;
while (j ‹= 3) {
PORTD = random[j];
random[j] = (random[j] ›› 1);
i = 0;
while (i ‹= 2) {
PORTE = clk[j][i];
i++;
}
j++;
}
Delay_ms(20);
}
Delay_ms(100);
Lcd_Out(2,2," ");
Lcd_Out(4,1,"====(C) JA, 2011====");
Delay_ms(100);
Lcd_Cmd(_LCD_CLEAR); // Clear display

Lcd_Out(1,1,"Err1");
Lcd_Out(2,1,"Err2");
Lcd_Out(3,1,"Err3");
Lcd_Out(4,1,"Err4");
Lcd_Out(1,10,"Data:");
Lcd_Out(2,10,"Data:");
Lcd_Out(3,10,"Data:");
Lcd_Out(4,10,"Data:");

for (i=0; i‹=3; i++) flag[i] = 0; //обнуление флагов ошибок

for (k=0; k‹=255; k++) {
PORTD = k; //выдача адреса на порт D и раздача на 4 устройства
for (j=0; j‹=3; j++) {
for (i=0; i‹=2; i++) PORTE = clk[j][i];
}
for (m=0; m‹=3; m++) { //считать с 4 устройств по очереди
switch (m) {
case 0: PORTE.B7 = 0; PORTE.B6 = 0; break;
case 1: PORTE.B7 = 0; PORTE.B6 = 1; break;
}
res = PINA; // считать данные
if (res != out[m][k]) flag[m]++;
ByteToStr(flag[m], buf);
Lcd_Out(m+1, 6, buf);
ByteToStr(res, buf);
Lcd_Out(m+1, 16, buf);
}

}

}
qsgtx вне форума  
 

Закладки

Метки
atmega128, диод, мультиплексор, регистр
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка D1555 Legecki69 Видеотехника 18 23.12.2011 21:45
Тестирование работоспособности контроллера kudryvzev99 Микроконтроллеры, АЦП, память и т.д 54 03.08.2011 08:05
Как определить работоспособности ИК С/Д без фотокамеры Sukhanov Делимся опытом 18 30.01.2011 23:09
Контроль работоспособности термостата, простая схема gary2007 Электроника - это просто 2 20.12.2010 13:06
Нужна схема узла питания в свиче D-Link-Des 1005D Yegorvin Поиск схем. Делимся схемами 1 15.07.2009 12:26


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


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