Отговори на тема  [ 70 мнения ]  Отиди на страница Предишна  1, 2, 3, 4, 5  Следваща
Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Фев 03, 2005 2:21 am
Мнения: 12764
Местоположение: София
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Така и не се изясни...
Оригиналният дисплей дефектира и се замества с друг, матричен, на който се изобразява информация като на оригиналния? На последната снимка не прилича на това.
Поврежда се дисплейния контролер и някой е написал заместител?
Друго?


Нед Май 26, 2024 8:51 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 20, 2005 12:02 pm
Мнения: 9119
Местоположение: Разград
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Спринта е много хубав за рисуване на платки с два чипа с по 10 крака. И аз така се мъчих известно време - някой от по сложните проекти излизаха без грешки чак на трета-четвърта итерация, да не говорим че ако имаш 10 по-големи чипа по платката трябва да помниш всичко - нетлист от хиляда нета да се мъчиш да го помниш е глупава идея. В момента на масата имам едни платки правени със спринт с тъпи грешки в тях - липсващи маси, объркани пинове... KiCad е без пари и с него могат да се правят и по сериозни платки.


Нед Май 26, 2024 10:03 am
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Мар 13, 2024 2:14 pm
Мнения: 71
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Ами въпрос на вкус казало кучето и си облизало г........ъ. Аз мога и със еплан 8 да работя но няма да седна да чертая схеми с нея. Нека не задълбаваме в глупави спорове, има коли за всички. От ролсройс до трабант, нека всеки сам избира на какво да се таркаля по улиците. Най важното е да си върши работата за която е тръгнал.

_________________
Денят е прекрасен, забеляза ли го.


Нед Май 26, 2024 1:25 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Говорех за тия области:

Прикачени файлове:
Clipboard02.png
Clipboard02.png [ 1.18 MiB | Прегледано 2917 пъти ]


Прикачени файлове:
Clipboard03.png
Clipboard03.png [ 377.41 KiB | Прегледано 2917 пъти ]


Вероятно няма да мине без дебъгване на фърмуера. (както и без логически анализатор от някакъв тип).
Може да е проблем с таймингите, както и неправилни логически нива...
Японеца е свързал новия дисплей към контролера за памети на STM32, което не е лошо решение, но аз по-скоро бих постъпил обратното - там щях да свържа входа от радиото и да ползвам DMA-то да чете данните от там. Така нямаше да се губят байтове на входа поне. Изхода сигурно щеше да е по-бавен. Но ако се замисли човек може да измисли и по-оптимално решение.

Предполагам че проблема на стария дисплей са липсващи пиксели? Вероятно може да се разреши със смяна на "лепкавия" кабел между контролера и стъклото. В Али продават разни варианти (на кабели), сигурно може да се намери заместител.

Ако имаш логическо мислене и време на разположение, програмирането не е мираж. За такива проекти особено...


Нед Май 26, 2024 7:25 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Мар 13, 2024 2:14 pm
Мнения: 71
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Ами не знам, може да е било лош контакт от многото проби и смяна на дисплеи. Там има нещо което потдържа рамта може да трябва да сменям нещо. Може изсъхнали кондензатори да смущават процесора. Говорим за 30 годишно радио, все пак всяка намеса и промяна оказва влияние. За мен проблема е решен, не смятам да променям нещо. Сигурен съм, че би могло да се направи по-хубаво и по-добре. Но това не стои като задача пред мен. Така е, хората в коментарите пишат за проблемите на това решение. Но то е достатъчно задоволително за удължаване живота на това радио което на световен мащаб вероятно много хора са изхвърлили след повреждането му. И хората които биха искали да си го имат от нусталгия не са много.

_________________
Денят е прекрасен, забеляза ли го.


Нед Май 26, 2024 9:32 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Мар 13, 2024 2:14 pm
Мнения: 71
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Привет на всички, все пак след година се престраших да погледна и потърся къде е проблема със грешно показващите символи за които Велио писа по-горе. След като разгледах майн файла видях че са нарисувани букви със стрингове и интервали. Това е записано със четири шестнадесетични числа. Например "0x7F, 0xE0, // ##########"

