Skip to content

Commit de7bad9

Browse files
committed
1、【创建】GIT版本仓库
2、【创建】Eclipse工程,并支持IAR插件调试 3、【创建】Keil工程,位于/RVMDK目录下 4、【创建】IAR工程,位于/EWARM目录下 5、【添加】RT-Thread1.1.1操作系统支持 6、【添加】LED1、LED2系统运行指示灯 7、【修改】Readdme.md文件 Signed-off-by: armink <[email protected]>
1 parent d7c6dc2 commit de7bad9

File tree

588 files changed

+201772
-21
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

588 files changed

+201772
-21
lines changed

.cproject

+200
Large diffs are not rendered by default.

.gitignore

+4-17
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,4 @@
1-
# Object files
2-
*.o
3-
4-
# Libraries
5-
*.lib
6-
*.a
7-
8-
# Shared objects (inc. Windows DLLs)
9-
*.dll
10-
*.so
11-
*.so.*
12-
*.dylib
13-
14-
# Executables
15-
*.exe
16-
*.out
17-
*.app
1+
/RVMDK/Output
2+
/Debug
3+
/Release
4+
/EWARM/Debug

.project

+70
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>FreeModbus_Slaver&amp;Master+RTT+STM32</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
10+
<triggers>clean,full,incremental,</triggers>
11+
<arguments>
12+
<dictionary>
13+
<key>?name?</key>
14+
<value></value>
15+
</dictionary>
16+
<dictionary>
17+
<key>org.eclipse.cdt.make.core.append_environment</key>
18+
<value>true</value>
19+
</dictionary>
20+
<dictionary>
21+
<key>org.eclipse.cdt.make.core.buildArguments</key>
22+
<value></value>
23+
</dictionary>
24+
<dictionary>
25+
<key>org.eclipse.cdt.make.core.buildCommand</key>
26+
<value>make</value>
27+
</dictionary>
28+
<dictionary>
29+
<key>org.eclipse.cdt.make.core.buildLocation</key>
30+
<value>${workspace_loc:/FreeModbus_Slaver&amp;Master+RTT+STM32/Debug}</value>
31+
</dictionary>
32+
<dictionary>
33+
<key>org.eclipse.cdt.make.core.contents</key>
34+
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
35+
</dictionary>
36+
<dictionary>
37+
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
38+
<value>false</value>
39+
</dictionary>
40+
<dictionary>
41+
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
42+
<value>true</value>
43+
</dictionary>
44+
<dictionary>
45+
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
46+
<value>true</value>
47+
</dictionary>
48+
<dictionary>
49+
<key>org.eclipse.cdt.make.core.stopOnError</key>
50+
<value>true</value>
51+
</dictionary>
52+
<dictionary>
53+
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
54+
<value>true</value>
55+
</dictionary>
56+
</arguments>
57+
</buildCommand>
58+
<buildCommand>
59+
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
60+
<triggers>full,incremental,</triggers>
61+
<arguments>
62+
</arguments>
63+
</buildCommand>
64+
</buildSpec>
65+
<natures>
66+
<nature>org.eclipse.cdt.core.cnature</nature>
67+
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
68+
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
69+
</natures>
70+
</projectDescription>
+65
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
eclipse.preferences.version=1
2+
org.eclipse.cdt.codan.checkers.errnoreturn=Warning
3+
org.eclipse.cdt.codan.checkers.errnoreturn.params={implicit\=>false}
4+
org.eclipse.cdt.codan.checkers.errreturnvalue=Error
5+
org.eclipse.cdt.codan.checkers.errreturnvalue.params={}
6+
org.eclipse.cdt.codan.checkers.noreturn=Error
7+
org.eclipse.cdt.codan.checkers.noreturn.params={implicit\=>false}
8+
org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error
9+
org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
10+
org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error
11+
org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
12+
org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning
13+
org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={}
14+
org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error
15+
org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={}
16+
org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning
17+
org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={no_break_comment\=>"no break",last_case_param\=>true,empty_case_param\=>false}
18+
org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning
19+
org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={unknown\=>false,exceptions\=>()}
20+
org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error
21+
org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
22+
org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error
23+
org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
24+
org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error
25+
org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
26+
org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error
27+
org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
28+
org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error
29+
org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
30+
org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error
31+
org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
32+
org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error
33+
org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
34+
org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error
35+
org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
36+
org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info
37+
org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
38+
org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning
39+
org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={}
40+
org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error
41+
org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
42+
org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error
43+
org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
44+
org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error
45+
org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
46+
org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning
47+
org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={}
48+
org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning
49+
org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={}
50+
org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning
51+
org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={macro\=>true,exceptions\=>()}
52+
org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning
53+
org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={paramNot\=>false}
54+
org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning
55+
org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={else\=>false,afterelse\=>false}
56+
org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error
57+
org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
58+
org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning
59+
org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={macro\=>true}
60+
org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning
61+
org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={macro\=>true}
62+
org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning
63+
org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={macro\=>true,exceptions\=>("@(\#)","$Id")}
64+
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error
65+
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
eclipse.preferences.version=1
2+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/C_INCLUDE/delimiter=;
3+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/C_INCLUDE/operation=remove
4+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/append=true
5+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/appendContributed=true
6+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/C_INCLUDE/delimiter=;
7+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/C_INCLUDE/operation=remove
8+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/append=true
9+
environment/buildEnvironmentInclude/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/appendContributed=true
10+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/LIBRARY_PATH/delimiter=;
11+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/LIBRARY_PATH/operation=remove
12+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/append=true
13+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.debug.v5.4.0.1797449233/appendContributed=true
14+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/LIBRARY_PATH/delimiter=;
15+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/LIBRARY_PATH/operation=remove
16+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/append=true
17+
environment/buildEnvironmentLibrary/iar.arm.toolchain.project.exe.configuration.release.v5.4.0.1401199975/appendContributed=true

