最近一些时间,主要阅读代码,包括题中所涉及的,常常思考“0”和“1”的奇妙之处,但无奈过于愚钝,未能开悟。

几乎所有现实中的人,沉溺于数字产品的时间越来越久,无论游戏,还是娱乐,或者购物,还有读书。

手机比电脑方便许多,闲暇时很少再看到发呆的现象,而多是被这屏幕勾去了魂魄,渐渐被数字产品所“奴役”。

系统:无非Computer和Phone,最近看Linux,工具:机器人类ROS2,源码:Github,语言:C/C++

Linux内核:github.com/torvalds/linux

发现led是所有系统必备的部分呢。以Linux为例:

github.com/torvalds/linux/blob/master/drivers/leds/leds.h

#ifndef __LEDS_H_INCLUDED
#define __LEDS_H_INCLUDED#include <linux/rwsem.h>
#include <linux/leds.h>static inline int led_get_brightness(struct led_classdev *led_cdev)
{return led_cdev->brightness;
}void led_init_core(struct led_classdev *led_cdev);
void led_stop_software_blink(struct led_classdev *led_cdev);
void led_set_brightness_nopm(struct led_classdev *led_cdev,enum led_brightness value);
void led_set_brightness_nosleep(struct led_classdev *led_cdev,enum led_brightness value);
ssize_t led_trigger_read(struct file *filp, struct kobject *kobj,struct bin_attribute *attr, char *buf,loff_t pos, size_t count);
ssize_t led_trigger_write(struct file *filp, struct kobject *kobj,struct bin_attribute *bin_attr, char *buf,loff_t pos, size_t count);extern struct rw_semaphore leds_list_lock;
extern struct list_head leds_list;
extern struct list_head trigger_list;
extern const char * const led_colors[LED_COLOR_ID_MAX];#endif   /* __LEDS_H_INCLUDED */

包含初始化核心,闪烁,亮度等一些功能。

当然在设备中还可看到看门狗,USB,I2C等。

工具中可以看到一些常用监测tools/leds/uledmon.c:

#include <fcntl.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <unistd.h>#include <linux/uleds.h>int main(int argc, char const *argv[])
{struct uleds_user_dev uleds_dev;int fd, ret;int brightness;struct timespec ts;if (argc != 2) {fprintf(stderr, "Requires <device-name> argument\n");return 1;}strncpy(uleds_dev.name, argv[1], LED_MAX_NAME_SIZE);uleds_dev.max_brightness = 100;fd = open("/dev/uleds", O_RDWR);if (fd == -1) {perror("Failed to open /dev/uleds");return 1;}ret = write(fd, &uleds_dev, sizeof(uleds_dev));if (ret == -1) {perror("Failed to write to /dev/uleds");close(fd);return 1;}while (1) {ret = read(fd, &brightness, sizeof(brightness));if (ret == -1) {perror("Failed to read from /dev/uleds");close(fd);return 1;}clock_gettime(CLOCK_MONOTONIC, &ts);printf("[%ld.%09ld] %u\n", ts.tv_sec, ts.tv_nsec, brightness);}close(fd);return 0;
}

比单片机程序的确复杂了许多。

工具:ros2-foxy

学习源码,才能真正掌握ros2,在此处不过多说明了。