const uint8_t Font1611_Table[] =
{
// @0 'l' (11 pixels wide)
0x00, 0x00, //
0x7F, 0xE0, // ##########
0xCF, 0xE0, //## #######
0xCF, 0xE0, //## #######
0xCF, 0xE0, //## #######
0xCF, 0xE0, //## #######
0xCF, 0xE0, //## #######
0xC0, 0x60, //## ##
0xC0, 0x60, //## ##
0x7F, 0xE0, // ##########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @32 'o' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x80, 0x00, //
0x80, 0x00, //
0xFF, 0xE0, //############
0xFF, 0xE0, //############
0xFF, 0xE0, //############
0x8E, 0x00, // ###
0x8E, 0x00, // ###
0x0E, 0x00, // ###
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @64 'c' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0xFF, 0x80, //############
0xFF, 0x80, //############
0xFF, 0x80, //############
0x1C, 0x00, // ###
0x1C, 0x00, // ###
0x1C, 0x00, // ###
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @96 'f' (11 pixels wide)
0x00, 0x00, //
0x7F, 0xC0, // ##########
0xC0, 0x60, //## ##
0xC0, 0x60, //## ##
0xCF, 0xE0, //## ########
0xCF, 0xE0, //## ########
0xC0, 0xE0, //## ###
0xC0, 0xE0, //## ###
0xCF, 0xE0, //## ########
0xCF, 0xE0, //## ########
0xCF, 0xE0, //## ########
0x7F, 0xC0, // ##########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @128 'b' (11 pixels wide)
0x00, 0x00, //
0x7F, 0xE0, // ###########
0xC0, 0x60, //## ##
0xC0, 0x20, //## #
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xC0, 0x60, //## ##
0xC0, 0x60, //## ##
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xC0, 0x20, //## #
0xC0, 0x60, //## ##
0x7F, 0xE0, // ###########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @160 'u' (11 pixels wide)
0x00, 0x00, //
0xFF, 0xE0, //############
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xCF, 0x20, //## ##### #
0xC0, 0x20, //## #
0xE0, 0x60, //### ##
0xFF, 0xE0, //############
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @192 's' (11 pixels wide)
0x00, 0x00, //
0xFF, 0xE0, //############
0xE0, 0x60, //### ##
0xC0, 0x60, //## ##
0x9F, 0xE0, //# ########
0x9F, 0xE0, //# ########
0xC0, 0xE0, //## ###
0xE0, 0x60, //### ##
0xFF, 0x20, //######### #
0xFE, 0x20, //######### #
0xC0, 0x60, //## #
0xC0, 0xE0, //## ##
0xFF, 0xE0, //############
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @224 'y' (11 pixels wide)
0x00, 0x00, //
0xFF, 0xC0, //###########
0x9E, 0x60, //# ##### ##
0x9E, 0x60, //# ##### ##
0x9E, 0x60, //# ##### ##
0x9E, 0x60, //# ##### ##
0xDE, 0xE0, //## ##### ###
0xED, 0xE0, //### ### ####
0xF3, 0xE0, //#### ######
0xF3, 0xE0, //#### ######
0xF3, 0xE0, //#### ######
0xF3, 0xE0, //#### ######
0xFF, 0xC0, //###########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @256 'L' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x18, 0x00, // ##
0x18, 0x00, // ##
0x18, 0x00, // ##
0x18, 0x00, // ##
0x18, 0x00, // ##
0x18, 0x00, // ##
0x18, 0x00, // ##
0x1F, 0xC0, // ########
0x1F, 0xC0, // ########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @288 'S' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x0F, 0x80, // ######
0x1F, 0xC0, // ## ##
0x30, 0xC0, // ## ##
0x38, 0x00, // ###
0x1F, 0x00, // #####
0x03, 0x80, // ###
0x30, 0xC0, // ## ##
0x3F, 0xC0, // ## ##
0x1F, 0x80, // ######
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @320 'B' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ########
0x7F, 0xC0, // #########
0x60, 0x60, // ## ##
0x60, 0xE0, // ## ###
0x7F, 0xC0, // ########
0x60, 0xE0, // ## ###
0x60, 0x60, // ## ##
0x7F, 0xC0, // ##########
0x7F, 0x80, // #########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @352 'U' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x39, 0xC0, // ### ###
0x0F, 0x00, // ####
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @384 'C' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x0F, 0x00, // ####
0x1F, 0xC0, // #######
0x30, 0xC0, // ## ##
0x60, 0x00, // ##
0x60, 0x00, // ##
0x60, 0x60, // ## ##
0x30, 0xE0, // ### ###
0x1F, 0xC0, // ########
0x0F, 0x00, // #####
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @416 'W' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, // ## ##
0x66, 0x60, // ## ## ##
0x66, 0x60, // ## ## ##
0x66, 0x60, // ## ## ##
0x2F, 0x40, // # #### #
0x29, 0x40, // # # # #
0x29, 0x40, // # # # #
0x39, 0xC0, // ### ###
0x30, 0xC0, // ## ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @448 'A' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x06, 0x00, // ##
0x0F, 0x00, // ####
0x09, 0x00, // # #
0x19, 0x80, // ## ##
0x10, 0x80, // # #
0x3F, 0xC0, // ########
0x3F, 0xC0, // ########
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @480 'M' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x79, 0xE0, // #### ####
0x79, 0xE0, // #### ####
0x69, 0x60, // ## # # ##
0x69, 0x60, // ## # # ##
0x69, 0x60, // ## # # ##
0x6F, 0x60, // ## #### ##
0x6F, 0x60, // ## ## ##
0x66, 0x60, // ## ## ##
0x66, 0x60, // ## ## ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @512 '-' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x3F, 0x80, // #######
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @544 'N' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x70, 0x60, // ### ##
0x78, 0x60, // #### ##
0x7C, 0x60, // ##### ##
0x6C, 0x60, // ## ## ##
0x66, 0x60, // ## ## ##
0x67, 0x60, // ## ### ##
0x63, 0xE0, // ## #####
0x61, 0xE0, // ## ####
0x60, 0xE0, // ## ###
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @576 'F' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ########
0x7F, 0x80, // ########
0x60, 0x00, // ##
0x60, 0x00, // ##
0x7F, 0x00, // #######
0x7F, 0x00, // #######
0x60, 0x00, // ##
0x60, 0x00, // ##
0x60, 0x00, // ##
0x60, 0x00, // ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @608 'T' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0xE0, // ##########
0x7F, 0xE0, // ##########
0x06, 0x00, // ##
0x06, 0x00, // ##
0x06, 0x00, // ##
0x06, 0x00, // ##
0x06, 0x00, // ##
0x06, 0x00, // ##
0x06, 0x00, // ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @640 'O' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x1F, 0x00, // #####
0x31, 0x80, // ## ##
0x60, 0xC0, // ## ##
0x60, 0xC0, // ## ##
0x60, 0xC0, // ## ##
0x60, 0xC0, // ## ##
0x60, 0xC0, // ## ##
0x31, 0x80, // ## ##
0x1F, 0x00, // #####
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @672 'k' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x18, 0x00, // ##
0x18, 0x00, // ##
0x18, 0x00, // ##
0x19, 0x80, // ## ##
0x1B, 0x00, // ## ##
0x1E, 0x00, // ####
0x19, 0x00, // ## #
0x18, 0xC0, // ## ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @704 'H' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x7F, 0xE0, // ##########
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @736 'z' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x3F, 0x80, // #######
0x21, 0x80, // # ##
0x03, 0x00, // ##
0x0E, 0x00, // ###
0x18, 0x00, // ##
0x30, 0x80, // ## #
0x3F, 0x80, // #######
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @768 'E' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0xC0, // #########
0x7F, 0xC0, // #########
0x60, 0x00, // ##
0x60, 0x00, // ##
0x7F, 0x80, // #######
0x60, 0x00, // ##
0x60, 0x00, // ##
0x7F, 0xC0, // #########
0x7F, 0xC0, // #########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @800 'P' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ########
0x7F, 0xC0, // #########
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x7F, 0xC0, // #########
0x7F, 0x80, // ########
0x60, 0x00, // ##
0x60, 0x00, // ##
0x60, 0x00, // ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @832 'D' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ########
0x7F, 0xC0, // #########
0x60, 0xE0, // ## ###
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x60, 0xE0, // ## ###
0x7F, 0xC0, // #########
0x7F, 0x80, // ########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @864 'Y' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x30, 0xC0, // ## ##
0x19, 0x80, // ## ##
0x0F, 0x00, // ####
0x06, 0x00, // ##
0x06, 0x00, // ##
0x06, 0x00, // ##
0x06, 0x00, // ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @896 'K' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x61, 0x80, // ## ##
0x63, 0x00, // ## ##
0x66, 0x00, // ## ##
0x6C, 0x00, // ## ##
0x78, 0x00, // ####
0x78, 0x00, // ####
0x6E, 0x00, // ## ###
0x67, 0x80, // ## ##
0x61, 0x80, // ## ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @928 'I' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x0C, 0x00, // ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @960 '>' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x40, 0x00, // #
0x70, 0x00, // ###
0x7C, 0x00, // ######
0x7F, 0x00, // ########
0x7F, 0x80, // #########
0x7F, 0x00, // ########
0x7C, 0x00, // ######
0x70, 0x00, // ###
0x40, 0x00, // #
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @992 'R' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ######
0x7F, 0xC0, // #######
0x60, 0x60, // ## ##
0x60, 0x60, // ## ##
0x7F, 0xC0, // #####
0x7F, 0x80, // ######
0x63, 0x00, // ## ##
0x61, 0x80, // ## ##
0x60, 0xC0, // ## ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @1024 'CH' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x32, 0x20, // ## # #
0x4A, 0x20, // # # # #
0x82, 0x20, //# # #
0x82, 0x20, //# # #
0x83, 0xE0, //# #####
0x82, 0x20, //# # #
0x82, 0x20, //# # #
0x4A, 0x20, // # # # #
0x32, 0x20, // ## # #
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @1056 '■■' (11 pixels wide)
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########

};