APP/inc/app_task.h

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
/*********************************************************************************************************
2+
// NCLUDE FILES
3+
*********************************************************************************************************/
4+
#ifndef APP_TASK_H
5+
#define APP_TASK_H
6+
7+
#include <stdlib.h>
8+
#include <stdio.h>
9+
#include <rthw.h>
10+
#include <rtthread.h>
11+
#include <stm32f10x_conf.h>
12+
#include "bsp.h"
13+
#include "delay_conf.h"
14+
#include "cpuusage.h"
15+
16+
/*******************************************************************************************************/
17+
// DEFINES
18+
/*******************************************************************************************************/
19+
20+
21+
#define success 0
22+
#define fail 1
23+
24+
#define false 0
25+
#define true 1
26+
27+
28+
29+
30+
31+
32+
33+
extern void cpu_usage_get(rt_uint8_t *major, rt_uint8_t *minor);
34+
extern void cpu_usage_init(void);
35+
36+
37+
38+
void rtthread_startup(void);
39+
40+
41+
#endif

APP/inc/cpuusage.h

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#ifndef CPUUSAGE_H
2+
#define CPUUSAGE_H
3+
4+
5+
static void cpu_usage_idle_hook(void);
6+
void cpu_usage_get(rt_uint8_t *major, rt_uint8_t *minor);
7+
void cpu_usage_init(void);
8+
9+
#endif
10+
11+
12+
13+
14+
15+
16+
17+
18+
19+
20+
21+
22+
23+

APP/inc/delay_conf.h

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
/*********************************************************************************************************/
2+
// Filename : delay_config.h
3+
// Version : V1.00
4+
// Programmer(s) : Liuqiuhu
5+
// funcion : This file is used to configure the delay time
6+
/*********************************************************************************************************/
7+
#ifndef __DELAY_CONF_H__
8+
#define __DELAY_CONF_H__
9+
10+
#include"rtconfig.h"
11+
12+
#if RT_TICK_PER_SECOND == 1
13+
#define DELAY_1S (RT_TICK_PER_SECOND)
14+
#define DELAY_S(X) (X*DELAY_1S)
15+
16+
#elif RT_TICK_PER_SECOND == 10
17+
#define DELAY_100MS(X) (X)
18+
#define DELAY_S(X) (X*10)
19+
20+
#elif RT_TICK_PER_SECOND == 100
21+
#define DELAY_10MS(X) (X)
22+
#define DELAY_100MS(X) (X*10)
23+
#define DELAY_S(X) (X*100)
24+
25+
#elif (RT_TICK_PER_SECOND == 1000)
26+
27+
#define DELAY_1MS (RT_TICK_PER_SECOND/1000)
28+
#define DELAY_MS(X) (X*DELAY_1MS)
29+
#define DELAY_S(X) (X*1000*DELAY_1MS)
30+
31+
#elif (RT_TICK_PER_SECOND == 10000)||(RT_TICK_PER_SECOND == 100000)||(RT_TICK_PER_SECOND == 100000)
32+
#define DELAY_100US(X) (X*RT_TICK_PER_SECOND/10000)
33+
#define DELAY_1MS (RT_TICK_PER_SECOND/1000)
34+
#define DELAY_MS(X) (X*DELAY_1MS)
35+
#define DELAY_S(X) (X*1000*DELAY_1MS)
36+
37+
#endif
38+
39+
#define DELAY_SYS_RUN_LED DELAY_MS(500) //系统指示灯延时500ms
40+
#define DELAY_SYS_SLEEP_LED DELAY_MS(1000) //系统指示灯延时1s
41+
42+
#endif
43+

APP/inc/rtconfig.h

+75
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
/* RT-Thread config file */
2+
#ifndef __RTTHREAD_CFG_H__
3+
#define __RTTHREAD_CFG_H__
4+
5+
/* RT_NAME_MAX*/
6+
#define RT_NAME_MAX 24
7+
8+
/* RT_ALIGN_SIZE*/
9+
#define RT_ALIGN_SIZE 8
10+
11+
/* PRIORITY_MAX */
12+
#define RT_THREAD_PRIORITY_MAX 32
13+
14+
/* Tick per Second */
15+
#define RT_TICK_PER_SECOND 10000 //0.1ms
16+
17+
/* SECTION: RT_DEBUG */
18+
/* Thread Debug */
19+
#define RT_DEBUG
20+
#define RT_THREAD_DEBUG
21+
22+
#define RT_USING_OVERFLOW_CHECK
23+
24+
/* Using Hook */
25+
#define RT_USING_HOOK
26+
27+
/* Using Software Timer */
28+
/* #define RT_USING_TIMER_SOFT */
29+
#define RT_TIMER_THREAD_PRIO 4
30+
#define RT_TIMER_THREAD_STACK_SIZE 512
31+
#define RT_TIMER_TICK_PER_SECOND 1000
32+
33+
/* SECTION: IPC */
34+
/* Using Semaphore*/
35+
#define RT_USING_SEMAPHORE
36+
37+
/* Using Mutex */
38+
//#define RT_USING_MUTEX
39+
40+
/* Using Event */
41+
//#define RT_USING_EVENT
42+
43+
/* Using MailBox */
44+
//#define RT_USING_MAILBOX
45+
46+
/* Using Message Queue */
47+
//#define RT_USING_MESSAGEQUEUE
48+
49+
/* SECTION: Memory Management */
50+
/* Using Memory Pool Management*/
51+
//#define RT_USING_MEMPOOL
52+
53+
/* Using Dynamic Heap Management */
54+
//#define RT_USING_HEAP
55+
56+
/* Using Small MM */
57+
//#define RT_USING_SMALL_MEM
58+
59+
/* SECTION: Device System */
60+
/* Using Device System */
61+
#define RT_USING_DEVICE
62+
//#define RT_USING_UART1
63+
64+
/* SECTION: Console options */
65+
/* the buffer size of console*/
66+
#define RT_CONSOLEBUF_SIZE 128
67+
68+
/* SECTION: finsh, a C-Express shell */
69+
//#define RT_USING_FINSH
70+
/* Using symbol table */
71+
//#define FINSH_USING_SYMTAB
72+
//#define FINSH_USING_DESCRIPTION
73+
74+
75+
#endif

0 commit comments

Comments
 (0)