repositories:ament/ament_cmake:type: giturl: https://github.com/ament/ament_cmake.gitversion: 0.9.8ament/ament_index:type: giturl: https://github.com/ament/ament_index.gitversion: 1.0.1ament/ament_lint:type: giturl: https://github.com/ament/ament_lint.gitversion: 0.9.6ament/ament_package:type: giturl: https://github.com/ament/ament_package.gitversion: 0.9.3ament/google_benchmark_vendor:type: giturl: https://github.com/ament/google_benchmark_vendor.gitversion: 0.0.3ament/googletest:type: giturl: https://github.com/ament/googletest.gitversion: 1.8.9000ament/uncrustify_vendor:type: giturl: https://github.com/ament/uncrustify_vendor.gitversion: 1.4.0eProsima/Fast-CDR:type: giturl: https://github.com/eProsima/Fast-CDR.gitversion: v1.0.13eProsima/Fast-DDS:type: giturl: https://github.com/eProsima/Fast-DDS.gitversion: v2.0.2eProsima/foonathan_memory_vendor:type: giturl: https://github.com/eProsima/foonathan_memory_vendor.gitversion: v1.0.0eclipse-cyclonedds/cyclonedds:type: giturl: https://github.com/eclipse-cyclonedds/cyclonedds.gitversion: 0.7.0osrf/osrf_pycommon:type: giturl: https://github.com/osrf/osrf_pycommon.gitversion: 0.1.10osrf/osrf_testing_tools_cpp:type: giturl: https://github.com/osrf/osrf_testing_tools_cpp.gitversion: 1.3.2ros-perception/laser_geometry:type: giturl: https://github.com/ros-perception/laser_geometry.gitversion: 2.2.0ros-planning/navigation_msgs:type: giturl: https://github.com/ros-planning/navigation_msgs.gitversion: 2.0.2ros-tooling/libstatistics_collector:type: giturl: https://github.com/ros-tooling/libstatistics_collector.gitversion: 1.0.1ros-tracing/ros2_tracing:type: giturl: https://gitlab.com/ros-tracing/ros2_tracing.gitversion: 1.0.4ros-visualization/interactive_markers:type: giturl: https://github.com/ros-visualization/interactive_markers.gitversion: 2.1.3ros-visualization/python_qt_binding:type: giturl: https://github.com/ros-visualization/python_qt_binding.gitversion: 1.0.5ros-visualization/qt_gui_core:type: giturl: https://github.com/ros-visualization/qt_gui_core.gitversion: 1.1.2ros-visualization/rqt:type: giturl: https://github.com/ros-visualization/rqt.gitversion: 1.0.6ros-visualization/rqt_action:type: giturl: https://github.com/ros-visualization/rqt_action.gitversion: 1.0.1ros-visualization/rqt_console:type: giturl: https://github.com/ros-visualization/rqt_console.gitversion: 1.1.1ros-visualization/rqt_graph:type: giturl: https://github.com/ros-visualization/rqt_graph.gitversion: 1.1.0ros-visualization/rqt_msg:type: giturl: https://github.com/ros-visualization/rqt_msg.gitversion: 1.0.2ros-visualization/rqt_plot:type: giturl: https://github.com/ros-visualization/rqt_plot.gitversion: 1.0.8ros-visualization/rqt_publisher:type: giturl: https://github.com/ros-visualization/rqt_publisher.gitversion: 1.1.0ros-visualization/rqt_py_console:type: giturl: https://github.com/ros-visualization/rqt_py_console.gitversion: 1.0.0ros-visualization/rqt_reconfigure:type: giturl: https://github.com/ros-visualization/rqt_reconfigure.gitversion: 1.0.6ros-visualization/rqt_service_caller:type: giturl: https://github.com/ros-visualization/rqt_service_caller.gitversion: 1.0.3ros-visualization/rqt_shell:type: giturl: https://github.com/ros-visualization/rqt_shell.gitversion: 1.0.0ros-visualization/rqt_srv:type: giturl: https://github.com/ros-visualization/rqt_srv.gitversion: 1.0.1ros-visualization/rqt_top:type: giturl: https://github.com/ros-visualization/rqt_top.gitversion: 1.0.0ros-visualization/rqt_topic:type: giturl: https://github.com/ros-visualization/rqt_topic.gitversion: 1.1.0ros-visualization/tango_icons_vendor:type: giturl: https://github.com/ros-visualization/tango_icons_vendor.gitversion: 0.0.1ros/class_loader:type: giturl: https://github.com/ros/class_loader.gitversion: 2.0.1ros/kdl_parser:type: giturl: https://github.com/ros/kdl_parser.gitversion: 2.4.1ros/pluginlib:type: giturl: https://github.com/ros/pluginlib.gitversion: 2.5.3ros/resource_retriever:type: giturl: https://github.com/ros/resource_retriever.gitversion: 2.3.4ros/robot_state_publisher:type: giturl: https://github.com/ros/robot_state_publisher.gitversion: 2.4.1ros/ros_environment:type: giturl: https://github.com/ros/ros_environment.gitversion: 2.5.0ros/ros_tutorials:type: giturl: https://github.com/ros/ros_tutorials.gitversion: 1.2.5ros/urdfdom:type: giturl: https://github.com/ros/urdfdom.gitversion: 2.3.3ros/urdfdom_headers:type: giturl: https://github.com/ros/urdfdom_headers.gitversion: 1.0.5ros2/ament_cmake_ros:type: giturl: https://github.com/ros2/ament_cmake_ros.gitversion: 0.9.0ros2/common_interfaces:type: giturl: https://github.com/ros2/common_interfaces.gitversion: 2.0.3ros2/console_bridge_vendor:type: giturl: https://github.com/ros2/console_bridge_vendor.gitversion: 1.2.3ros2/demos:type: giturl: https://github.com/ros2/demos.gitversion: 0.9.3ros2/eigen3_cmake_module:type: giturl: https://github.com/ros2/eigen3_cmake_module.gitversion: 0.1.1ros2/example_interfaces:type: giturl: https://github.com/ros2/example_interfaces.gitversion: 0.9.0ros2/examples:type: giturl: https://github.com/ros2/examples.gitversion: 0.9.4ros2/geometry2:type: giturl: https://github.com/ros2/geometry2.gitversion: 0.13.9ros2/launch:type: giturl: https://github.com/ros2/launch.gitversion: 0.10.4ros2/launch_ros:type: giturl: https://github.com/ros2/launch_ros.gitversion: 0.11.1ros2/libyaml_vendor:type: giturl: https://github.com/ros2/libyaml_vendor.gitversion: 1.0.2ros2/message_filters:type: giturl: https://github.com/ros2/message_filters.gitversion: 3.2.4ros2/mimick_vendor:type: giturl: https://github.com/ros2/mimick_vendor.gitversion: 0.2.3ros2/orocos_kinematics_dynamics:type: giturl: https://github.com/ros2/orocos_kinematics_dynamics.gitversion: 3.3.1ros2/performance_test_fixture:type: giturl: https://github.com/ros2/performance_test_fixture.gitversion: 0.0.6ros2/python_cmake_module:type: giturl: https://github.com/ros2/python_cmake_module.gitversion: 0.8.0ros2/rcl:type: giturl: https://github.com/ros2/rcl.gitversion: 1.1.10ros2/rcl_interfaces:type: giturl: https://github.com/ros2/rcl_interfaces.gitversion: 1.0.0ros2/rcl_logging:type: giturl: https://github.com/ros2/rcl_logging.gitversion: 1.0.1ros2/rclcpp:type: giturl: https://github.com/ros2/rclcpp.gitversion: 2.3.0ros2/rclpy:type: giturl: https://github.com/ros2/rclpy.gitversion: 1.0.4ros2/rcpputils:type: giturl: https://github.com/ros2/rcpputils.gitversion: 1.3.1ros2/rcutils:type: giturl: https://github.com/ros2/rcutils.gitversion: 1.1.2ros2/realtime_support:type: giturl: https://github.com/ros2/realtime_support.gitversion: 0.9.0ros2/rmw:type: giturl: https://github.com/ros2/rmw.gitversion: 1.0.2ros2/rmw_connext:type: giturl: https://github.com/ros2/rmw_connext.gitversion: 1.0.3ros2/rmw_cyclonedds:type: giturl: https://github.com/ros2/rmw_cyclonedds.gitversion: 0.7.6ros2/rmw_dds_common:type: giturl: https://github.com/ros2/rmw_dds_common.gitversion: 1.0.2ros2/rmw_fastrtps:type: giturl: https://github.com/ros2/rmw_fastrtps.gitversion: 1.2.4ros2/rmw_implementation:type: giturl: https://github.com/ros2/rmw_implementation.gitversion: 1.0.1ros2/ros1_bridge:type: giturl: https://github.com/ros2/ros1_bridge.gitversion: 0.9.6ros2/ros2cli:type: giturl: https://github.com/ros2/ros2cli.gitversion: 0.9.8ros2/ros2cli_common_extensions:type: giturl: https://github.com/ros2/ros2cli_common_extensions.gitversion: 0.1.0ros2/ros_testing:type: giturl: https://github.com/ros2/ros_testing.gitversion: 0.2.1ros2/rosbag2:type: giturl: https://github.com/ros2/rosbag2.gitversion: 0.3.5ros2/rosidl:type: giturl: https://github.com/ros2/rosidl.gitversion: 1.2.0ros2/rosidl_dds:type: giturl: https://github.com/ros2/rosidl_dds.gitversion: 0.7.1ros2/rosidl_defaults:type: giturl: https://github.com/ros2/rosidl_defaults.gitversion: 1.0.0ros2/rosidl_python:type: giturl: https://github.com/ros2/rosidl_python.gitversion: 0.9.4ros2/rosidl_runtime_py:type: giturl: https://github.com/ros2/rosidl_runtime_py.gitversion: 0.9.0ros2/rosidl_typesupport:type: giturl: https://github.com/ros2/rosidl_typesupport.gitversion: 1.0.1ros2/rosidl_typesupport_connext:type: giturl: https://github.com/ros2/rosidl_typesupport_connext.gitversion: 1.0.2ros2/rosidl_typesupport_fastrtps:type: giturl: https://github.com/ros2/rosidl_typesupport_fastrtps.gitversion: 1.0.2ros2/rpyutils:type: giturl: https://github.com/ros2/rpyutils.gitversion: 0.2.0ros2/rviz:type: giturl: https://github.com/ros2/rviz.gitversion: 8.2.1ros2/spdlog_vendor:type: giturl: https://github.com/ros2/spdlog_vendor.gitversion: 1.1.2ros2/sros2:type: giturl: https://github.com/ros2/sros2.gitversion: 0.9.4ros2/system_tests:type: giturl: https://github.com/ros2/system_tests.gitversion: 0.9.1ros2/test_interface_files:type: giturl: https://github.com/ros2/test_interface_files.gitversion: 0.8.0ros2/tinyxml2_vendor:type: giturl: https://github.com/ros2/tinyxml2_vendor.gitversion: 0.7.3ros2/tinyxml_vendor:type: giturl: https://github.com/ros2/tinyxml_vendor.gitversion: 0.8.0ros2/tlsf:type: giturl: https://github.com/ros2/tlsf.gitversion: 0.5.0ros2/unique_identifier_msgs:type: giturl: https://github.com/ros2/unique_identifier_msgs.gitversion: 2.1.2ros2/urdf:type: giturl: https://github.com/ros2/urdf.gitversion: 2.4.0ros2/yaml_cpp_vendor:type: giturl: https://github.com/ros2/yaml_cpp_vendor.gitversion: 7.0.2

