ЖК от ОРИОН или HT1621 изнутри

Обсуждаем цифровые устройства...
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15547
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ЖК от ОРИОН или HT1621 изнутри

Сообщение BOB51 »

И таки да - ПРОЖОРЛИВЫЕ те "зеленые" (как и старые времен СССР)...
:facepalm:
К примеру вот этот блок на LDD5122-20
https://img.radiokot.ru/files/20529/2na3mi1cqy.jpg
А в даташите пакость -
"до 30мА/сегмент но НЕ БОЛЕЕ 120мА на матрицу (из двух позиций!!!)"
620Q0543600_LDD5112_5122.pdf
(247 КБ) 211 скачиваний
:twisted:
Аватара пользователя
musor
Друг Кота
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Re: ЖК от ОРИОН или HT1621 изнутри

Сообщение musor »

да я сдуру заказал като термостат зеленый... там он бе3 буфера на стм8 сидит....
так его днем не видно ваше - видна цифит тока если ладошкай панель одт сонца прикрыть... пришлось выпаять родной и на шлейф от старого иде 40пин припаять 2см красный 3х разрядник
вот он да так светит что ночью аж слепит... ему 1ма на сегмент выще крыщи


бля опять пива END пропала ночка...
обычно паяю все тока ночью по пифко...
ПС седня вынося на ночь мусор на мусорку обнаружил там мадем ACORP 56000 внешний приклный такой в красиывам корпусе правда без адаптера...
ченитьт из него мона сварганить или тока корпус взять777 ...
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15547
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ЖК от ОРИОН или HT1621 изнутри

Сообщение BOB51 »

Зеленые хороши под вакуум-люминесцентные "трубки".
Однако там соответствующие мелкосхемы драйверов нужны...
К примеру на старых "самсунгах" были....
:roll:
А к ним впридачу на одной из платок под индикатором микруха в DIP40
UCN5818AF
UCN5818.PDF
(194.19 КБ) 197 скачиваний
:hunger: :hunger:
Nikky
Родился
Сообщения: 3
Зарегистрирован: Вс янв 01, 2023 13:33:20

Re: ЖК от ОРИОН или HT1621 изнутри

Сообщение Nikky »

[uquote="kvn234",url="/forum/viewtopic.php?p=4083464#p4083464"]Изображение

Символ занимает в памяти 2 смежных сегмента 4+4=8бит (адреса 0,2,4...).
Для вывода одного символа: CS установить в 0, передаем код 101 затем адрес (6 бит) начать с A5 и код символа 8бит начать с D0 (2 сегмента по 4 бита), CS в 1.

Изображение


Изображение[/uquote]
Я нашёл у китайцев на сайте распиновку этого индикатора для HT1621. Первые 4 вывода - COM, остальные - SEG.
Изображение
P.s. А получилось так, что меня попросили починить весы. Ударили голову от весов с индикаторами обо что-то, 2 из 3 индикаторов вытекли. Поиски привели на али к этому модулю на HT1621. Заказал. Выпаял индикаторы, впаял в плату индикации от весов, починил, отдал. Теперь эти 2 платки HT1621 без индикаторов просто валяются. У другого продавана на али нашел отдельно сами такие индикаторы, но ценник конский, в 3 раза дороже выходит, чем с модулем. Зато у него я и стянул распиновку индикатора. Теперь вопрос... Можно как то приспособить эти платки для работы с обычными 7 сегментными светодиодными индикаторами?
pcb432
Мудрый кот
Сообщения: 1808
Зарегистрирован: Пт мар 26, 2010 17:16:52
Откуда: Kazan

Re: ЖК от ОРИОН или HT1621 изнутри

Сообщение pcb432 »

Если кратко- можно.
А вот как и какими костылями это сделать, это уже совсем другой вопрос?
А самому подумать, чем отличается жк дисплей да ещё с несколькими СОМ выводами, от "обычных 7 сегментными светодиодных индикаторов".
Ну хотя бы почитать об этом, никак?
А то что теперь есть мс HT1621, это хорошо. Можно приспособить для управления почти любых жк дисплеев.
Когда самому интересно было ковыряться с жк, покупал на али эти мс и управлял ими разными стекляшками.
А под светодиодные есть куча своих мс драйверов.
Вот на днях за недорого на барахолке купил платку с таким драйвером + 32 семисегментных индикатора.Изображение
Аватара пользователя
Nicochip
Встал на лапы
Сообщения: 142
Зарегистрирован: Чт ноя 08, 2018 12:02:06

Re: ЖК от ОРИОН или HT1621 изнутри

Сообщение Nicochip »

И всё же ответ на основной вопрос вопрошающими о либе так и не был получен. Как-то не хорошо получается. Я тоже искал и нашёл по ссылке, потому решил поделиться. Написано на Ардуиновском. Но думаю желающим не составит большого труда переписать под свою среду и свой МК.
Спойлер

Код: Выделить всё

