Например TDA7294

Форум РадиоКот • Просмотр темы - Не могу найти как подключена нога
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Пт сен 27, 2024 02:22:30

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Не могу найти как подключена нога
СообщениеДобавлено: Пт июл 22, 2016 02:30:09 
Друг Кота

Карма: -8
Рейтинг сообщений: 20
Зарегистрирован: Вс июл 24, 2011 11:38:09
Сообщений: 6596
Рейтинг сообщения: 0
Всё что можно исправить в этой папке https://github.com/tmk/tmk_keyboard/tre ... /hid_liber

Кусок схемы
Изображение

Фишка этих исходников что они используют свой matrix.c и в этом видимо проблема.

Добавляю в led.c один светодиод, а именно дописываю в void
Код:
if (usb_led & (1<<USB_LED_NUM_LOCK))
        PORTB &= ~(1<<7);//port b7 12
    else
        PORTB |= (1<<7);

Фактически указываю ему висеть на 12 ноге, пробовал этот трюк с 8 ногой которая в схеме не подключена, тоже самое.
Проблема в том что светодиод на этой ноге светит в пол силы, мультиметр показывает 1,5в, на остальных 3,5в, резюк наборный 1к, цеплял к разным ногам, но не суть потому как он идёт к корпусу.

Первое что подумал ещё с 12 ногой, что она участвует в опросе матрицы и там лог1 не задерживается, но вот почему и с 8 ногой так, может ошибка в коде.
Пробовал менять сигналы местами, всё равно на этих ногах слабее.
Пялюсь в matrix.c, но нифига не могу найти где указан этот PORTB 7 в понятной форме, ладно бы там одна таблица была, но их там 4 и я не могу понять какая к чему .

Этот файл использует 1 дешифратор вместо двух, в моём случае я использую несколько блоков и городить в каждый по 2 дешифратора както дофига. Да и эта схема далеко не лучшая, потому как мне както нужно инвертировать данные дешифратора, он у меня с инверсией


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти как подключена нога
СообщениеДобавлено: Пт июл 22, 2016 08:16:47 
Это не хвост, это антенна
Аватар пользователя

Карма: 8
Рейтинг сообщений: 193
Зарегистрирован: Чт июн 10, 2010 20:11:19
Сообщений: 1441
Рейтинг сообщения: 0
Не понял в чем основная задача, особенно удивило это
74LS00 писал(а):
дописываю в void
дописывать что-то в пустоту...
А DDRB7 случайно не забыли настроить?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не могу найти как подключена нога
СообщениеДобавлено: Пт июл 22, 2016 16:00:45 
Друг Кота

Карма: -8
Рейтинг сообщений: 20
Зарегистрирован: Вс июл 24, 2011 11:38:09
Сообщений: 6596
Рейтинг сообщения: 0
Потому и спрашиваю что языком не владею.
Так что есть эти самые DDR ? Мне казалось что ноги это PORTB. Тогда что PINB ? Уж очень дофига там всего.

И в самом деле ничего такого в этом файле и не было , дописал
Код:
DDRB |= (1<<7);
светодиод загорелся ярко, причём ярче чем остальные(или он просто повёрнут так), а для них тоже ничего не указано.
Но ониже както работали поэтому и подумал что дело в matrix.c , он видимо кривоват.

Цитата:
#include <avr/io.h>
#include "stdint.h"
#include "led.h"


void led_set(uint8_t usb_led)
{

DDRB |= (1<<7) | (1<<6) | (1<<5);


if (usb_led & (1<<USB_LED_CAPS_LOCK))
PORTB &= ~(1<<5);//port b5 29
else
PORTB |= (1<<5);

if (usb_led & (1<<USB_LED_SCROLL_LOCK))
PORTB &= ~(1<<6);//port b6 30
else
PORTB |= (1<<6);

if (usb_led & (1<<USB_LED_NUM_LOCK))
PORTB &= ~(1<<7);//port b7 12
else
PORTB |= (1<<7);
}


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Не могу найти как подключена нога
СообщениеДобавлено: Сб авг 06, 2016 07:33:41 
Друг Кота

Карма: -8
Рейтинг сообщений: 20
Зарегистрирован: Вс июл 24, 2011 11:38:09
Сообщений: 6596
Рейтинг сообщения: 0
Нашёл другую прошивку.
Может кто подскажет как инвертировать данные на входах ?
https://github.com/74ls00/GameKB/blob/m ... ord_num.py
Думаю выкинуть инверторы, а то места на них не хватает.

Если коротко то возможно гдето тут
Код:
matrix_hardware = [
#     Port mask     Dir mask
    ( 0b10011110 , 0b00001110 ),    # REF_PORTB
    ( 0b11000000 , 0b00000000 ),    # REF_PORTC
    ( 0b11111111 , 0b00000000 ),    # REF_PORTD
    ( 0b00000000 , 0b00000000 ),    # REF_PORTE
    ( 0b11110011 , 0b00000000 )     # REF_PORTF
]