系统内核还是C为主,工具以C++和Python等为主。

当然上述系统只涉及信息处理,如果需要和现实交互,需要再装备传感器和执行器{物联网机器人操作系统}。

  • 现实-传感器-{数字世界-处理-数字世界}-执行器-现实

如何以此为基础构建“自动驾驶系统”,持续学习中{Apex.Autonomy}

通过红绿灯路口

直行-右转

系统,工具,源码,语言组成的数字世界-2021-相关推荐

  1. 系统工具源码设计页面

    namespace Tools {     partial class FormHome     {         /// <summary>         /// 必需的设计器变量. ...

  2. Opencv多语言自然场景文本识别系统(源码&教程)

    1. 研究背景 人类在自然场景中可以快速定位并识别看到的文字信息,但是想要计算机做到和人类一样是比较困难的.开发人员一直想要让机器也能识别图像中的文字信息.当然,对于自然场景来说,图像中的信息复杂甚至 ...

  3. 2023 易语言 查看系统信息小工具源码

    使用精易模块,调用电脑自带的系统信息,一次性查询,做电脑店的可以拿去用,看配件很方便 2023 易语言 查看系统信息小工具源码

  4. 信管家源代码c语言,AK老唐信管家软件指标 火车轨系统指标源码

    信管家软件指标 火车轨系统指标源码 交易成本20美元 火车轨系统,长短线皆宜.短线红多绿空,长线粉多蓝空.可以用来判断趋势,辅助进出场点. 指标源码: S:=CROSS(CLOSE,EMA(HIGH, ...

  5. 体检系统前端源码_给您的前端进行健康检查

    体检系统前端源码 by Ewa Mitulska-Wójcik 伊娃·米图尔斯卡(EwaMitulska-Wójcik) 给您的前端进行健康检查 (Give your Front End a Heal ...

  6. 计算机毕业设计springboot基于疫情背景下的新型点餐送餐系统bpe1s源码+系统+程序+lw文档+部署

    计算机毕业设计springboot基于疫情背景下的新型点餐送餐系统bpe1s源码+系统+程序+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea ecli ...

  7. 计算机毕业设计ssm基于Andriod的剪纸艺术平台3swaq系统+程序+源码+lw+远程部署

    计算机毕业设计ssm基于Andriod的剪纸艺术平台3swaq系统+程序+源码+lw+远程部署 计算机毕业设计ssm基于Andriod的剪纸艺术平台3swaq系统+程序+源码+lw+远程部署 本源码技 ...

  8. 计算机毕业设计ssm基于B_S的汽车售后服务管理系统e48c4系统+程序+源码+lw+远程部署

    计算机毕业设计ssm基于B_S的汽车售后服务管理系统e48c4系统+程序+源码+lw+远程部署 计算机毕业设计ssm基于B 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:id ...

  9. java毕业生设计校园线上点餐系统计算机源码+系统+mysql+调试部署+lw

    java毕业生设计校园线上点餐系统计算机源码+系统+mysql+调试部署+lw java毕业生设计校园线上点餐系统计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S架构 开 ...

最新文章

  1. 驰骋工作流引擎-嵌入式表单的介绍
  2. Maven私服安装及配置——(十二)
  3. 数学图形(1.45)毛雷尔玫瑰(Maurer rose)
  4. Mabatis 源码探究(2)Java 获取mybatis-config.xml的输入流 inputStream对象
  5. ASP.NET中实现模版的动态加载
  6. Unity网格合并_材质合并[转]
  7. 套接字编程---2(TCP套接字编程的流程,TCP套接字编程中的接口函数,TCP套接字的实现,TCP套接字出现的问题,TCP套接字多进程版本,TCP套接字多线程版本)
  8. 相似图像搜索的哈希算法思想及实现(差值哈希算法和均值哈希算法)
  9. 【OpenCV 例程200篇】58. 非线性滤波—中值滤波
  10. JVM 内存模型组成+经典总结
  11. psp用ps1模拟器_PSP自制系统用PS模拟器玩PS游戏指南
  12. excel中roundup使用指南
  13. vs2015智能提示英文改为中文
  14. 01背包问题 动态规划求解方法 动态方程的详细解释 能理解的解释(附python代码)
  15. wpf中图片滚动效果demo_如何将商品视觉化运用到店铺中?小型文具店货架效果图文具店货架图片...
  16. 多线程使用场景及总结
  17. jmeter调试取样器
  18. 焦深(depth of focus)
  19. 如何制作一寸、二寸、六寸照片。以后不用再去照相馆了!
  20. 少壮不努力,长大干IT。

热门文章

  1. lineageos breakfast_安卓手机刷lineageOS后电信卡不能通话解决办法
  2. 【Uniapp框架】快速开发自己一款APP应用,如何将Uniapp项目快速打包成APP应用
  3. 期刊影响因子的中外算法差别很大
  4. 维生素C(抗坏血酸)摄入过多有啥后果?
  5. MapReduce处理两个文件内不同行信息
  6. Guava限流器RateLimiter
  7. python 支持erp自动化操作
  8. 【基础算法训练】—— 栈
  9. Java Double equals()方法具有什么功能呢?
  10. 程序员必备的8个编程工具