Browse Source

修改部分线程优先级

修改部分线程启动顺序
调整sql线程资源消耗
master
sc 2 months ago
parent
commit
c0f455e413
  1. 3
      applications/DATA_uart.c
  2. 15
      applications/DATA_uart.h
  3. 4
      applications/disk/SDIO_elmfatfs.c
  4. 2
      applications/main.c
  5. 18
      applications/sql/DB_SQLite.c
  6. 2
      applications/sql/DB_SQLite.h
  7. 1
      packages/freemodbus-v1.6.0
  8. 2
      rt-thread/components/dfs/dfs_v1/filesystems/tmpfs/dfs_tmpfs.c
  9. 2
      rtconfig.h

3
applications/DATA_uart.c

@ -89,7 +89,7 @@ void uart_thread_entry(void *parameter)
int start_uart_thread(void)
{
rt_thread_t tid = rt_thread_create("uart1",uart_thread_entry,RT_NULL,2048,20,10);
rt_thread_t tid = rt_thread_create("uart1",uart_thread_entry,RT_NULL,2048,21,10);
if (tid != RT_NULL)
{
rt_thread_startup(tid);
@ -102,3 +102,4 @@ int start_uart_thread(void)
return -1;
}
}
INIT_COMPONENT_EXPORT(start_uart_thread);

15
applications/DATA_uart.h

@ -1,15 +0,0 @@
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2025-10-20 Administrator the first version
*/
#ifndef APPLICATIONS_DATA_UART_H_
#define APPLICATIONS_DATA_UART_H_
int start_uart_thread(void);
#endif /* APPLICATIONS_DATA_UART_H_ */

4
applications/disk/SDIO_elmfatfs.c

@ -91,5 +91,5 @@ int stm32_sdcard_mount(void)
return RT_EOK;
}
// 使用 INIT_COMPONENTS_INIT 或 INIT_APP_EXPORT 自动启动
//INIT_COMPONENTS_INIT(stm32_sdcard_mount); // 在组件初始化阶段运行
INIT_COMPONENT_EXPORT(stm32_sdcard_mount);
//INIT_COMPONENTS_EXPORT(stm32_sdcard_mount); // 在组件初始化阶段运行
INIT_DEVICE_EXPORT(stm32_sdcard_mount);

2
applications/main.c

@ -12,7 +12,6 @@
#include <dfs_posix.h>
#include <light/RUN_LED.h>
#include "DB_SQLite.h"
#include "DATA_uart.h"
#define DBG_TAG "main"
#define DBG_LVL DBG_LOG
@ -24,7 +23,6 @@ int main(void)
{
rt_sem_take(mount_sem, rt_tick_from_millisecond(5000)); // 等待挂载完成,最多等待 5 秒
thread_DB_SQLite();
start_uart_thread();
thread_RUN_LED();//运行指示灯线程
return RT_EOK;
}

18
applications/sql/DB_SQLite.c