matrix_strobe = [
#     REF_PORTB    REF_PORTC    REF_PORTD    REF_PORTE   REF_PORTF
    ( 0x00       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 ),
    ( 0x02       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 ),
    ( 0x04       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 ),
    ( 0x06       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 ),
    ( 0x08       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 ),
    ( 0x0A       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 ),
    ( 0x0C       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 ),
    ( 0x0E       , 0b00000000 , 0b00000000 , 0b00000000, 0b00000000 )
]


Пробовал менять все 0b00000000 на 8 однёрок в matrix_strobe , но ничего не поменялось, видно они не при делах. Поменял местами строки, и они поменялись местами. Похоже не эта кучка.

В matrix_hardware чтото я не просматриваю связи с дешифратором


Есть ещё чтото такое
Код:
bl_modes = [
    ( 0, 0 ),
    ( 1, 1 )
]


Вернуться наверх
 
Материалы вебинара «Пленочные конденсаторы Hongfa для источников питания и силовой электроники»

Опубликованы материалы вебинара, посвященного пленочным конденсаторам компании Hongfa, на котором была представлена текущая линейка и модельный ряд продукции этого направления, включая новые, недавно вышедшие серии. На вебинаре были приведены актуальные примеры применения пленочных конденсаторов Hongfa в источниках питания, зарядных станциях для электротранспорта, преобразователях частоты, фотоэлектрических преобразователях и ветрогенераторах.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Не могу найти как подключена нога
СообщениеДобавлено: Сб авг 06, 2016 12:08:04 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1319
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4531
Откуда: Планета Земля
Рейтинг сообщения: 3
Медали: 1
Получил миской по аватаре (1)
В программировании, метода тыка не прокатывает.
Учите язык и контроллер, с которым работаете.


Вернуться наверх
 
Помехоподавляющие пленочные конденсаторы Hongfa для бытовых и промышленных сетей

Компания Hongfa - один из лидеров азиатского рынка пленочных конденсаторов с полным циклом производства. Она выпускает пять серий помехоподавляющих конденсаторов этого типа как для бытовой, так и для трехфазной промышленной сети, а также для автомобильного применения. Продукция компании по ассортименту, параметрам и количеству серий конденсаторов ЭМП не уступает другим крупным производителям этого сегмента и может легко заменить ассортимент ушедших из РФ брендов.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Не могу найти как подключена нога
СообщениеДобавлено: Сб авг 06, 2016 19:00:50 
Друг Кота

Карма: -8
Рейтинг сообщений: 20
Зарегистрирован: Вс июл 24, 2011 11:38:09
Сообщений: 6596
Рейтинг сообщения: 0
Покачто прокатывал, прошивка готовая нужно только подправить под моё железо что я и сделал методом тыка убрав всё лишнее чего у меня нет в железе, потому как оно тыкало куда ненадо и когда ненадо.
Тут другое дело, она написана по 74238, а мне надо под 74138 тоже самое только выходы инверсные, кароче наша 555ид7, дешифратор 3 входа 8 выходов.

Учить C и python слишком круто тем более что всё в одном этом файле.
Да и я ещё недорос чтоб чтото разобрать в С для AVR, нагуглить у меня точно не получается. Чтоб это переварить потребовалось 2 года. Ну раз я один в этой стране (и ещё пара поделок) мне и тащить весь проект.

Наткнулся ещё на такую фигню
Код:
matrix_sense = [
#      Port        Pin mask
    ( REF_PORTB , (1 << 4) ),
    ( REF_PORTC , (1 << 6) ),
    ( REF_PORTC , (1 << 7) ),
    ( REF_PORTD , (1 << 0) ),
    ( REF_PORTD , (1 << 1) ),
    ( REF_PORTD , (1 << 2) ),
    ( REF_PORTD , (1 << 3) ),
    ( REF_PORTD , (1 << 4) ),
    ( REF_PORTD , (1 << 5) ),
    ( REF_PORTD , (1 << 6) ),
    ( REF_PORTD , (1 << 7) ),
    ( REF_PORTF , (1 << 0) ),
    ( REF_PORTF , (1 << 1) ),
    ( REF_PORTF , (1 << 4) ),
    ( REF_PORTF , (1 << 5) ),
    ( REF_PORTF , (1 << 6) ),
    ( REF_PORTF , (1 << 7) )
]
Могу предположить что тут надо перевернуть, но перевернуть надо и гдето ещё, ну гдето опрос точно убивается, гдето в matrix_hardware зарыто, пока непонятно чего 10 если ног 8, а портов уже 17 что не суть , ( PORTB 7) отрезал отдав светодиоду. Если будут ещё лишние тоже отдам, хотя это будет уже трудно (Сейчас я использовал последние 3 ноги что проще).

:beer: и тут фисташки кончились раньше милера.

Сложное это дело от которой даже схемы нет правильной, и программатор встроенный не работает. И в братской теме молчанка, хотя сгодилось бы всё.

Если не найду решения и будет совсем тесно поставлю cd4011 пачку (заслал в дерёвню с китая).
А тож эта самопальная клава и так уже тянет на 7к деревянных денег и писать на этом убожестве уже надоело за 2 года.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y