Сб май 07, 2022 19:21:59
Сб май 14, 2022 20:05:19
//*** 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
Ср май 18, 2022 11:47:07
Если на выводы пластины, к которой подаётся напряжение, вместо LOW подать HIGH, а вместо HIGH подать LOW (поменять местами уровни выводов), то считанное значение будет не обратно, а прямо пропорционально координате касания.
YP_OUT; YP_0; //YP_1
YM_OUT; YM_1; //YM_0
Вс июл 24, 2022 19:02:19
Пн июл 25, 2022 10:09:15
Пн июл 25, 2022 10:10:18
Пн июл 25, 2022 10:14:50
Пн июл 25, 2022 10:37:17
Пн июл 25, 2022 11:30:47
Пн июл 25, 2022 15:47:32
Или в чём вопрос?Для обновления прошивки необходимо подключение источника питания к
компьютеру через интерфейс USB. Обновление производится с помощью программы Flash
Loader Demonstrator от фирмы STM. Для того чтобы программа могла связаться с
микроконтроллером, нужно запустить встроенный загрузчик. Делается это
кратковременным нажатием кнопки BOOT на процессорной плате источника. После этого
нужно запустить Flash Loader Demonstrator и, следуя инструкциям, загрузить в
микроконтроллер источника обновленный файл прошивки psl-3604.hex. Затем следует
сбросить микроконтроллер, что можно сделать нажатием кнопки RESET на процессорной
плате или кратковременным выключением питания источника. После этого запустится
обновленная прошивка.
Вт июл 26, 2022 09:33:29
Вт июл 26, 2022 16:07:46
Вс авг 07, 2022 16:03:30
Пн авг 08, 2022 08:16:15
в опциях проекта (Options for Target) на вкладке "Output" Установить галочку напротив строчки "Create HEX File"
Вт авг 09, 2022 01:48:24
Вт авг 09, 2022 13:30:55
//****** 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; }
#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
Вт авг 09, 2022 14:43:35
И добавил реверс.
если выбрать #define SUPPORT_9340 в файле LCD_DRIVER.h, то дисплей не работает?
Вт авг 09, 2022 16:18:37
Вт авг 09, 2022 16:21:01
Ср авг 10, 2022 09:18:25