@ -52,14 +52,6 @@ static const char *sql_upgrade_workorder =
"Time TEXT,lock INT,State INT,ProgramID VARCHAR,Machines VARCHAR,color VARCHAR,ColorNumber VARCHAR,Client VARCHAR,ClothWeight VARCHAR,"
"ClothSpecies VARCHAR,BathRatio VARCHAR,Total VARCHAR,USER VARCHAR,ColorName VARCHAR,Remark TEXT); ";
static const char *sql_upgrade_run_table =
"CREATE TABLE RUN (WorkOrder VARCHAR,DYELOT VARCHAR,ProgramID VARCHAR,Program VARCHAR,ReDye INT DEFAULT (0),"
"Mode VARCHAR,Step INT,StepID VARCHAR,StepName VARCHAR,ParameterName VARCHAR,P1 DOUBLE,P2 DOUBLE,P3 DOUBLE,"
"P4 DOUBLE,P5 DOUBLE,P6 INT,P7 INT,P8 INT,P9 INT,P10 INT,Remark VARCHAR,StepTime INT,StepID_S1 VARCHAR,"
"StepID_S2 VARCHAR,StepID_S3 VARCHAR,StepName_S1 VARCHAR,StepName_S2 VARCHAR,StepName_S3 VARCHAR,P1_S1 DOUBLE,"
"P1_S2 DOUBLE,P1_S3 DOUBLE,P2_S1 DOUBLE,P2_S2 DOUBLE,P2_S3 DOUBLE,P3_S1 DOUBLE,P3_S2 DOUBLE,P3_S3 DOUBLE,"
"P4_S1 DOUBLE,P4_S2 DOUBLE,P4_S3 DOUBLE,P5_S1 DOUBLE,P5_S2 DOUBLE,P5_S3 DOUBLE); ";
static const char *sql_upgrade_dyelot_table =
"CREATE TABLE Dyelot (WorkOrder VARCHAR,Dyelot VARCHAR,ReDye INT,Machine VARCHAR,Step INT,Tank INT,State INT,ProductCode VARCHAR,"
"ProductName VARCHAR,ProductType INT,Grams FLOAT,Amount FLOAT,CALL_TIME VARCHAR,DispenseEndTime VARCHAR,Type INT); ";
@ -219,12 +211,6 @@ void db_sqlite_init_full(void)
}else{
LOG_E("[DataBASE]WorkOrder Creation failed ");
}
if(sqlite3_exec(g_db,sql_upgrade_run_table, 0, 0, 0)==0)
{
LOG_D("[DataBASE]RUN Created successfully ");
}else{
LOG_E("[DataBASE]RUN Creation failed ");
}
if(sqlite3_exec(g_db,sql_upgrade_dyelot_table, 0, 0, 0)==0)
{
LOG_D("[DataBASE]Dyelot Created successfully ");
@ -409,7 +395,7 @@ rt_err_t db_send_command(enum db_cmd_type type, const char* sql, rt_int32_t time
// 等待数据库线程处理完成
rt_err_t result = rt_sem_take(sem, wait_ticks);
//rt_sem_delete(sem);
rt_sem_delete(sem);
return result;
}
@ -417,7 +403,7 @@ rt_err_t db_send_command(enum db_cmd_type type, const char* sql, rt_int32_t time
void thread_DB_SQLite(void)
{
rt_thread_t tid;
tid = rt_thread_create("db_sql", db_sqlite, RT_NULL, 1024 *48, 20, 10);
tid = rt_thread_create("db_sql", db_sqlite, RT_NULL, 1024 *16, 18, 10);
if (tid != RT_NULL)
{

2
applications/sql/DB_SQLite.h

@ -33,7 +33,7 @@ extern "C" {
#endif
#ifndef DB_QUEUE_SIZE
#define DB_QUEUE_SIZE (8) /**< 消息队列容量(最多缓存 8 条命令) */
#define DB_QUEUE_SIZE (16) /**< 消息队列容量(最多缓存 8 条命令) */
#endif
/* 补充常见错误码(如果 RT-Thread 未定义) */

1
packages/freemodbus-v1.6.0

@ -1 +0,0 @@
Subproject commit 0000000000000000000000000000000000000000

2
rt-thread/components/dfs/dfs_v1/filesystems/tmpfs/dfs_tmpfs.c

@ -494,7 +494,7 @@ int dfs_tmpfs_stat(struct dfs_filesystem *fs,
if (d_file == NULL)
return -ENOENT;
st->st_dev = fs->dev_id;//(rt_device_t)dfs_filesystem_lookup(fs->path)
st->st_dev = (rt_device_t)dfs_filesystem_lookup(fs->path);
st->st_mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH |
S_IWUSR | S_IWGRP | S_IWOTH;
if (d_file->type == TMPFS_TYPE_DIR)

2
rtconfig.h

@ -73,7 +73,7 @@
#define RT_USING_FINSH
#define FINSH_USING_MSH
#define FINSH_THREAD_NAME "tshell"
#define FINSH_THREAD_PRIORITY 20
#define FINSH_THREAD_PRIORITY 30
#define FINSH_THREAD_STACK_SIZE 4096
#define FINSH_USING_HISTORY
#define FINSH_HISTORY_LINES 5

Loading…
Cancel
Save