Както се вижда две букви липсват графично "о" и "с", но във ляво са записани шестнадесет битови числа. Забелязах също, че при едно и също графично съдържание, числата в ляво не съвпадат винаги. Пише че са широки 11 пиксела-символа, но има и 12 например "В".
Моя въпрос е може ли да ми кажете как се конвертира графичната информация от реда в дясно в щеснадесетични числа в ляво?
Реших да ползвам следната логика, за интервал=0, а за стинг=1. Например за буквата ел;
0x7F,0xE0 0111111111100000 ##########
0xCF,0xE0 1100111111100000 ## #######
0xCF,0xE0 1100111111100000 ## #######
0xCF,0xE0 1100111111100000 ## #######
0xCF,0xE0 1100111111100000 ## #######
0xCF,0xE0 1100111111100000 ## #######
0xC0,0x60 1100000001100000 ## ##
0xC0,0x60 1100000001100000 ## ##
0x7F,0xE0 0111111111100000 ##########
След което разделям полученото число на 4 четирибитови числа и ги записвам в шестнадесетичен вид. Например първият ред; 0111-7, 1111-F, 1110-E, 0000-0 " ##########"
Но по тази логика като проверявам останалите числа не всички отговарят на графиката изписана в реда. Явно има грешки които японеца е сложил нарочно, за да се потруди човек да ги оправи. Или аз се бъркам в логиката ми на разбиране на нещата. Но ми трябва правилния алгоритъм за преобразуването на реда в числа. Така ще си нарисувам и проверя всички букви дали са програмирани правилно.

