This commit is contained in:
parent
d8f30dcd94
commit
e186b23d28
|
@ -305,8 +305,8 @@ void start_lcd_task(void const *argument)
|
||||||
/* Infinite loop */
|
/* Infinite loop */
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
uart_lcd_makecurve_test();
|
uart_lcd_refresh_screen();
|
||||||
vTaskDelay(30);
|
vTaskDelay(100);
|
||||||
}
|
}
|
||||||
/* USER CODE END start_lcd_task */
|
/* USER CODE END start_lcd_task */
|
||||||
}
|
}
|
||||||
|
|
|
@ -99,6 +99,7 @@ int main(void)
|
||||||
/* MCU Configuration--------------------------------------------------------*/
|
/* MCU Configuration--------------------------------------------------------*/
|
||||||
|
|
||||||
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
|
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
|
||||||
|
|
||||||
HAL_Init();
|
HAL_Init();
|
||||||
|
|
||||||
/* USER CODE BEGIN Init */
|
/* USER CODE BEGIN Init */
|
||||||
|
|
|
@ -145,7 +145,7 @@
|
||||||
<SetRegEntry>
|
<SetRegEntry>
|
||||||
<Number>0</Number>
|
<Number>0</Number>
|
||||||
<Key>ST-LINKIII-KEIL_SWO</Key>
|
<Key>ST-LINKIII-KEIL_SWO</Key>
|
||||||
<Name>-U090F00028316303030303032 -O2254 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC800 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
<Name>-UB -O2254 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC800 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||||
</SetRegEntry>
|
</SetRegEntry>
|
||||||
</TargetDriverDllRegistry>
|
</TargetDriverDllRegistry>
|
||||||
<Breakpoint/>
|
<Breakpoint/>
|
||||||
|
|
|
@ -138,7 +138,7 @@
|
||||||
</Flash1>
|
</Flash1>
|
||||||
<bUseTDR>1</bUseTDR>
|
<bUseTDR>1</bUseTDR>
|
||||||
<Flash2>BIN\UL2V8M.DLL</Flash2>
|
<Flash2>BIN\UL2V8M.DLL</Flash2>
|
||||||
<Flash3></Flash3>
|
<Flash3>"" ()</Flash3>
|
||||||
<Flash4></Flash4>
|
<Flash4></Flash4>
|
||||||
<pFcarmOut></pFcarmOut>
|
<pFcarmOut></pFcarmOut>
|
||||||
<pFcarmGrp></pFcarmGrp>
|
<pFcarmGrp></pFcarmGrp>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -2,7 +2,7 @@
|
||||||
* @Author: wangxujie wangxujie@wuxismart.com
|
* @Author: wangxujie wangxujie@wuxismart.com
|
||||||
* @Date: 2025-03-10 15:05:20
|
* @Date: 2025-03-10 15:05:20
|
||||||
* @LastEditors: wangxujie wangxujie@wuxismart.com
|
* @LastEditors: wangxujie wangxujie@wuxismart.com
|
||||||
* @LastEditTime: 2025-07-31 14:39:12
|
* @LastEditTime: 2025-07-31 18:36:56
|
||||||
* @FilePath: \signal_generator\User\driver\uart_lcd.c
|
* @FilePath: \signal_generator\User\driver\uart_lcd.c
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
*/
|
*/
|
||||||
|
@ -10,6 +10,7 @@
|
||||||
#include "usart.h"
|
#include "usart.h"
|
||||||
#include "lwip.h"
|
#include "lwip.h"
|
||||||
#include "tim.h"
|
#include "tim.h"
|
||||||
|
#include "ad7124.h"
|
||||||
extern ip4_addr_t ipaddr;
|
extern ip4_addr_t ipaddr;
|
||||||
uart_lcd_t uart_lcd_state = {0};
|
uart_lcd_t uart_lcd_state = {0};
|
||||||
lcd_makecurve_t lcd_makecurve_data = {0}; // 绘制曲线数据,界面ID 1,控件ID 14
|
lcd_makecurve_t lcd_makecurve_data = {0}; // 绘制曲线数据,界面ID 1,控件ID 14
|
||||||
|
@ -26,7 +27,7 @@ lcd_set_slidervalue_t lcd_set_slidervalue1_data = {0}; // 进度条设置数据
|
||||||
lcd_set_slidervalue_t lcd_set_slidervalue2_data = {0}; // 进度条设置数据,界面ID 0,控件ID 5
|
lcd_set_slidervalue_t lcd_set_slidervalue2_data = {0}; // 进度条设置数据,界面ID 0,控件ID 5
|
||||||
lcd_switchscreen_t lcd_switchscreen_data = {0}; // 切换画面数据
|
lcd_switchscreen_t lcd_switchscreen_data = {0}; // 切换画面数据
|
||||||
extern float current_buff[2];
|
extern float current_buff[2];
|
||||||
|
extern ad7124_analog_t ad7124_analog[AD7124_CHANNEL_EN_MAX];
|
||||||
static void uart_lcd_page_init(lcd_switchscreen_t *screen_data)
|
static void uart_lcd_page_init(lcd_switchscreen_t *screen_data)
|
||||||
{
|
{
|
||||||
screen_data->cmd_head = LCD_CMD_HEAD;
|
screen_data->cmd_head = LCD_CMD_HEAD;
|
||||||
|
@ -67,7 +68,7 @@ static void uart_lcd_markcurve_init(lcd_makecurve_t *curve_data, uint16_t screen
|
||||||
curve_data->cmd_screen_id = screen_id;
|
curve_data->cmd_screen_id = screen_id;
|
||||||
curve_data->cmd_ctrl_id = ctrl_id;
|
curve_data->cmd_ctrl_id = ctrl_id;
|
||||||
curve_data->cmd_curve_channel = 0; // 曲线通道
|
curve_data->cmd_curve_channel = 0; // 曲线通道
|
||||||
curve_data->cmd_data_len = 0; // 数据长度
|
curve_data->cmd_data_len = 1; // 数据长度
|
||||||
memset(curve_data->cmd_data, 0, sizeof(curve_data->cmd_data)); // 清空数据内容
|
memset(curve_data->cmd_data, 0, sizeof(curve_data->cmd_data)); // 清空数据内容
|
||||||
curve_data->cmd_tail = LCD_CMD_TAIL;
|
curve_data->cmd_tail = LCD_CMD_TAIL;
|
||||||
}
|
}
|
||||||
|
@ -245,14 +246,14 @@ void uart_lcd_draw_ipaddr(void)
|
||||||
void uart_lcd_init(void)
|
void uart_lcd_init(void)
|
||||||
{
|
{
|
||||||
// 初始化屏幕
|
// 初始化屏幕
|
||||||
uart_lcd_state.page_num = 1;
|
uart_lcd_state.page_num = LCD_SCREEN_ID_CRUUENT;
|
||||||
uart_lcd_page_init(&lcd_switchscreen_data); // 初始化页面数据
|
uart_lcd_page_init(&lcd_switchscreen_data); // 初始化页面数据
|
||||||
uart_lcd_page_switch(uart_lcd_state.page_num); // 切换到第一个页面
|
uart_lcd_page_switch(uart_lcd_state.page_num); // 切换到第一个页面
|
||||||
|
|
||||||
// 初始化按钮
|
// 初始化按钮
|
||||||
uart_lcd_button_init(&lcd_set_button1_data, 0, 1);
|
uart_lcd_button_init(&lcd_set_button1_data, LCD_SCREEN_ID_CRUUENT, 1);
|
||||||
uart_lcd_button_init(&lcd_set_button2_data, 0, 2);
|
uart_lcd_button_init(&lcd_set_button2_data, LCD_SCREEN_ID_CRUUENT, 2);
|
||||||
uart_lcd_button_init(&lcd_set_button3_data, 0, 3);
|
uart_lcd_button_init(&lcd_set_button3_data, LCD_SCREEN_ID_CRUUENT, 3);
|
||||||
uart_lcd_button_init(&lcd_set_button4_data, 1, 1);
|
uart_lcd_button_init(&lcd_set_button4_data, 1, 1);
|
||||||
uart_lcd_button_init(&lcd_set_button5_data, 1, 2);
|
uart_lcd_button_init(&lcd_set_button5_data, 1, 2);
|
||||||
uart_lcd_state.current_out_channel = 0;
|
uart_lcd_state.current_out_channel = 0;
|
||||||
|
@ -462,6 +463,33 @@ void uart_lcd_makecurvet(lcd_makecurve_t *makecurve_data)
|
||||||
dma_usart_send(&huart4, uart_makecurve_data, makecurve_data->cmd_data_len + 14);
|
dma_usart_send(&huart4, uart_makecurve_data, makecurve_data->cmd_data_len + 14);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void uart_lcd_refresh_screen(void)
|
||||||
|
{
|
||||||
|
// 刷新屏幕数据
|
||||||
|
uart_lcd_set_txt(&lcd_set_txt1_data, ad7124_analog[P1_DI1_ADC].current); // 刷新文本内容
|
||||||
|
if (ad7124_analog[P1_DI1_ADC].current > 2.1f)
|
||||||
|
{
|
||||||
|
uart_lcd_set_button_status(&lcd_set_button4_data, 0); // 设置按钮状态
|
||||||
|
}
|
||||||
|
else if (ad7124_analog[P1_DI1_ADC].current < 1.2f)
|
||||||
|
{
|
||||||
|
uart_lcd_set_button_status(&lcd_set_button4_data, 1); // 设置按钮状态
|
||||||
|
}
|
||||||
|
uart_lcd_set_txt(&lcd_set_txt2_data, ad7124_analog[P1_DI2_ADC].current); // 刷新文本内容
|
||||||
|
if (ad7124_analog[P1_DI2_ADC].current > 2.1f)
|
||||||
|
{
|
||||||
|
uart_lcd_set_button_status(&lcd_set_button5_data, 0); // 设置按钮状态
|
||||||
|
}
|
||||||
|
else if (ad7124_analog[P1_DI2_ADC].current < 1.2f)
|
||||||
|
{
|
||||||
|
uart_lcd_set_button_status(&lcd_set_button5_data, 1); // 设置按钮状态
|
||||||
|
}
|
||||||
|
|
||||||
|
lcd_makecurve_data.cmd_data[0] = (ad7124_analog[P1_AI_ADC].current - 4) * 100 / 16; // 填充数据内容
|
||||||
|
uart_lcd_makecurvet(&lcd_makecurve_data); // 调用函数发送数据
|
||||||
|
uart_lcd_set_txt(&lcd_set_txt3_data, ad7124_analog[P1_AI_ADC].current); // 设置文本内容
|
||||||
|
}
|
||||||
|
|
||||||
void uart_lcd_makecurve_test(void)
|
void uart_lcd_makecurve_test(void)
|
||||||
{
|
{
|
||||||
lcd_makecurve_data.cmd_data_len = 1; // 假设数据长度为1
|
lcd_makecurve_data.cmd_data_len = 1; // 假设数据长度为1
|
||||||
|
|
|
@ -134,5 +134,6 @@ void uart_lcd_page_switch(uint8_t page);
|
||||||
void uart_lcd_ecll_control_current_out(void);
|
void uart_lcd_ecll_control_current_out(void);
|
||||||
void uart_lcd_ec11_control_current(void);
|
void uart_lcd_ec11_control_current(void);
|
||||||
void uart_lcd_makecurvet(lcd_makecurve_t *makecurve_data);
|
void uart_lcd_makecurvet(lcd_makecurve_t *makecurve_data);
|
||||||
|
void uart_lcd_refresh_screen(void);
|
||||||
void uart_lcd_makecurve_test(void);
|
void uart_lcd_makecurve_test(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue