pref: 显示优化

This commit is contained in:
bmy
2024-03-10 21:21:01 +08:00
parent 7431954d99
commit 2ac9696ef8
5 changed files with 44 additions and 34 deletions

View File

@@ -2,6 +2,7 @@
#define TRACKING
extern float (*mid_track)[2];
extern int32_t mid_track_count;
extern float pure_angle;
extern float dx_near;

View File

@@ -2,11 +2,6 @@
#include "zf_common_headfile.h"
#define BT_UART_BAUDRATE (115200)
#define BT_UART_INDEX UART_8
#define BT_UART_TX_PIN UART8_MAP0_TX_C4
#define BT_UART_RX_PIN UART8_MAP0_RX_C5
bool bt_rx_flag = false;
uint8_t bt_buffer; // 接收字符存入

View File

@@ -3,6 +3,11 @@
#include "stdio.h"
#define BT_UART_BAUDRATE (115200)
#define BT_UART_INDEX UART_8
#define BT_UART_TX_PIN UART8_MAP0_TX_C4
#define BT_UART_RX_PIN UART8_MAP0_RX_C5
void jj_bt_init();
void jj_bt_run();
void jj_bt_printf(const char *format, ...);

View File

@@ -2,6 +2,9 @@
#include "page_ui_widget.h"
#include "page.h"
#include "jj_blueteeth.h"
#include "gl_data.h"
#define LINE_HEAD 11
#define LINE_END 16
@@ -21,7 +24,7 @@ static int8_t Curser_Last = LINE_HEAD; // 定义光标位置
static void Setup()
{
ips200_clear();
Print_Curser(Curser, Curser_Last,RGB565_PURPLE);
Print_Curser(Curser, Curser_Last, RGB565_PURPLE);
}
/**
@@ -69,7 +72,7 @@ static void Event(page_event event)
Curser = LINE_HEAD;
}
Print_Curser(Curser, Curser_Last,RGB565_PURPLE);
Print_Curser(Curser, Curser_Last, RGB565_PURPLE);
}
/**

View File

@@ -8,7 +8,7 @@
* @param Curser_In 当前光标位置
* @param Curser_Last_In 上一时刻光标位置
*/
void Print_Curser(uint8_t Curser_In, uint8_t Curser_Last_In,uint16_t color)
void Print_Curser(uint8_t Curser_In, uint8_t Curser_Last_In, uint16_t color)
{
// ips200_show_string(0, Curser_Last_In * 18, " ");
// ips200_show_string(0, Curser_In * 18, ">");
@@ -151,39 +151,45 @@ void Show_Marked_Image(void)
ips200_draw_frame(START_X - 3, START_Y - 3, START_X + IMAGE_DISPLAY_WIDTH + 2, START_Y + IMAGE_DISPLAY_HEIGHT + 2, 2, RGB565_BLUE);
// 确认边线数组在显示前不会清空
for (uint i = 0; i < PT_MAXLEN; i++) {
//寻近线逆透视后边线数组
uint16_t l_x = START_X + (uint16_t)((float)pts_inv_r[i][1] * horizontal_zoom_rate);
uint16_t l_y = START_Y + (uint16_t)((float)pts_inv_r[i][0] * vertical_zoom_rate);
uint16_t r_x = START_X + (uint16_t)((float)pts_inv_l[i][1] * horizontal_zoom_rate);
uint16_t r_y = START_Y + (uint16_t)((float)pts_inv_l[i][0] * vertical_zoom_rate);
//寻远线逆透视后边线数组
// uint16_t far_l_x = START_X + (uint16_t)((float)pts_far_inv_r[i][1] * horizontal_zoom_rate);
// uint16_t far_l_y = START_Y + (uint16_t)((float)pts_far_inv_r[i][0] * vertical_zoom_rate);
// uint16_t far_r_x = START_X + (uint16_t)((float)pts_far_inv_l[i][1] * horizontal_zoom_rate);
// uint16_t far_r_y = START_Y + (uint16_t)((float)pts_far_inv_l[i][0] * vertical_zoom_rate);
//寻近线中线数组
// uint16_t mid_x_l = START_X + (uint16_t)(mid_left[i][1] * horizontal_zoom_rate);
// uint16_t mix_y_l = START_Y + (uint16_t)(mid_left[i][0] * vertical_zoom_rate);
// uint16_t mid_x_r = START_X + (uint16_t)(mid_right[i][1] * horizontal_zoom_rate);
// uint16_t mix_y_r = START_Y + (uint16_t)(mid_right[i][0] * vertical_zoom_rate);
// 寻近线逆透视后边线数组
uint16_t l_x = START_X + (uint16_t)((float)pts_inv_r[i][1] * horizontal_zoom_rate);
uint16_t l_y = START_Y + (uint16_t)((float)pts_inv_r[i][0] * vertical_zoom_rate);
uint16_t r_x = START_X + (uint16_t)((float)pts_inv_l[i][1] * horizontal_zoom_rate);
uint16_t r_y = START_Y + (uint16_t)((float)pts_inv_l[i][0] * vertical_zoom_rate);
// 寻远线逆透视后边线数组
// uint16_t far_l_x = START_X + (uint16_t)((float)pts_far_inv_r[i][1] * horizontal_zoom_rate);
// uint16_t far_l_y = START_Y + (uint16_t)((float)pts_far_inv_r[i][0] * vertical_zoom_rate);
// uint16_t far_r_x = START_X + (uint16_t)((float)pts_far_inv_l[i][1] * horizontal_zoom_rate);
// uint16_t far_r_y = START_Y + (uint16_t)((float)pts_far_inv_l[i][0] * vertical_zoom_rate);
// 寻近线中线数组
// uint16_t mid_x_l = START_X + (uint16_t)(mid_left[i][1] * horizontal_zoom_rate);
// uint16_t mix_y_l = START_Y + (uint16_t)(mid_left[i][0] * vertical_zoom_rate);
// uint16_t mid_x_r = START_X + (uint16_t)(mid_right[i][1] * horizontal_zoom_rate);
// uint16_t mix_y_r = START_Y + (uint16_t)(mid_right[i][0] * vertical_zoom_rate);
uint16_t mid_x = START_X + (uint16_t)(mid_track[i][1] * horizontal_zoom_rate);
uint16_t mix_y = START_Y + (uint16_t)(mid_track[i][0] * vertical_zoom_rate);
//近线数组显示
ips200_draw_rect(l_x, l_y, l_x + 2, l_y, RGB565_RED);
ips200_draw_rect(r_x - 2, r_y, r_x, r_y, RGB565_BLUE);
// 近线数组显示
if (i < pts_inv_l_count) {
ips200_draw_rect(l_x, l_y, l_x + 2, l_y + 1, RGB565_RED);
}
if (i < pts_inv_r_count) {
ips200_draw_rect(r_x - 2, r_y, r_x, r_y + 1, RGB565_BLUE);
}
//远线数组显示
//ips200_draw_rect(far_l_x, far_l_y, far_l_x + 2, far_l_y, RGB565_RED);
//ips200_draw_rect(far_r_x - 2, far_r_y, far_r_x, far_r_y, RGB565_BLUE);
// 远线数组显示
// ips200_draw_rect(far_l_x, far_l_y, far_l_x + 2, far_l_y, RGB565_RED);
// ips200_draw_rect(far_r_x - 2, far_r_y, far_r_x, far_r_y, RGB565_BLUE);
//左右中线数组显示
// ips200_draw_rect(mid_x_l, mix_y_l, mid_x_l + 2, mix_y_l, RGB565_BLACK);
// ips200_draw_rect(mid_x_r, mix_y_r, mid_x_r + 2, mix_y_r, RGB565_BLUE);
// 左右中线数组显示
// ips200_draw_rect(mid_x_l, mix_y_l, mid_x_l + 2, mix_y_l, RGB565_BLACK);
// ips200_draw_rect(mid_x_r, mix_y_r, mid_x_r + 2, mix_y_r, RGB565_BLUE);
//最终中线数字显示
ips200_draw_rect(mid_x, mix_y, mid_x + 2, mix_y, RGB565_BLACK);
// 最终中线数字显示
if (i < mid_track_count) {
ips200_draw_rect(mid_x, mix_y, mid_x + 2, mix_y + 1, RGB565_BLACK);
}
// ips200_draw_point(START_X + (uint16_t)((float)pts_right[i][1] * horizontal_zoom_rate), START_Y + (uint16_t)((float)pts_right[i][0] * vertical_zoom_rate), RGB565_GREEN);
// ips200_draw_point(START_X + (uint16_t)((float)pts_right[i][1] * horizontal_zoom_rate) - 1, START_Y + (uint16_t)((float)pts_right[i][0] * vertical_zoom_rate), RGB565_GREEN);