P.S. Забелязах нещо странно и същевременно интересно. Извадката от файла която съм дал се промени графично в сравнение с това което съм сложил. И шантавите символи на дисплея са същите май.... Форума нещо прави с числата или???
Ето снимка на първите 3 символа.


Прикачени файлове:
snimka.jpg
snimka.jpg [ 238.32 KiB | Прегледано 1649 пъти ]

_________________
Денят е прекрасен, забеляза ли го.
Вто Юни 10, 2025 7:09 pm
Профил
Ранг: Ориентиран
Ранг: Ориентиран
Аватар

Регистриран на: Съб Фев 06, 2016 8:29 pm
Мнения: 237
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
shri написа:
... Форума нещо прави с числата или???

Форумът си е е ОК. :evil:
Трябва да знаеш, че като "пастваш" сорс код, той обикновено е писан и форматиран за фиксиран шрифт. За това има бутонче 'Code', което вмъква управляващ символ и така кода изглежда както трябва!
Код:
// @960 '>' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x40, 0x00, // #
0x70, 0x00, // ###
0x7C, 0x00, // ######
0x7F, 0x00, // ########
0x7F, 0x80, // #########
0x7F, 0x00, // ########
0x7C, 0x00, // ######
0x70, 0x00, // ###
0x40, 0x00, // #
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //


Така ще ти изглежда кода и ако го сложиш в Word с шрифт Таймс Ню Роман. :twisted:


Вто Юни 10, 2025 8:27 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Мар 13, 2024 2:14 pm
Мнения: 71
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Извинявам се това не го знаех. Ако може модераторите да изтрият кода от предния ми пост. Ето го коректно показан.
Код:
const uint8_t Font1611_Table[] =
{
// @0 'l' (11 pixels wide)
0x00, 0x00, //
0x7F, 0xE0, // ##########
0xCF, 0xE0, //##  #######
0xCF, 0xE0, //##  #######
0xCF, 0xE0, //##  #######
0xCF, 0xE0, //##  #######
0xCF, 0xE0, //##  #######
0xC0, 0x60, //##       ##
0xC0, 0x60, //##       ##
0x7F, 0xE0, // ##########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @32 'o' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x80, 0x00, //
0x80, 0x00, //
0xFF, 0xE0, //############
0xFF, 0xE0, //############
0xFF, 0xE0, //############
0x8E, 0x00, //     ###
0x8E, 0x00, //     ###
0x0E, 0x00, //     ###
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @64 'c' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0xFF, 0x80, //############
0xFF, 0x80, //############
0xFF, 0x80, //############
0x1C, 0x00, //     ###
0x1C, 0x00, //     ###
0x1C, 0x00, //     ###
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @96 'f' (11 pixels wide)
0x00, 0x00, //
0x7F, 0xC0, // ##########
0xC0, 0x60, //##        ##
0xC0, 0x60, //##        ##
0xCF, 0xE0, //##  ########
0xCF, 0xE0, //##  ########
0xC0, 0xE0, //##       ###
0xC0, 0xE0, //##       ###
0xCF, 0xE0, //##  ########
0xCF, 0xE0, //##  ########
0xCF, 0xE0, //##  ########
0x7F, 0xC0, // ##########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @128 'b' (11 pixels wide)
0x00, 0x00, //
0x7F, 0xE0, // ###########
0xC0, 0x60, //##        ##
0xC0, 0x20, //##         #
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xC0, 0x60, //##        ##
0xC0, 0x60, //##        ##
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xC0, 0x20, //##         #
0xC0, 0x60, //##        ##
0x7F, 0xE0, // ###########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @160 'u' (11 pixels wide)
0x00, 0x00, //
0xFF, 0xE0, //############
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xCF, 0x20, //##  #####  #
0xC0, 0x20, //##         #
0xE0, 0x60, //###       ##
0xFF, 0xE0, //############
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @192 's' (11 pixels wide)
0x00, 0x00, //
0xFF, 0xE0, //############
0xE0, 0x60, //###       ##
0xC0, 0x60, //##        ##
0x9F, 0xE0, //#   ########
0x9F, 0xE0, //#   ########
0xC0, 0xE0, //##       ###
0xE0, 0x60, //###       ##
0xFF, 0x20, //#########  #
0xFE, 0x20, //#########  #
0xC0, 0x60, //##         #
0xC0, 0xE0, //##        ##
0xFF, 0xE0, //############
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @224 'y' (11 pixels wide)
0x00, 0x00, //
0xFF, 0xC0, //###########
0x9E, 0x60, //#  #####  ##
0x9E, 0x60, //#  #####  ##
0x9E, 0x60, //#  #####  ##
0x9E, 0x60, //#  #####  ##
0xDE, 0xE0, //## ##### ###
0xED, 0xE0, //### ### ####
0xF3, 0xE0, //####  ######
0xF3, 0xE0, //####  ######
0xF3, 0xE0, //####  ######
0xF3, 0xE0, //####  ######
0xFF, 0xC0, //###########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @256 'L' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x18, 0x00, //   ##
0x18, 0x00, //   ##
0x18, 0x00, //   ##
0x18, 0x00, //   ##
0x18, 0x00, //   ##
0x18, 0x00, //   ##
0x18, 0x00, //   ##
0x1F, 0xC0, //   ########
0x1F, 0xC0, //   ########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @288 'S' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x0F, 0x80, //    ######
0x1F, 0xC0, //   ##   ##
0x30, 0xC0, //   ##   ##
0x38, 0x00, //   ###
0x1F, 0x00, //    #####
0x03, 0x80, //       ###
0x30, 0xC0, //   ##   ##
0x3F, 0xC0, //   ##   ##
0x1F, 0x80, //   ######
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @320 'B' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ########
0x7F, 0xC0, // #########
0x60, 0x60, // ##      ##
0x60, 0xE0, // ##      ###
0x7F, 0xC0, // ########
0x60, 0xE0, // ##      ###
0x60, 0x60, // ##       ##
0x7F, 0xC0, // ##########
0x7F, 0x80, // #########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @352 'U' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x39, 0xC0, //   ###  ###
0x0F, 0x00, //     ####
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @384 'C' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x0F, 0x00, //     ####
0x1F, 0xC0, //    #######
0x30, 0xC0, //   ##    ##
0x60, 0x00, //  ##
0x60, 0x00, //  ##
0x60, 0x60, //  ##      ##
0x30, 0xE0, //  ###    ###
0x1F, 0xC0, //   ########
0x0F, 0x00, //    #####
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @416 'W' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, // ##      ##
0x66, 0x60, // ##  ##  ##
0x66, 0x60, // ##  ##  ##
0x66, 0x60, // ##  ##  ##
0x2F, 0x40, //  # #### #
0x29, 0x40, //  # #  # #
0x29, 0x40, //  # #  # #
0x39, 0xC0, //  ###  ###
0x30, 0xC0, //  ##    ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @448 'A' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x06, 0x00, //      ##
0x0F, 0x00, //     ####
0x09, 0x00, //     #  #
0x19, 0x80, //    ##  ##
0x10, 0x80, //    #    #
0x3F, 0xC0, //   ########
0x3F, 0xC0, //   ########
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @480 'M' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x79, 0xE0, //  ####  ####
0x79, 0xE0, //  ####  ####
0x69, 0x60, //  ## #  # ##
0x69, 0x60, //  ## #  # ##
0x69, 0x60, //  ## #  # ##
0x6F, 0x60, //  ## #### ##
0x6F, 0x60, //  ##  ##  ##
0x66, 0x60, //  ##  ##  ##
0x66, 0x60, //  ##  ##  ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @512 '-' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x3F, 0x80, //   #######
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @544 'N' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x70, 0x60, //  ###     ##
0x78, 0x60, //  ####    ##
0x7C, 0x60, //  #####   ##
0x6C, 0x60, //  ## ##   ##
0x66, 0x60, //  ##  ##  ##
0x67, 0x60, //  ##  ### ##
0x63, 0xE0, //  ##   #####
0x61, 0xE0, //  ##    ####
0x60, 0xE0, //  ##     ###
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @576 'F' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, //  ########
0x7F, 0x80, //  ########
0x60, 0x00, //  ##
0x60, 0x00, //  ##
0x7F, 0x00, //  #######
0x7F, 0x00, //  #######
0x60, 0x00, //  ##
0x60, 0x00, //  ##
0x60, 0x00, //  ##
0x60, 0x00, //  ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @608 'T' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0xE0, //  ##########
0x7F, 0xE0, //  ##########
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @640 'O' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x1F, 0x00, //    #####
0x31, 0x80, //   ##   ##
0x60, 0xC0, //  ##     ##
0x60, 0xC0, //  ##     ##
0x60, 0xC0, //  ##     ##
0x60, 0xC0, //  ##     ##
0x60, 0xC0, //  ##     ##
0x31, 0x80, //   ##   ##
0x1F, 0x00, //    #####
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @672 'k' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x18, 0x00, //  ##
0x18, 0x00, //  ##
0x18, 0x00, //  ##
0x19, 0x80, //  ##  ##
0x1B, 0x00, //  ## ##
0x1E, 0x00, //  ####
0x19, 0x00, //  ##  #
0x18, 0xC0, //  ##   ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @704 'H' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x7F, 0xE0, //  ##########
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x60, 0x60, //  ##      ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @736 'z' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x3F, 0x80, //   #######
0x21, 0x80, //   #    ##
0x03, 0x00, //       ##
0x0E, 0x00, //     ###
0x18, 0x00, //    ##
0x30, 0x80, //   ##    #
0x3F, 0x80, //   #######
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @768 'E' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0xC0, //  #########
0x7F, 0xC0, //  #########
0x60, 0x00, //  ##
0x60, 0x00, //  ##
0x7F, 0x80, //  #######
0x60, 0x00, //  ##
0x60, 0x00, //  ##
0x7F, 0xC0, //  #########
0x7F, 0xC0, //  #########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @800 'P' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ########
0x7F, 0xC0, // #########
0x60, 0x60, // ##      ##
0x60, 0x60, // ##      ##
0x7F, 0xC0, // #########
0x7F, 0x80, // ########
0x60, 0x00, // ##
0x60, 0x00, // ##
0x60, 0x00, // ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @832 'D' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, // ########
0x7F, 0xC0, // #########
0x60, 0xE0, // ##     ###
0x60, 0x60, // ##      ##
0x60, 0x60, // ##      ##
0x60, 0x60, // ##      ##
0x60, 0xE0, // ##     ###
0x7F, 0xC0, // #########
0x7F, 0x80, // ########
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @864 'Y' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x60, 0x60, // ##       ##
0x60, 0x60, // ##       ##
0x30, 0xC0, //  ##     ##
0x19, 0x80, //    ##  ##
0x0F, 0x00, //     ####
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x06, 0x00, //      ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @896 'K' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x61, 0x80, // ##    ##
0x63, 0x00, // ##   ##
0x66, 0x00, // ##  ##
0x6C, 0x00, // ## ##
0x78, 0x00, // ####
0x78, 0x00, // ####
0x6E, 0x00, // ## ###
0x67, 0x80, // ##   ##
0x61, 0x80, // ##    ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @928 'I' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x0C, 0x00, //    ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @960 '>' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x40, 0x00, // #
0x70, 0x00, // ###
0x7C, 0x00, // ######
0x7F, 0x00, // ########
0x7F, 0x80, // #########
0x7F, 0x00, // ########
0x7C, 0x00, // ######
0x70, 0x00, // ###
0x40, 0x00, // #
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @992 'R' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x7F, 0x80, //   ######
0x7F, 0xC0, //   #######
0x60, 0x60, //   ##   ##
0x60, 0x60, //   ##   ##
0x7F, 0xC0, //   #####
0x7F, 0x80, //   ######
0x63, 0x00, //   ##  ##
0x61, 0x80, //   ##   ##
0x60, 0xC0, //   ##    ##
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @1024 'CH' (11 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x32, 0x20, //  ##  #   #
0x4A, 0x20, // #  # #   #
0x82, 0x20, //#     #   #
0x82, 0x20, //#     #   #
0x83, 0xE0, //#     #####
0x82, 0x20, //#     #   #
0x82, 0x20, //#     #   #
0x4A, 0x20, // #  # #   #
0x32, 0x20, //  ##  #   #
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //

// @1056 '■■' (11 pixels wide)
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########
0xFF, 0xFF, //###########

};

_________________
Денят е прекрасен, забеляза ли го.


Вто Юни 10, 2025 10:20 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Ето някои мои мисли.
1. Не видях знак с повече от 11 бита. Описанието е побитово, като 1 е равно на активен пиксел, 0 - пасивен пиксел. И понеже знака е 11 пиксела широк се описва с два байта, като е подравнен вляво - т.е. младшите 5 бита на втория байт винаги са 0. И така изглежда да са всички символи от това което си публикувал.
2. Тоя шрифт е или 12 или 16 пиксела висок. 4 пиксела са неактивни (1 отгоре и 3 отдолу за повечето символи). Не знам защо е описан така.
3. Ако проблема е в шрифта, трябва да търсиш друг шрифт в кода, който да бъде 7 пиксела висок и най-вероятно само 5 пиксела широк - такива изглежда да са символите на долния сгрешен ред. Освен това, в горното сгрешено поле символите имитират 7 сегментен индикатор. Отново съвсем отделен шрифт (трети).

Ако има такива шрифтове в кода и изглеждат правилно нарисувани, значи проблема е някъде другаде....


Чет Юни 12, 2025 3:07 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Мар 13, 2024 2:14 pm
Мнения: 71
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Аз имам в предвид долния ред от грешки. За горния ред нещата седят така, точно както казваш. Още в началото бях писал, че оригиналния дисплей е комбиниран една част е матричен, по-голямата и една част е с нарисъвани символи. Опитвах се да заснема структората на оригиналния дисплей но не успях. Много исках да го покажа за да стане ясно точно каква е архитектурата му. Горния ред е два или три седемсегментни индикатори. Неговата задача е да показва стъпката на синтезатора. Съответно 5,10,15,25,и 100Кхц. За последното не съм сигурен. Това което забелязвам, че при първоначално пускане този надпис е винаги коректен. В момента в който се предприеме някакво действие- натискане на бутон смяна на честотата този надпис се разваля и повече не показва точно до следващото включване на радиото.
Докато долния надпис е винаги греше. И понеже той трябва да се изпише с пиксели предполагам, че тези букви отговарят за него. Аз си мислех че тези букви се рисуват по някакъв начин на дисплея на определените места.
Но моя въпрос беше, какво означават тези шестнадесетични числа? Аз мога да си ги нарисувам буквите със стингове и интервали. Но как да ги преобразувам в числа?

_________________
Денят е прекрасен, забеляза ли го.


Чет Юни 12, 2025 4:34 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Вто Мар 21, 2006 10:46 am
Мнения: 6
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
shri написа:
Но моя въпрос беше, какво означават тези шестнадесетични числа? Аз мога да си ги нарисувам буквите със стингове и интервали. Но как да ги преобразувам в числа?

Битова маска. Или, където трябва да има '#' е '1', а празното е '0'. Губи ти се превръщането от шестнадесетично към двоично.
Пример: '0xFF' означава '11111111' или '###########'. С калкулатора на Windows можеш лесно да ги обръщаш.
След като си ги нарисуваш, заместваш диеза с 1, празното с 0. Въвеждаш го като бинарно число и го конвертираш в шестнадесетично.


Чет Юни 12, 2025 5:23 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Мар 13, 2024 2:14 pm
Мнения: 71
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Добре, цифрите са две. Имам 11 символа знак. Как трябва да го разделя на две цифри? Аз именно по тази логика тръгнах и по-горе. Но си мислих че трябва да разделя на по 4 бита, а ти казваш 8 бита е едно число. Останалите 3 как ги превръщам. Или на края записвам една 0 и става от 3 на 4 битово?
Сметни ми например вторият ред от първата буква ел. Той изглежда така "0xCF, 0xE0, //## #######". Или 2 диеза 2 интервала 7 диеза. Как да проверя дали даденото число в ляво е вярно-0xCF, 0xE0.
Използвам тази таблица за превръщането.
Прикачени файлове:
tablica.jpg
tablica.jpg [ 152.54 KiB | Прегледано 1504 пъти ]

_________________
Денят е прекрасен, забеляза ли го.


Чет Юни 12, 2025 5:53 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Вто Мар 21, 2006 10:46 am
Мнения: 6
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Значи, имаш общо 16 бита (символа). Всяка 16-на цифра се кодира с 4 бита. Така "0xCF, 0xE0" става "1100 1111 1110 0000". Като на дисплея имаш място само за 12 символа. Затова останалите са 0.
Код:
0xCF, 0xE0, //##  #######
0xCF, 0xE0, //1100111111100000


Чет Юни 12, 2025 6:09 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Мар 13, 2024 2:14 pm
Мнения: 71
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Благодаря, така ще проверя всички букви дали са правилно изписани. Предполагам че японеца нарочно е направил някой грешки. За това изписва тези грешни символи. То исхемата му видяхте беше смешна в ексел. Мисля той не е глупав, просто оставя "многоточия" в нещата си нарочно.

_________________
Денят е прекрасен, забеляза ли го.


Чет Юни 12, 2025 6:23 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Сря Май 11, 2011 9:18 am
Мнения: 367
Мнение Re: Дисплей за радиоприемник Yaesu VR-5000 със STM32F40VGТ
Най-бързо ще стане с елката на уиндоуса, избираш View/Programmer. Цъкаш на Hex и пишеш CFE0, после цъкаш на bin и виждаш 1100111111100000. Това с калкулатора на win7, на десятката ти показва резултата във всичките бройни системи.


Чет Юни 12, 2025 6:39 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 70 мнения ]  Отиди на страница Предишна  1, 2, 3, 4, 5  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 10 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни