USMI

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » USMI » MCU, SoC, CPU Микроконтроллеры » Подключение разной периферии к JL SoC. SPI/I2C/I2S/PWM/UART/GPIO...


Подключение разной периферии к JL SoC. SPI/I2C/I2S/PWM/UART/GPIO...

Сообщений 21 страница 40 из 104

21

0x01 = 00000001 0x02 = 00000010 0x04 = 00000100 0x08 = 00001000 0x10 = 00010000 0x20 = 00100000 0x40 = 01000000 0x80 = 10000000
Так, как сделать 12 бит, или лучше сразу 16?

Подпись автора

By Admin

22

kagaimiq написал(а):

Туда ещё дописать 0x100, 0x200, 0x400, 0x800, 0x1000, 0x2000, 0x4000, 0x8000

Тоесть 16 бит?

Подпись автора

By Admin

23

Да, заработало. сделал u16
https://forumupload.ru/uploads/001b/ca/8a/2/t418953.png
+ с меня в репу

Подпись автора

By Admin

24

https://forumupload.ru/uploads/001b/ca/8a/2/t637595.png
https://forumupload.ru/uploads/001b/ca/8a/2/t882169.png
https://forumupload.ru/uploads/001b/ca/8a/2/t644733.png
Потом сделаю просто три дефайна,
    #define LED_7PIN_SEL                    0
    #define LED_12PIN_CA_SEL             0
    #define LED_12PIN_CC_SEL             0
В выборе разных дисплеев . Еще перенесу то что уже добавил в других SDK вяких кучу видов  OLED на разных драйверах с всякими свистоперделками, отражениями, переворотами, и тд...
Ну и щас нормально постараюсь перенести уже рабочий код и сделать интеграцию в сдк без его библиотек - всяких там ST7735/st7789/ili9341 там просто другой буфер у них, ну и инит тоже другой. Ну и цветные + разрешение выше.

Подпись автора

By Admin

25

Как то давно я уже разбирался с многими моделями всяких 7 пиновых дисплеев
https://forumupload.ru/uploads/001b/ca/8a/2/t26958.jpg
Просто пожалуй реализую в самом драйвере в его хедер файле - выбор типа сегментника. Они разные.

Код:
                      DISPLAY 3
NAME   : (KH2408) (EZT-2408) (CX-2401-1) (LS2431) (2408-8) (LS2408)
BITMAP :
/* 0    1     2     3     4     5     6
0  X    1A    1B    1E    SD    PLAY  X
1  1F   X     2A    2B    2E    2D    X
2  1G   2F    X     :     3B    ||    MP3
3  1C   2G    3F    X     3C    4E    X
4  1D   2C    3G    3A    X     4C    4G
5  3D   USB   3E    4D    4F    X     4B
6  X    X     FM    X     X     4A    X
Код:
                      DISPLAY 2
NAME   : (LSH24D17-1B-UR) () ()
BITMAP :
/* 0    1     2     3     4     5     6
0  X    1A    1B    1E    SD    PLAY  X
1  1F   X     2A    2B    2E    2D    X
2  1G   2F    X     :     3B    ||    MHz
3  1C   2G    3F    X     3C    4E    X
4  1D   2C    3G    3A    X     4C    4G
5  3D   USB   3E    4D    4F    X     4B
6  X    X     AUX   X     .     4A    X
*/
Код:
                      DISPLAY 1
NAME   : (KH2401-7) (CX2401-7) (2401-1B)
BITMAP :
/* 0    1     2     3     4     5     6
0  X    2A    2B    2C    2D    2E    2F
1  1A   X     2G    :     .     FM    MP3
2  1B   X     X     4A    4B    4C    4D
3  1C   PLAY  3A    X     4E    4F    4G
4  1D   PAUSE 3B    3E    X     X     X
5  1E   USB   3C    3F    X     X     X
6  1F   SD    3D    3G    X     X     X
*/

Модель дисплея можно посмотреть под компаундом, он почти всегда прозрачен, со стороны ножек.

Подпись автора

By Admin

26

А кто знает где указатель времени led7_show_string?

Подпись автора

By Admin

27

**********************************************************************************************************************************
https://forumupload.ru/uploads/001b/ca/8a/2/t250790.jpg

Подпись автора

By Admin

28

А ни кто не видил, где написано на пинах PWM, где то видел а вот где...

Подпись автора

By Admin

29

Вопрос снят. В даташитах написано.

Подпись автора

By Admin

30

А какой дисплей оригинальный в сдк 692х, 128х64 понятно а конкретно? У меня тут пара вроде ST7735 лежит. Пытался приделать, пока не очень получается.

31

Там LCD монохромный в ориге - ST7565
Кстати, можно просто вставить инит от OLED ssd1306/1309/sh1106 - то они будут работать без каких либо переделок, там с ST7565 совпадает все, и буфер, и разрешение. Просто нужен инит.

Подпись автора

By Admin

32

Нее, буду мучить ST7735. Мне дисплей не так и нужен, чисто спортивный интерес.

33

Во первых, он цветной, и там другой, на много сложнее инит, и он другой.

Подпись автора

By Admin

34

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

35

Вот, приделал OLED дисплей с I2C шиной к AC6925A

https://forumupload.ru/uploads/001b/ca/8a/3/t916609.jpg

Подпись автора

水Mizu-DEC JLtech since 22.06.2019

36

Прикольно. И шрифты поменял)
Штатным софтом?
Я так понял софтовый i2c?
Интересно подключить 7сегментник через I2C например через tm1637

Подпись автора

By Admin

37

Да, I2C у меня в этом случае софтовый, так как на PB0/PB1 хардварного I2C нет, но когда я тестировал всё это на бредборде с чипом, я там хардварным I2C пользовался, на PC4/PC5.
В принципе я не думаю, что использование хардваного I2C что-то кардинально поменяет, ибо что здесь, что там нужно всё побайтово передавать, а не как в случае с SPI просто по DMA отправлять целиком весь буфер на дисплей.

От штатного софта тут всё кроме штатного драйвера под дисплей, я его сам писал. Реализовал там отправку только тех частей которые были изменены (а не тупо весь буфер на дисплей каждый раз отправлять), а также подключение дисплея на горячую.

Подпись автора

水Mizu-DEC JLtech since 22.06.2019

38

kagaimiq написал(а):

а также подключение дисплея на горячую.

Прикольно, тоесть реализовал общение по I2C , а не тупо отправку....

kagaimiq написал(а):

Реализовал там отправку только тех частей которые были изменены

И не тормозит? это я полагаю что нужно каждый раз сравнивать что изменилось в буфере?

Подпись автора

By Admin

39

BIOS написал(а):

И не тормозит? это я полагаю что нужно каждый раз сравнивать что изменилось в буфере?

Пока тормозов я не заметил, хотя пока что я не замерял сколько длится сам процесс обновления дисплея, надо бы это сделать.
У меня софтовый i2c молотит где-то на 700 кГц, полностью буфер дисплея (128 * 64 / 8 = 1024 байт) отправляется за ~20 мс, а мелкие изменения и того меньше.

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

Подпись автора

水Mizu-DEC JLtech since 22.06.2019

40

Думаю там не будет тормозов, там вроде дисплей в ориге обновляется каждые пол секунды вроде?
Я пытался сделать плавный скроллинг текста по SPI но не нашел где оно, вроде в библиотеках)

Подпись автора

By Admin


Вы здесь » USMI » MCU, SoC, CPU Микроконтроллеры » Подключение разной периферии к JL SoC. SPI/I2C/I2S/PWM/UART/GPIO...