mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-05-18 23:39:06 +08:00
Merge branch 'bringup-m2' into bringup-m1
This commit is contained in:
commit
892a4c5f0f
4
.gitmodules
vendored
4
.gitmodules
vendored
@ -4,9 +4,9 @@
|
||||
[submodule "NuttX"]
|
||||
path = NuttX
|
||||
url = git://github.com/PX4/NuttX.git
|
||||
[submodule "uavcan"]
|
||||
[submodule "libuavcan"]
|
||||
path = src/lib/uavcan
|
||||
url = git://github.com/pavel-kirienko/uavcan.git
|
||||
url = git://github.com/UAVCAN/libuavcan.git
|
||||
[submodule "Tools/genmsg"]
|
||||
path = Tools/genmsg
|
||||
url = https://github.com/ros/genmsg.git
|
||||
|
||||
@ -38,8 +38,7 @@ for index,m in enumerate(raw_messages):
|
||||
|
||||
num_messages = len(messages);
|
||||
|
||||
print
|
||||
print """
|
||||
print("""
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
@ -93,12 +92,12 @@ print """
|
||||
#include <stdint.h>
|
||||
#define __STDC_FORMAT_MACROS
|
||||
#include <inttypes.h>
|
||||
"""
|
||||
""")
|
||||
for m in messages:
|
||||
print "#include <uORB/topics/%s.h>" % m
|
||||
print("#include <uORB/topics/%s.h>" % m)
|
||||
|
||||
|
||||
print """
|
||||
print("""
|
||||
extern "C" __EXPORT int listener_main(int argc, char *argv[]);
|
||||
|
||||
int listener_main(int argc, char *argv[]) {
|
||||
@ -108,45 +107,45 @@ int listener_main(int argc, char *argv[]) {
|
||||
printf("need at least two arguments: topic name, number of messages to print\\n");
|
||||
return 1;
|
||||
}
|
||||
"""
|
||||
print "\tuint32_t num_msgs = (uint32_t)std::stoi(argv[2],NULL,10);"
|
||||
print "\tif(strncmp(argv[1],\"%s\",50)== 0) {" % messages[0]
|
||||
print "\t\tsub = orb_subscribe(ORB_ID(%s));" % messages[0]
|
||||
print "\t\tID = ORB_ID(%s);" % messages[0]
|
||||
print "\t\tstruct %s_s container;" % messages[0]
|
||||
print "\t\tmemset(&container, 0, sizeof(container));"
|
||||
""")
|
||||
print("\tuint32_t num_msgs = (uint32_t)std::stoi(argv[2],NULL,10);")
|
||||
print("\tif(strncmp(argv[1],\"%s\",50)== 0) {" % messages[0])
|
||||
print("\t\tsub = orb_subscribe(ORB_ID(%s));" % messages[0])
|
||||
print("\t\tID = ORB_ID(%s);" % messages[0])
|
||||
print("\t\tstruct %s_s container;" % messages[0])
|
||||
print("\t\tmemset(&container, 0, sizeof(container));")
|
||||
for index,m in enumerate(messages[1:]):
|
||||
print "\t} else if(strncmp(argv[1],\"%s\",50) == 0) {" % m
|
||||
print "\t\tsub = orb_subscribe(ORB_ID(%s));" % m
|
||||
print "\t\tID = ORB_ID(%s);" % m
|
||||
print "\t\tstruct %s_s container;" % m
|
||||
print "\t\tmemset(&container, 0, sizeof(container));"
|
||||
print "\t\tbool updated;"
|
||||
print "\t\tfor(uint32_t i = 0;i<num_msgs;i++) {"
|
||||
print "\t\t\torb_check(sub,&updated);"
|
||||
print "\t\t\tupdated = true;"
|
||||
print "\t\t\tif(updated) {"
|
||||
print "\t\t\torb_copy(ID,sub,&container);"
|
||||
print("\t} else if(strncmp(argv[1],\"%s\",50) == 0) {" % m)
|
||||
print("\t\tsub = orb_subscribe(ORB_ID(%s));" % m)
|
||||
print("\t\tID = ORB_ID(%s);" % m)
|
||||
print("\t\tstruct %s_s container;" % m)
|
||||
print("\t\tmemset(&container, 0, sizeof(container));")
|
||||
print("\t\tbool updated;")
|
||||
print("\t\tfor(uint32_t i = 0;i<num_msgs;i++) {")
|
||||
print("\t\t\torb_check(sub,&updated);")
|
||||
print("\t\t\tupdated = true;")
|
||||
print("\t\t\tif(updated) {")
|
||||
print("\t\t\torb_copy(ID,sub,&container);")
|
||||
for item in message_elements[index+1]:
|
||||
if item[0] == "float":
|
||||
print "\t\t\tprintf(\"%s: %%f\\n \",(double)container.%s);" % (item[1], item[1])
|
||||
print("\t\t\tprintf(\"%s: %%f\\n \",(double)container.%s);" % (item[1], item[1]))
|
||||
elif item[0] == "float_array":
|
||||
print "\t\t\tprintf(\"%s:\");" % item[1]
|
||||
print "\t\t\tfor (int j=0;j<%d;j++) {" % item[2]
|
||||
print "\t\t\t\tprintf(\"%%f \",(double)container.%s[j]);" % item[1]
|
||||
print "\t\t\t}"
|
||||
print "\t\t\tprintf(\"\\n\");"
|
||||
print("\t\t\tprintf(\"%s:\");" % item[1])
|
||||
print("\t\t\tfor (int j=0;j<%d;j++) {" % item[2])
|
||||
print("\t\t\t\tprintf(\"%%f \",(double)container.%s[j]);" % item[1])
|
||||
print("\t\t\t}")
|
||||
print("\t\t\tprintf(\"\\n\");")
|
||||
elif item[0] == "uint64":
|
||||
print "\t\t\tprintf(\"%s: %%\" PRIu64 \"\\n \",container.%s);" % (item[1], item[1])
|
||||
print("\t\t\tprintf(\"%s: %%\" PRIu64 \"\\n \",container.%s);" % (item[1], item[1]))
|
||||
elif item[0] == "uint8":
|
||||
print "\t\t\tprintf(\"%s: %%u\\n \",container.%s);" % (item[1], item[1])
|
||||
print("\t\t\tprintf(\"%s: %%u\\n \",container.%s);" % (item[1], item[1]))
|
||||
elif item[0] == "bool":
|
||||
print "\t\t\tprintf(\"%s: %%s\\n \",container.%s ? \"True\" : \"False\");" % (item[1], item[1])
|
||||
print "\t\t\t}"
|
||||
print "\t\t}"
|
||||
print "\t} else {"
|
||||
print "\t\t printf(\" Topic did not match any known topics\\n\");"
|
||||
print "\t}"
|
||||
print("\t\t\tprintf(\"%s: %%s\\n \",container.%s ? \"True\" : \"False\");" % (item[1], item[1]))
|
||||
print("\t\t\t}")
|
||||
print("\t\t}")
|
||||
print("\t} else {")
|
||||
print("\t\t printf(\" Topic did not match any known topics\\n\");")
|
||||
print("\t}")
|
||||
print("\t return 0;")
|
||||
|
||||
print "}"
|
||||
print("}")
|
||||
|
||||
@ -39,8 +39,7 @@ apps = []
|
||||
for f in builtins:
|
||||
apps.append(f.split(".")[-1].split("_main")[0])
|
||||
|
||||
print
|
||||
print """
|
||||
print("""
|
||||
#include <string>
|
||||
#include <map>
|
||||
|
||||
@ -55,11 +54,11 @@ using namespace std;
|
||||
extern void px4_show_devices(void);
|
||||
|
||||
extern "C" {
|
||||
"""
|
||||
""")
|
||||
for app in apps:
|
||||
print "extern int "+app+"_main(int argc, char *argv[]);"
|
||||
print("extern int "+app+"_main(int argc, char *argv[]);")
|
||||
|
||||
print """
|
||||
print("""
|
||||
static int shutdown_main(int argc, char *argv[]);
|
||||
static int list_tasks_main(int argc, char *argv[]);
|
||||
static int list_files_main(int argc, char *argv[]);
|
||||
@ -74,17 +73,17 @@ static map<string,px4_main_t> app_map(void);
|
||||
static map<string,px4_main_t> app_map(void)
|
||||
{
|
||||
static map<string,px4_main_t> apps;
|
||||
"""
|
||||
""")
|
||||
for app in apps:
|
||||
print '\tapps["'+app+'"] = '+app+'_main;'
|
||||
print('\tapps["'+app+'"] = '+app+'_main;')
|
||||
|
||||
print '\tapps["shutdown"] = shutdown_main;'
|
||||
print '\tapps["list_tasks"] = list_tasks_main;'
|
||||
print '\tapps["list_files"] = list_files_main;'
|
||||
print '\tapps["list_devices"] = list_devices_main;'
|
||||
print '\tapps["list_topics"] = list_topics_main;'
|
||||
print '\tapps["sleep"] = sleep_main;'
|
||||
print """
|
||||
print('\tapps["shutdown"] = shutdown_main;')
|
||||
print('\tapps["list_tasks"] = list_tasks_main;')
|
||||
print('\tapps["list_files"] = list_files_main;')
|
||||
print('\tapps["list_devices"] = list_devices_main;')
|
||||
print('\tapps["list_topics"] = list_topics_main;')
|
||||
print('\tapps["sleep"] = sleep_main;'
|
||||
print("""
|
||||
return apps;
|
||||
}
|
||||
|
||||
@ -134,5 +133,5 @@ static int sleep_main(int argc, char *argv[])
|
||||
sleep(atoi(argv[1]));
|
||||
return 0;
|
||||
}
|
||||
"""
|
||||
""")
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user