74HC165?

J

jit_singh_tara

Guest
Як інтерфейс 74HC165 паралельно в серійним в мові C ...

 
Це не є спільною справою з мовою, а не процесор (?) І компілятора (?) Конкретні IO-функції.Також ви не сказали, яка сторона (паралельний або послідовний), ви хочете, щоб інтерфейс.

 
Я використовую D0 щоб d7 як паралельних входів,
Pin 1 - PL (паралельно навантаженні).
PIN2 - годинник.
PIN7 Q '- додаткова O / P.
pin9 - серійне виробництво.
10 Pin землю
pin15 - годинник перешкоджати - землю.

** Я відправляю дані про PORTD мікроконтролера і його підключення до паралельний введення ** від 74HC165.
** Я не впевнений, погода мої дані завантажуються в регістр перемикання .....

** Я хочу бачити паралельні дані на порт B після прочитання його серійне ...
моя логіка:

# DEFINE data_pin portf.f0
# DEFINE CLK portf.f1
# DEFINE PL portf.f2

Основний ()
(
trisf = 0b00000001;
TRISB = 0b00000000;CLK = 0; / / portf.f1
PL = 0; / / portf.f2
PL = 1; / / portf.f2

для (i = 0; i <8; I )
(

Temp = data_pin; читати статус UC PIN-код (який підключений до послідовного O / P)
CLK = 1;
CLK = 0;

Дані = дані | Темп;
Дані <<= 1;
)

While (1)
(
PORTB = дані;
))але я не отримую дані з серійних з контактних Коли я бачу по CRO
Остання редакція jit_singh_tara 03 мая 2008 10:21; редагувалось 1 раз в цілому

 
Як з'єднати два 74HC165 один з одним?

 
Дорогий друже, я безлад в одному, ви говорили про два, ви пару його за допомогою мови C

 
Воно має в основному працюють таким чином.

parallel load is undefined, also data is possibly uninitialized, I can't say exactly.

Причини показаний код не є повним і має деякі невідповідності, наприклад, PL
паралельно навантаженні невизначеним, а також дані, можливо, неініціалізовані, я не можу сказати точно.Однак я хотів би запропонувати, щоб запустити паралельний і послідовний навантаження постійного зсуву в циклі з різною паралельний введення, ніж це можна спостерігати більш легко з oscillospcope.Ви повинні перевірити, якщо всі сигнали практиці функціонують як задумано.Що стосується вашого другого питання, HC165 має тільки один набір регістрів, тим самим паралельних завантажених даних з'являється відразу на виході.Ви повинні мати можливість бачити це (якщо значення змінюється).

 
значення не змінюється ...Я зробив зміни в код PL ...

що робити невідповідності U See і дані ініціалізації ....

 
Я мав на увазі дані змінної, а не її ініціалізації буде впливати тільки на перший біт.Якщо у вас є осцилограф, ви зможете дивитися будь-які сигнали для правильного функціонування.Це краще, ніж гадати від віддаленого про код або схеми, які можуть бути різними в будь-яких важливих деталях.

1.Налаштування SH / НЛД внесок у причинах низького серійне виробництво в наступні 6 контактних входу (для завантаження та інші внутрішні регістри)

2.Застосування одного тактових імпульсів з SH / НЛД = 1 аванси в наступному Serial біт.

Якщо така поведінка не може бути виявлено, або HC165 є провідний неправильно, вхідний сигнал відсутній або пристрій несправний.

 
jit_singh_tara пише:

Дорогий друже, я безлад в одному, ви говорили про два, ви пару його за допомогою мови C
 
Привіт,
Спробуйте наступне модифікований код.
Привіт,
Laktronics.

# DEFINE data_pin portf.f0
# DEFINE CLK portf.f1
# DEFINE PL portf.f2

Основний ()
(
trisf = 0b00000001;
TRISB = 0b00000000;
непідписаних Char Data = 0;

CLK = 0; / / portf.f1
PL = 0; / / portf.f2
/ / Delay () / / можливо, буде потрібно звернутися в декількох microsec.delay тут, і інші відзначені місця теж
PL = 1; / / portf.f2
/ / Delay ()

Якщо (data_pin) / / Читання статусу UC PIN-код (який підключений до послідовного O / P)
Дані Дані = 1;
для (i = 0; i <7; I )
(
Дані <<1;
CLK = 1;
/ / Delay ()
CLK = 0;
/ / Delay ()
Якщо (data_pin) / / Читання статусу UC PIN-код (який підключений до послідовного O / P)
Дані Дані = 1;
)

While (1)
(
PORTB = дані;
)

)

 
Привіт,
І Хасан, коли хтось 'потрапляння так сильно головою об стіл ", щоб вирішити його проблему, чому ви хочете додати до ваги його голову?!, Могла б почати новий потік.
Ви можете легко підключити друга IC наступним чином:

1.З'єднайте всі паралельний введення даних в паралельному ж порту.

2.Використовуйте ті ж години зміни.

3.Використовуйте різні паралельні Pin Навантаження на MCU.

4.Підключення Serial з другого IC до серійного У першій.

Ось і все.

Привіт,
Laktronics

 
Так laktronics правильно ....Завдяки людиною ....

Г-н Хасан

Ви завжди можете підключити два.74HC165 ..використовуючи основні настільки простий, нічого навичок, необхідних в тому, що ви використовуєте shiftin і pulsout ....
Спробуйте використовувати C. ...

Я можу з інтерфейсом завдяки laktronics ....
у вас є відповідь на всі проблеми ...Ура геній, я поважаю ваші знання ...

 

Welcome to EDABoard.com

Sponsor

Back
Top