Лабораторный БП PSL-3604
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
https://www.radiokot.ru/forum/viewtopic.php?p=2533716 библиотека tftbmp.ino
- Реклама
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
Запустил сенсорную панель, сделал таблицу возможных подключений сенсорной панели. Начал перебирать и заработало на этом варианте
Код: Выделить всё
//*** SCREEN PORTS ********
#if TS_INVERTED == NO
//****** Y -
#define TS_ADC_YM_CHANEL ADC_Channel_14
#define TS_YM_PORT GPIOC
#define TS_YM_PIN 4
//***** Y +
#define TS_ADC_YP_PORT GPIOB
#define TS_ADC_YP_PIN 7
//***** X -
#define TS_ADC_XM_CHANEL ADC_Channel_15
#define TS_ADC_XM_PORT GPIOC
#define TS_ADC_XM_PIN 5
//***** X +
#define TS_XP_PORT GPIOB
#define TS_XP_PIN 6- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
Немного дополню информации, попалась статья "работа с touchscreen" где в описании интересные строки
Всё работает, думаю на большинстве дисплеев тач расположен зеркально, отсюда и была проблема. Ещё надо организовать автоопределение драйвера дисплея, прописывать каждый раз вручную как то неправильно.
Поменял местами в функции uint16_t ts_Y_get_physic(void)Если на выводы пластины, к которой подаётся напряжение, вместо LOW подать HIGH, а вместо HIGH подать LOW (поменять местами уровни выводов), то считанное значение будет не обратно, а прямо пропорционально координате касания.
Код: Выделить всё
YP_OUT; YP_0; //YP_1
YM_OUT; YM_1; //YM_0Re: Лабораторный БП PSL-3604
Собрал переднюю панель блока, прошил контроллер. При подаче 5в на XP4 не загораются индикаторы. На нажатие кнопок панель реагирует характерным писком. Куда копать?
Re: Лабораторный БП PSL-3604
Подскажите по блоку? Для заливки прошивки достаточно подключить ЛБП к компу ? Если на ЛБП стоит чистый микроконтролер и чистая флешка.
- Реклама
Re: Лабораторный БП PSL-3604
ecat, платы где заказывал?
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
[uquote="ecat",url="/forum/viewtopic.php?p=4264683#p4264683"]Куда копать?[/uquote]Думаю перво-наперво проверить питание 3.3 и 5 V на МК и 74HCT595, смотреть непропаи и сопли. Какие индикаторы стоят с общим анодом или катодом? Может индикаторы вверх ногами вставлены.
Re: Лабораторный БП PSL-3604
Подайте не 5В, а 4,5в. У меня при 5в регистры затыкались, при 4,7в работали стабильно, может такая же ситуация. В итоге вместо 5в выставил на стабе 4,7в так и оставил.
Re: Лабораторный БП PSL-3604
А впаяна STM32F100С8T6 или 103
Есть такие решения, после принятия которых, тараканы в голове аплодируют стоя.
.......Отругал своих тараканов, рассадил в голове по полочкам, запретил меняться местами.....
Притихли, не беспокоят, шёпотом обсуждают какой я плохой......
.......Отругал своих тараканов, рассадил в голове по полочкам, запретил меняться местами.....
Притихли, не беспокоят, шёпотом обсуждают какой я плохой......
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
[uquote="bpf1",url="/forum/viewtopic.php?p=4264916#p4264916"]Для заливки прошивки достаточно подключить ЛБП к компу ?[/uquote]А что ещё можно придумать?
Или в чём вопрос?Для обновления прошивки необходимо подключение источника питания к
компьютеру через интерфейс USB. Обновление производится с помощью программы Flash
Loader Demonstrator от фирмы STM. Для того чтобы программа могла связаться с
микроконтроллером, нужно запустить встроенный загрузчик. Делается это
кратковременным нажатием кнопки BOOT на процессорной плате источника. После этого
нужно запустить Flash Loader Demonstrator и, следуя инструкциям, загрузить в
микроконтроллер источника обновленный файл прошивки psl-3604.hex. Затем следует
сбросить микроконтроллер, что можно сделать нажатием кнопки RESET на процессорной
плате или кратковременным выключением питания источника. После этого запустится
обновленная прошивка.
Re: Лабораторный БП PSL-3604
[quote="amv2000"][/quote]Или в чём вопрос?
Так там написано в инструкции для смены версии прошивки. А не для прошивки.
Спасибо за ответ с микроконт не дружу по этому и спрашиваю
Так там написано в инструкции для смены версии прошивки. А не для прошивки.
Спасибо за ответ с микроконт не дружу по этому и спрашиваю
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
Можно ещё через разъём SWD, но нужен программатор ST-Link V2.
- imon220
- Потрогал лапой паяльник
- Сообщения: 326
- Зарегистрирован: Сб июл 27, 2013 03:46:14
- Откуда: Р Крым
Re: Лабораторный БП PSL-3604
[uquote="amv2000",url="/forum/viewtopic.php?p=4231705#p4231705"]Запустил сенсорную панель, сделал таблицу возможных подключений сенсорной панели. Начал перебирать и заработало на этом варианте[/uquote]
Подскажите как вывести hex? у меня именно в этом проекте почему-то не выводится
Подскажите как вывести hex? у меня именно в этом проекте почему-то не выводится
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
[uquote="imon220",url="/forum/viewtopic.php?p=4269995#p4269995"]как вывести hex?[/uquote] https://www.keil.com/support/man/docs/u ... exfile.htm если кратко
в опциях проекта (Options for Target) на вкладке "Output" Установить галочку напротив строчки "Create HEX File"
- imon220
- Потрогал лапой паяльник
- Сообщения: 326
- Зарегистрирован: Сб июл 27, 2013 03:46:14
- Откуда: Р Крым
Re: Лабораторный БП PSL-3604
Наконец-то разобрался как вывести hex. Он ещё не хотел из-за того что не указал библиотеки и не активировал.
Экран запустил на чьей-то прошивки с названием ili9341 (у меня экран 9340)
Но проблема ч том что энкодер работает только в одну сторону.
Установил последнюю прошивку от автора, раскоментировав свой экран. Но там вообще не работает энкодер и кнопки и тач не завёлся https://ibb.co/F82Rh7y
Экран запустил на чьей-то прошивки с названием ili9341 (у меня экран 9340)
Но проблема ч том что энкодер работает только в одну сторону.
Установил последнюю прошивку от автора, раскоментировав свой экран. Но там вообще не работает энкодер и кнопки и тач не завёлся https://ibb.co/F82Rh7y
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
[uquote="imon220",url="/forum/viewtopic.php?p=4270780#p4270780"]энкодер работает только в одну сторону[/uquote]Пока не установишь в настройках максимальное напряжение и ток, энкодер не корректно работает. И там же в настройках включается сенсорная панель. У себя вообще в обработке энкодера убрал эти строки И добавил реверс.
[uquote="imon220",url="/forum/viewtopic.php?p=4270780#p4270780"]Экран запустил на чьей-то прошивки с названием ili9341 (у меня экран 9340)[/uquote]А что, если выбрать #define SUPPORT_9340 в файле LCD_DRIVER.h, то дисплей не работает?
Код: Выделить всё
//****** NO SPEED FAST PROCESSING *********************************
static uint8_t stateEnc;
uint8_t tmp;
uint8_t currentState = 0;
if ( GPIO_CHECK(ENCODER_A_PORT, ENCODER_A_PIN) != 0 ) { SetBit(currentState,0); }
if ( GPIO_CHECK(ENCODER_B_PORT, ENCODER_B_PIN) != 0 ) { SetBit(currentState,1); }
tmp = stateEnc;
if ( currentState == (tmp & 3)) { encoder_BUFFER = ENC_NOP; return ENC_NOP; }
tmp = (tmp<<2)|currentState;
stateEnc = tmp;
if (tmp == 225) { encoder_BUFFER = ENC_STEP; }
if (tmp == 210) { encoder_BUFFER = - ENC_STEP; }[uquote="imon220",url="/forum/viewtopic.php?p=4270780#p4270780"]Экран запустил на чьей-то прошивки с названием ili9341 (у меня экран 9340)[/uquote]А что, если выбрать #define SUPPORT_9340 в файле LCD_DRIVER.h, то дисплей не работает?
Код: Выделить всё
#if defined( SUPPORT_9340 ) || defined(SUPPORT_9341)
#if defined(SUPPORT_9340)
_lcd_ID = 0x9340;
_lcd_capable = AUTO_READINC | MIPI_DCS_REV1 | MV_AXIS | READ_24BITS | REV_SCREEN;
#elif defined(SUPPORT_9341)
_lcd_ID = 0x9341;
#endif
_lcd_capable = AUTO_READINC | MIPI_DCS_REV1 | MV_AXIS | READ_24BITS;
static const uint8_t ILI9341_regValues_2_4[] = { // BOE 2.4"
0xF6, 3, 0x01, 0x01, 0x00, //Interface Control needs EXTC=1 MV_EOR=0, TM=0, RIM=0
0xCF, 3, 0x00, 0x81, 0x30, //Power Control B [00 81 30]
0xED, 4, 0x64, 0x03, 0x12, 0x81, //Power On Seq [55 01 23 01]
0xE8, 3, 0x85, 0x10, 0x78, //Driver Timing A [04 11 7A]
0xCB, 5, 0x39, 0x2C, 0x00, 0x34, 0x02, //Power Control A [39 2C 00 34 02]
0xF7, 1, 0x20, //Pump Ratio [10]
0xEA, 2, 0x00, 0x00, //Driver Timing B [66 00]
0xB0, 1, 0x00, //RGB Signal [00]
0xB1, 2, 0x00, 0x1B, //Frame Control [00 1B]
// 0xB6, 2, 0x0A, 0xA2, 0x27, //Display Function [0A 82 27 XX] .kbv SS=1
0xB4, 1, 0x00, //Inversion Control [02] .kbv NLA=1, NLB=1, NLC=1
0xC0, 1, 0x21, //Power Control 1 [26]
0xC1, 1, 0x11, //Power Control 2 [00]
0xC5, 2, 0x3F, 0x3C, //VCOM 1 [31 3C]
0xC7, 1, 0xB5, //VCOM 2 [C0]
0x36, 1, 0x48, //Memory Access [00]
0xF2, 1, 0x00, //Enable 3G [02]
0x26, 1, 0x01, //Gamma Set [01]
0xE0, 15, 0x0f, 0x26, 0x24, 0x0b, 0x0e, 0x09, 0x54, 0xa8, 0x46, 0x0c, 0x17, 0x09, 0x0f, 0x07, 0x00,
0xE1, 15, 0x00, 0x19, 0x1b, 0x04, 0x10, 0x07, 0x2a, 0x47, 0x39, 0x03, 0x06, 0x06, 0x30, 0x38, 0x0f,
};
table8_ads = ILI9341_regValues_2_4, table_size = sizeof(ILI9341_regValues_2_4); //
// static const uint8_t ILI9341_regValues_ada[] = { // Adafruit_TFTLCD only works with EXTC=0
// // 0xF6, 3, 0x00, 0x01, 0x00, //Interface Control needs EXTC=1 TM=0, RIM=0
// // 0xF6, 3, 0x01, 0x01, 0x03, //Interface Control needs EXTC=1 RM=1, RIM=1
// 0xF6, 3, 0x09, 0x01, 0x03, //Interface Control needs EXTC=1 RM=0, RIM=1
// 0xB0, 1, 0x40, //RGB Signal [40] RCM=2
// 0xB4, 1, 0x00, //Inversion Control [02] .kbv NLA=1, NLB=1, NLC=1
// 0xC0, 1, 0x23, //Power Control 1 [26]
// 0xC1, 1, 0x10, //Power Control 2 [00]
// 0xC5, 2, 0x2B, 0x2B, //VCOM 1 [31 3C]
// 0xC7, 1, 0xC0, //VCOM 2 [C0]
// 0x36, 1, 0x88, //Memory Access [00]
// 0xB1, 2, 0x00, 0x1B, //Frame Control [00 1B]
// 0xB7, 1, 0x07, //Entry Mode [00]
// };
// table8_ads = ILI9341_regValues_ada, table_size = sizeof(ILI9341_regValues_ada); //
#define HEIGHT 320
#define WIDTH 240
#endif - imon220
- Потрогал лапой паяльник
- Сообщения: 326
- Зарегистрирован: Сб июл 27, 2013 03:46:14
- Откуда: Р Крым
Re: Лабораторный БП PSL-3604
Это отлично! Как раз у меня все китайские энкодеры идут наоборотИ добавил реверс.
нет. выбирал и 9341 и другие пробовал. Экран не работает, ставлю ту прошивку, экран заводитсяесли выбрать #define SUPPORT_9340 в файле LCD_DRIVER.h, то дисплей не работает?
PSL3604 ILI 9341_3 название прошивки, брал вроде ее на diod, но сейчас он вообще не работает
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
А откуда уверенность, что дисплей ILI9340?
- imon220
- Потрогал лапой паяльник
- Сообщения: 326
- Зарегистрирован: Сб июл 27, 2013 03:46:14
- Откуда: Р Крым
Re: Лабораторный БП PSL-3604
Только из-за того что на нем написано. Но даже если раскоментировать ili9341 (судя по названию прошивки) он тоже не работает
Сейчас перебираю по порядку, пока не завелся, больше половины прошел уже
Сейчас перебираю по порядку, пока не завелся, больше половины прошел уже
- amv2000
- Опытный кот
- Сообщения: 717
- Зарегистрирован: Вт апр 26, 2011 13:58:36
- Откуда: Ростовская область
Re: Лабораторный БП PSL-3604
[uquote="imon220",url="/forum/viewtopic.php?p=4271069#p4271069"]перебираю по порядку, пока не завелся, больше половины прошел уже[/uquote]Запустился или глухо?


