|
tyvitto
|
||||||
STM32F1038 74hc595d*2 сдвиговый регистр по spi28.01.2014, 20:40. Показов 9466. Ответов 7
Метки нет (Все метки)
Имеется ARM-PLC контроллер на stm32f103c8
https://plus.google.com/photos/10591585 ... 1263983601 У него есть 8 релейных выходов, которые подключены к МК через 2 сдвиговых регистра 74HC595D Мне необходимо управлять этими релейными выходами. Распиновка сдвиговых регистров такая: DS PB0 OE PB1 ST_CP PA12 SH_CP PA11 Мучаюсь уже 2ой день, но управлять релюшками никак не получается. Вот программа, которая, вроде бы должна гасить все реле. Но у меня наоборот - все срабатывают. GPIOB->BRR = GPIO_Pin_0; //Пин данных если в этом месте изменить GPIOB->BSRR = GPIO_Pin_0; //Пин данных По большому счету изменений не видно. Результат работы программы https://plus.google.com/photos/10591585 ... 9703758050 Очень нужна помощь! Буду благодарен за примеры кода, работающего со сдвиговыми регистрами.
|
||||||
| 28.01.2014, 20:40 | |
|
Ответы с готовыми решениями:
7
Аппаратный SPI и сдвиговый регист 74HC595D - как подружить? Сдвиговый регистр PIC, SPI и сдвиговый регистр. |
|
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 140
|
|
| 28.01.2014, 21:12 | |
|
А так?
GPIOB->BRR = (1 << GPIO_Pin_0); GPIO_Pin_0 - это всего лишь индекс нужного пина, а нам нужно забить определенный бит в регистр. Увы, я тормоз, пойду спать, я не прав
0
|
|
|
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
|
|
| 28.01.2014, 21:46 | |
|
Странно что китайцы не повесили этот регистр на железный SPI. Вы уверены что с ногами не напутали?
Есть принцип. схема на плату? Да, /OE надо бы явно сбросить, да и вообще код хоть немного причесать...
0
|
|
|
tyvitto
|
|
| 28.01.2014, 23:53 | |
|
Что интересно, после ребута у меня активируются разные выходы с регистров. Похоже, в них попадают случайные значения.
Еще раз проверил соединения: https://lh3.googleusircontent.com/-oARU ... 223231.jpg https://plus.google.com/photos/10591585 ... 2589309826 Стандартные порты SPI1 и SPI2, видимо, заняты под ethernet и rs-485. Был бы благодарен за хоть какой-то заведомо работающий код для сдвиговых регистров. А то я тут по всякому пробовал и пробую - пациент ведет себя непредсказуемо... |
|
|
1 / 1 / 0
Регистрация: 06.04.2012
Сообщений: 138
|
|
| 28.01.2014, 23:59 | |
|
Где-то на работе валялся код ногодрыга для 595 регистров. Если не похерил завтра гляну.
Вот нашел. [2.12 Кб]
0
|
|
|
tyvitto
|
||
| 29.01.2014, 15:35 | ||
https://plus.google.com/photos/10591585 ... 6209283970 Заработало! Огромное спасибо! =) Осталось только адаптировать код под свои нужды: включать нужное реле. |
||
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
|||||||
| 29.01.2014, 15:49 | |||||||
<ul><li>"есть 8 релейных выходов" но "for (int i = 0; i < 16; i++)";</li><li>нужен только вывод данных и без разделения выходов HC595 с другими устройствами, но зачем-то подключен пин OE;</li><li>последовательность управляющих сигналов можно было реализовать проще и понятнее, прямо по картинке даташита.</li></ul> Псевдокод, который заработал бы:
0
|
|||||||
|
tyvitto
|
|
| 29.01.2014, 18:50 | |
|
Использую такой код управления релейными выходами (вложение).
Контроллер проектировал не я. =) Китайцы не дали никакой документации. [6.33 Кб] |
|
| 29.01.2014, 18:50 | |
|
Помогаю со студенческими работами здесь
8
Сдвиговый регистр 595N и SPI Сдвиговый регистр ШД, Сдвиговый регистр и МК Сдвиговый регистр Сдвиговый регистр Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|