#define CS	 13  //Pin 13 as chip selection output
#define WR	 12  //Pin 12 as read clock	output
#define DATA 7	//Pin 7 as Serial data output
 
#define CS1    digitalWrite(CS, HIGH) 
#define CS0    digitalWrite(CS, LOW)
#define WR1    digitalWrite(WR, HIGH) 
#define WR0    digitalWrite(WR, LOW)
#define DATA1  digitalWrite(DATA, HIGH) 
#define DATA0  digitalWrite(DATA, LOW)
 
 
#define sbi(x, y)  (x |= (1 << y))   
#define cbi(x, y)  (x &= ~(1 <<y ))  
#define uchar   unsigned char 
#define uint   unsigned int 
 
//定义HT1621的命令 
#define  ComMode    0x52  //4COM,1/3bias  1000    010 1001  0  
#define  RCosc      0x30  //1000 0011 0000 
#define  LCD_on     0x06  /1000     0000 0 11 0 
#define  LCD_off    0x04  
#define  Sys_en     0x02  //1000   0000 0010 
#define  CTRl_cmd   0x80  
#define  Data_cmd   0xa0  
 
 
/*0,1,2,3,4,5,6,7,8,9,A,b,C,c,d,E,F,H,h,L,n,N,o,P,r,t,U,-, ,*/
 
const char num[]=

{0x7D,0x60,0x3E,0x7A,0x63,0x5B,0x5F,0x70,0x7F,0x7B,0x77,0x4F,0x1D,0x0E,0x6E,0x1F,0x17,0x67,0x47,0x0D

,0x46,0x75,0x37,0x06,0x0F,0x6D,0x02,0x00,};
                 //0      1      2      3        4      5      6       7       8       9
char dispnum[6]={0x00,0x00,0x00,0x00,0x00,0x00};
 
 
 
void SendBit_1621(uchar sdata,uchar cnt)
{ 
	//data cnt HT1621
	uchar i; 
	for(i=0;i<cnt;i++) 
	{ 
		WR0;
		if(sdata&0x80) DATA1; 
		else DATA0;
		WR1;
		sdata<<=1; 
	} 
}
 
void SendCmd_1621(uchar command) 
{ 
	CS0; 
	SendBit_1621(0x80,4);  
	SendBit_1621(command,8); 
	CS1;                     
}
 
void Write_1621(uchar addr,uchar sdata)
{ 
	addr<<=2; 
	CS0; 
	SendBit_1621(0xa0,3);     
	SendBit_1621(addr,6);     
	SendBit_1621(sdata,8);   
	CS1; 
} 
 
void HT1621_all_off(uchar num) 
{
	uchar i; 
	uchar addr=0; 
	for(i=0;i<num;i++) 
	{ 
		Write_1621(addr,0x00); 
		addr+=2; 
	} 
}
 
void HT1621_all_on(uchar num)
{
	uchar i; 
	uchar addr=0; 
	for(i=0;i<num;i++) 
	{
		Write_1621(addr,0xff); 
		addr+=2; 
	} 
}
 
void Init_1621(void)
{
	SendCmd_1621(Sys_en);
	SendCmd_1621(RCosc);    
	SendCmd_1621(ComMode);  
	SendCmd_1621(LCD_on);
}    
 
void displaydata(int p)
{
	uchar i=0;
	switch(p)
	{
		case 1:
		sbi(dispnum[0],7);
		break;
		case 2:
		sbi(dispnum[1],7);
		break;
		case 3:
		sbi(dispnum[2],7);
		break;
		default:break;
	}
	for(i=0;i<=5;i++) 
	{
		Write_1621(i*2,dispnum[i]);
	}
}
 
 
 
void setup() {
  pinMode(CS, OUTPUT); // 
  pinMode(WR, OUTPUT); // 
  pinMode(DATA, OUTPUT); //
  CS1;
  DATA1;
  WR1;
  delay(50);
  Init_1621();
  HT1621_all_on(16); //1621
  delay(1000);
  HT1621_all_off(16); //1621  
  delay(1000);
 
  displaydata(1);//light on the first decimal point starting from the right side
  dispnum[5]=num[5];
  dispnum[4]=num[4];
  dispnum[3]=num[3];
  dispnum[2]=num[2];
  dispnum[1]=num[1];
  dispnum[0]=num[0];
  
  sbi(dispnum[5],7);   
  //cbi(dispnum[5],7); 
  sbi(dispnum[4],7);  
  //cbi(dispnum[4],7); 
  sbi(dispnum[3],7);   
  //cbi(dispnum[3],7); 
  
  
  
  //Write_1621(0,num[0]); 
  //Write_1621(2,num[28]);
  //Write_1621(4,num[2]); 
  //Write_1621(6,num[28]);	
  //Write_1621(8,num[4]);  
  //Write_1621(10,num[5]);
 
}
 
void loop() {
 
 // you can place your main code here to run repeatedly
 
}
Всё самое свежее по проекту "Дозиметр Сталкера" ищите здесь.
Ответить

Вернуться в «Цифровая техника»