CARVIEW |
Select Language
HTTP/2 200
date: Sun, 12 Oct 2025 00:39:10 GMT
content-type: text/html; charset=UTF-8
server: cloudflare
x-frame-options: DENY
x-content-type-options: nosniff
x-xss-protection: 1;mode=block
vary: accept-encoding
cf-cache-status: DYNAMIC
content-encoding: gzip
set-cookie: _csrf-frontend=4c37f2290c85b84399898982fd353cabecc49067cba277fab7ee5b7dd4aafbf9a%3A2%3A%7Bi%3A0%3Bs%3A14%3A%22_csrf-frontend%22%3Bi%3A1%3Bs%3A32%3A%22FW9qbcrkoOJ4o8RicQRJup6ZlH-mWQqc%22%3B%7D; HttpOnly; Path=/
cf-ray: 98d289dfad2ecf00-BLR
03_04 - Pastebin.com
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // EXT_ROM_Ram_03 2025 August 14 ( 10:24 )
- // КР580ВВ55А РАБОТАЕТ! с резистором pull-up к /WR
- //
- // Второй тест для проверки КР580ВВ55А или 82C55A
- const int CS_PIN = 11; // /CS (Chip Select) 82C55
- //const int RESET_PIN = 19; // A5 // Reset 82C55
- #define RESET_PIN A5 // Reset 82C55
- const int OE_PIN = 12; // Output Enable 74HCT573
- const int LE_PIN = 13; // Latch Enable 74HCT573
- const int DATA_PINS[] = {2, 3, 4, 5, 6, 7, 8, 9}; // Пины данных для 74HCT573
- ////////////////////////////////////////////////
- void setup()
- {
- pinMode(CS_PIN, OUTPUT); digitalWrite(CS_PIN, 1); // Запрет выбора ВВ55
- pinMode(RESET_PIN, OUTPUT);
- pinMode(OE_PIN, OUTPUT); digitalWrite(OE_PIN, LOW); // 74HCT573 output enable
- pinMode(LE_PIN, OUTPUT); digitalWrite(LE_PIN, 1);
- for(int i = 0; i < 8; i++)
- {
- pinMode(DATA_PINS[i], OUTPUT);
- }
- digitalWrite(RESET_PIN, 1); delay(50); // Сброс КР580ВВ55А
- digitalWrite(RESET_PIN, 0); delay(50);
- // STEP 1 // запишем байт в 74HCT573 ( /WR, /RD, A1, A0 )
- // Для управления ВВ55
- set_value(0b00000111); // A1 = 1, A0 = 1 ( выбирают регистр РУС)
- digitalWrite(LE_PIN, 0); // /WR = 0, /RD = 1 (разрешение записи)
- // STEP 2
- set_value(0b10000000); // 10000000 - все порты ВВ55, как выходы ( режим 0 )
- digitalWrite(CS_PIN, 0); // Выбран (для записи) ВВ55
- digitalWrite(OE_PIN, 1);
- digitalWrite(CS_PIN, 1);
- digitalWrite(OE_PIN, 0);
- // STEP 3 Попробуем записать число 85 в порт А
- digitalWrite(LE_PIN, 1);
- set_value(0b00000100); // A1 = 0, A0 = 0 ( выбираем порт А )
- digitalWrite(LE_PIN, 0); // /WR = 0, /RD = 1 (разрешение записи)
- set_value(0b10101010); // 10000000 - все порты ВВ55, как выходы ( режим 0 )
- digitalWrite(CS_PIN, 0); delay( 40); // Выбран (для записи) ВВ55
- digitalWrite(OE_PIN, 1);
- digitalWrite(CS_PIN, 1);
- digitalWrite(OE_PIN, 0);
- digitalWrite(LE_PIN, 1);
- delay(2010);
- to_port_A(0b01010101);
- }
- /////////////////////////////////////////////////
- void loop()
- {
- // Один бит движется влево, затем вправо ( 8 раз это повторяется ).
- for(int i1 = 0; i1 < 8; i1++) {
- for(int i2 = 0; i2 < 8; i2++) { to_port_A(1 << i2); delay(250); }
- for(int i3 = 7; i3 >= 0; i3--) { to_port_A(1 << i3); delay(250); } }
- for(int i = 0; i < 10; i++) // Здесь биты через один горят в шахматном порядке. ( 10 повторов ).
- {
- to_port_A(170); delay( 500); // 170 = 0b10101010
- to_port_A( 85); delay(1000); // 85 = 0b01010101
- }
- for(int i = 0; i < 256; i++) // Перебор битов, как в двоичном счётчике.
- {
- to_port_A(i);
- delay(100); // Задержка (0,1 секунда) для визуального наблюдения.
- }
- }
- //
- // *1 Чтобы 573 перешла в Z-состояние и pull-up резистор подтянул сигнал /WR_55 к 1. Это нужно для "защёлкивания"
- // байта с шины данных именно для ВВ55. 82C55A не капризна, при записи байта.
- //
- //
- //
- //
- //
- //
- //
- //
- ////////////////////////////////////////////////
- void to_port_A(byte value)
- {
- digitalWrite(LE_PIN, 1);
- set_value(0b00000100); // A1 = 0, A0 = 0 ( выбираем порт А )
- digitalWrite(LE_PIN, 0); // /WR = 0, /RD = 1 (разрешение записи)
- set_value( value); // 10000000 - все порты ВВ55, как выходы ( режим 0 )
- digitalWrite(CS_PIN, 0);
- digitalWrite(OE_PIN, 1); // Откл. 573 (*1)
- digitalWrite(CS_PIN, 1); // Откл. ВВ55
- digitalWrite(OE_PIN, 0); // Вкл. 573
- }
- ////////////////////////////////////////////////
- void to_port_B(byte value)
- {
- digitalWrite(LE_PIN, 1);
- set_value(0b00000101); // A1 = 0, A0 = 1 ( выбираем порт B )
- digitalWrite(LE_PIN, 0); // /WR = 0, /RD = 1 (разрешение записи)
- set_value( value); // 10000000 - все порты ВВ55, как выходы ( режим 0 )
- digitalWrite(CS_PIN, 0); // Обращаемся для записи байта к ВВ55
- digitalWrite(OE_PIN, 1);
- digitalWrite(CS_PIN, 1);
- digitalWrite(OE_PIN, 0);
- }
- ////////////////////////////////////////////////
- void set_value(byte value) // Функция установки байта на пины D2-D9
- {
- for(int i = 0; i < 8; i++) // Выставляем данные на выходы
- {
- digitalWrite(DATA_PINS[i], bitRead(value, i));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
-
✅ Make $2500 in 20 minutes⭐⭐⭐ U
JavaScript | 4 sec ago | 0.25 KB
-
📌 Swapzone +37% glitch ⭐ 6
JavaScript | 4 sec ago | 0.25 KB
-
⭐ Free Crypto Method ⭐
JavaScript | 5 sec ago | 0.24 KB
-
📌 Swapzone +37% glitch ⭐ W
JavaScript | 13 sec ago | 0.25 KB
-
✅⭐ Make huge profits on trading ⭐⭐ C
JavaScript | 13 sec ago | 0.25 KB
-
📝 Crypto Swap Glitch ✅ Working
JavaScript | 16 sec ago | 0.24 KB
-
⭐✅ Marketplace Glitch ✅ Working ✅ NEVER SEEN...
JavaScript | 22 sec ago | 0.25 KB
-
✅⭐ Make huge profits on trading ⭐⭐ P
JavaScript | 23 sec ago | 0.25 KB
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand