Например TDA7294

Форум РадиоКот • Просмотр темы - Работа с ЖКИ на базе контроллера ML-1001(TIC9153). Как?
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Сб ноя 22, 2025 14:10:41

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


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



Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 14 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Работа с ЖКИ на базе контроллера ML-1001(TIC9153). Как?
СообщениеДобавлено: Сб ноя 14, 2009 22:16:54 
Открыл глаза

Зарегистрирован: Чт фев 14, 2008 16:12:52
Сообщений: 66
Рейтинг сообщения: 0
Привет!
Коллеги, кто работал с такими индикаторами, подскажите как выводить информацию на них? По выводам (Load, DIn, DClk) они похожи на индикаторы типа HT161x, а по "коду", есть ли отличия?
Если можно, примерчик использования на С или Bascom-AVR.
В идеале - контроллер типа Тини2313/Мега8/48, одна кнопка, и вывод на TIC9153: в цикле - 1-е нажатие выводим "1-А", 2-е нажатие - "1-В", 3-е нажатие - "1-С" и так далее "по кольцу".


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс ноя 15, 2009 06:10:56 
Друг Кота

Карма: 64
Рейтинг сообщений: 1017
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4362
Откуда: Ижевск
Рейтинг сообщения: 0
Здравствуйте. Применял TIC33 с ML1001. От TIC9153 отличаются дополнительным входом LCLK, на который при работе нужно подавать НЧ меандр. Индикаторы мне нравятся. Так выглядит счетчик времени наработки на TIC33. Если нужно, могу выложить код управления на ASM для MSP430. К сожалению сями и сями с плюсями не владею. :cry:


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс ноя 15, 2009 09:52:54 
Открыл глаза

Зарегистрирован: Чт фев 14, 2008 16:12:52
Сообщений: 66
Рейтинг сообщения: 0
akl писал(а):
Здравствуйте. Применял TIC33 с ML1001. От TIC9153 отличаются дополнительным входом LCLK, на который при работе нужно подавать НЧ меандр. Индикаторы мне нравятся. Так выглядит счетчик времени наработки на TIC33. Если нужно, могу выложить код управления на ASM для MSP430. К сожалению сями и сями с плюсями не владею. :cry:

Приборчик замечательный у Вас, и самое главное - весьма компактный. За код, конечно, спасибо, но я в Асме - "ни в зуб ногой", тем более, под другой проц... На Си проще было бы...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вс ноя 15, 2009 11:08:03 
Друг Кота
Аватар пользователя

Карма: 58
Рейтинг сообщений: 413
Зарегистрирован: Чт мар 20, 2008 01:06:40
Сообщений: 3344
Откуда: Севастополь
Рейтинг сообщения: 0
http://xdevs.com/*самореклама*/content/c ... content.21

За паролем к архиву обращайтесь к автору. Он, кстати, и на этом форуме присутствует.


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Пн ноя 16, 2009 18:21:13 
Открыл глаза

Зарегистрирован: Чт фев 14, 2008 16:12:52
Сообщений: 66
Рейтинг сообщения: 0
abc писал(а):
http://xdevs.com/*самореклама*/content/content.php?content.21

За паролем к архиву обращайтесь к автору. Он, кстати, и на этом форуме присутствует.


За ссылку спасибо - уже натыкался я на неё...
А вот ребята с сайта молчат... И, по моему, не факт, что ответят...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 17, 2009 17:24:52 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
Alex_NEMO писал(а):
За ссылку спасибо - уже натыкался я на неё...
А вот ребята с сайта молчат... И, по моему, не факт, что ответят...

А что отвечать-то? Скачиваешь даташит на ML1001 и все ясно. Там все просто как гвоздь.
Пример библиотеки:
//функции работы с TIC9153
#include <avr>
#include <util>
#include <stdlib>

//порт - подключение
#define TICDDR DDRC
#define TICPORT PORTC
#define DCLK PC3
#define DIN PC4
#define LOAD PC5

//сегментное отображение цифр и букв
#define CharA 0x77
#define CharC 0x0F
#define CharF 0x27
#define CharU 0x5E
#define Charb 0x3E
#define Charh 0x36
#define Charo 0x3C
#define Charu 0x1C
#define Dot 0x80

#define Minus 0x20
#define Dig0 0x5F
#define Dig1 0x50
#define Dig2 0x6D
#define Dig3 0x79
#define Dig4 0x72
#define Dig5 0x3B
#define Dig6 0x3F
#define Dig7 0x51
#define Dig8 0x7F
#define Dig9 0x7B


//вывод байта на TIC9153
void ByteOut(unsigned char data)
{
for (uint8_t cnt = 0; cnt < 8; cnt++)
{
// бит данных
if (data & 0x80)
{
TICPORT |= (1<<DIN);
}
else
{
TICPORT &= ~(1<<DIN);
}
//строб
TICPORT |= (1<<DCLK> 1000000)
_delay_us(1);
#endif
data <<= 1;
TICPORT &= ~(1<<DCLK);
//сдвиг
}
}

//data register strobe
void DataStrob(void)
{
TICPORT |= (1<<LOAD> 1000000)
_delay_us(1);
#endif
//#endif
TICPORT &= ~(1<<LOAD);
}

ByteOut - впихиваешь данные, не помню, слева направо или справа налево байтики смещаются (дома проект, в конторе только проба осталась, по которой определил сегменты - нарисуешь буковки/ цифирки - увидишь в каком порядке идут)
DataStrob(void) - они становятся видны. Из сдвигового - в дата-регистр - регистр отображения вписываются.
Полчаса экспериментов. :)))


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 17, 2009 21:10:09 
Открыл глаза

Зарегистрирован: Чт фев 14, 2008 16:12:52
Сообщений: 66
Рейтинг сообщения: 0
SergeBS писал(а):
А что отвечать-то? Скачиваешь даташит на ML1001 и все ясно. Там все просто как гвоздь...
Полчаса экспериментов. :)))

Спасибо, добрый человек! У меня опыта почти 0. Долго репу чесал бы, а потом, скорее всего, "забил" бы. Спасибо, бым вьезжать!

Как "увязать" кол-во нажатий на кнопку с тем, что выводим на дисплей? Т.е. кнопка, каждое нажатие - перебор, с отображением на дисплее: "1-А." > "2-А." > "3-А.", и далее, "по кольцу".
Цикл, инкремент. счетчик (от 0 до 2-х), типа 0 - "1-А.", 1 - "2-А.", 2 - "3-А." - так?

Ещё вопрос - а как правильно сегменты то кодируются? И как точка?
Если как в даташите на TIC9153, то какое-то смещение что ли есть?
смотрю строку "#define Dig0 0x5F", в битовом раскладе это будет 01011111. Будет что-то вроде большой русской буквы "У", повернутой по вертикали на 180 гр. Просто хочу разобраться и понять как кодируется, и как свои символы, если надо, добавить!!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср ноя 18, 2009 06:24:53 
Друг Кота

Карма: 64
Рейтинг сообщений: 1017
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4362
Откуда: Ижевск
Рейтинг сообщения: 0
Здравствуйте. Вот попробовал нарисовать как кодируется 0 в индикаторе с драйвером ML1001. Структура кодировки для других знакомест аналогична. SEG80...SEG73 всегда кодируются 0 и всегда передаются.


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср ноя 18, 2009 07:05:15 
Вымогатель припоя
Аватар пользователя

Карма: 1
Рейтинг сообщений: 0
Зарегистрирован: Пт ноя 28, 2008 20:34:39
Сообщений: 641
Откуда: Краматорск
Рейтинг сообщения: 0
Не буду говорить ничего лишнего. Просто прочитай внимательно даташит. И все станет ясно как принцип работы роторного испарителя.


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср ноя 18, 2009 09:20:06 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
akl писал(а):
SEG80...SEG73 всегда кодируются 0 и всегда передаются.

Неверно. Еще раз: принимает сдвиговый регистр. Хоть бит ему посылай. Стробом LOAD его содержание переписывается в регистр данных и отображается. Т.е. можно послать 1 байт и сдвинуть строку на 1 знакоместо. Проверено. Сдвигать на 1 бит не вижу смысла. Но тоже можно.
А эти сегменты - просто последние и ничего не отображают - нет знакоместа.

Цитата:
Ещё вопрос - а как правильно сегменты то кодируются? И как точка?
Если как в даташите на TIC9153, то какое-то смещение что ли есть?
смотрю строку "#define Dig0 0x5F", в битовом раскладе это будет 01011111. Будет что-то вроде большой русской буквы "У", повернутой по вертикали на 180 гр. Просто хочу разобраться и понять как кодируется, и как свои символы, если надо, добавить!!!

Насчет кодировки: что такое dot - перевести?
Что такое minus, dig0 ... dig9 объяснять? За минуту рисуется соответствие сегмент-бит в байте посылки. И нефиг приплетать что-то непонятно откуда взятое типа "будет буква У". Будет 0.


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср ноя 18, 2009 10:08:25 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
Кодировка 2:
//сегментное отображение цифр и букв
#define CharA 0xEE
#define CharC 0xF0
#define CharF 0xE4
#define CharU 0x7A
#define Charb 0x7C
#define Chard 0x3E
#define Charh 0x6C
#define Charo 0x3C
#define Charr 0x24
#define Chart 0x74
#define Charu 0x38
#define Dot 0x01

#define Minus 0x04
#define Dig0 0xFA
#define Dig1 0x0A
#define Dig2 0xB6
#define Dig3 0x9E
#define Dig4 0x4E
#define Dig5 0xDC
#define Dig6 0xFC
#define Dig7 0x8A
#define Dig8 0xFE
#define Dig9 0xDE

Т.е. как на рисунке от AKL.
В общем одна - если байт со старшего бита пихать, а другая - если с младшего. Какая откуда - не помню. Обе валяются в черновиках случайно на флешке оставшихся. Короче пробуйте.
Все что могу - дома посмотреть на работающий макет, если не забуду. Чтобы сообразить какая для чего.


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср ноя 18, 2009 10:48:49 
Открыл глаза

Зарегистрирован: Чт фев 14, 2008 16:12:52
Сообщений: 66
Рейтинг сообщения: 0
SergeBS писал(а):
Насчет кодировки: что такое dot - перевести?
Что такое minus, dig0 ... dig9 объяснять? За минуту рисуется соответствие сегмент-бит в байте посылки. И нефиг приплетать что-то непонятно откуда взятое типа "будет буква У". Будет 0.

SergeBS, не кипятитесь вы так! Dot и т.д. переводить/обьяснять не надо - английский учил в свое время! Я просто сперва не догнал, как в 8-ми битной посылке кодируется каждый сегмент и точка! Теперь - понятно, спасибо Вам и akl, за его рисунок!
Мне и хотелось узнать, что знакоместо (8 бит) кодируется так от мл. к ст. разр: сег.D, сег.E, сег.F, сег.A, сег.B, сег.G, сег.C, "точка", а не как я сперва думал: сег.A, сег.B, сег.C, сег.D, сег.E, сег.F, сег.G, "точка"
Исходя из этого, dot(точка) - 1000 0000 или 0x80.
Теперь все понятно! СПАСИБО большое!


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Сб дек 19, 2009 08:33:33 
Встал на лапы
Аватар пользователя

Карма: 5
Рейтинг сообщений: 5
Зарегистрирован: Вт фев 19, 2008 20:46:27
Сообщений: 99
Откуда: Новгород
Рейтинг сообщения: 0
akl писал(а):
Здравствуйте. Применял TIC33 с ML1001.

Не в тему спрошу: А что за девайс использован в качестве подставки на рисунке? С ртутным счетчиком наработки.


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Сб дек 19, 2009 14:45:05 
Друг Кота

Карма: 64
Рейтинг сообщений: 1017
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4362
Откуда: Ижевск
Рейтинг сообщения: 0
Склероз мне подсказывает, что это был Г3-118.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 14 ] 

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


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

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


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

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


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