自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

转载 Ubuntu 下搭建 NFS 服务

NFS 即网络文件系统(Network File-System),可以通过网络让不同机器、不同系统之间可以实现文件共享。通过 NFS,可以访问远程共享目录,就像访问本地磁盘一样。NFS 只是一种文件系统,本身并没有传输功能,是基于 RPC(远程过程调用)协议实现的,采用 C/S 架构。

2023-11-12 18:32:10 506

转载 dd skip 和 seek参数理解

假如我有一个文件abc.gz,大小为83456k,我想用dd命令实现如下备份 结果:首先将备份分成三个部分,第一部分为备份文件abc.gz的前10000k,第二部分为中间的70000k,最后备份后面的3456k.理解说明:skip=xxx是在备份时对if 后面的部分也就是原文件跳过多少块再开始备份;seek=xxx则是在备份时对of 后面的部分也就是目标文件跳过多少块再开始写。原文链接:https://blog.csdn.net/u011616400/article/details/41575711。

2023-11-12 18:20:24 385

原创 GCC连接器脚本

我们对每个c或者汇编文件进行单独编译,但是不去连接,生成很多.o 的文件,这些.o文件首先是分散的,我们首先要考虑的如何组合起来;其次,这些.o文件存在相互调用的关系;再者,我们最后生成的bin文件是要在硬件中运行的,每一部分放在什么地址都要有仔细的说明。我觉得在写makefile的时候,最为重要的就是ld的理解,下面说说我的经验:首先,要确定我们的程序用没有用到标准的c库,或者一些系统的库文件,这些一般是在操作系统之上开发要注意的问题,这里并不多说,熟悉在Linux编程的人,基本上都会用ld命令;这里

2023-11-11 18:50:30 191

原创 74HC595移位串并转换

STCP:storage control pin,并行输出,高电平有效,将芯片锁存的数据从Q0~Q7口并行输出。SHCP: shift control pin, 移位控制,高电平有效,将DS的串行数据移入一位。OE: output enable, 输出有效,低电平有效,常接地线。MR:复位口,main reclear, 接高电平。Q7' : 为串行数据移位输出。DS:串行数据输入,接输入数据端。Q0~Q7:为并行口输出。

2023-11-05 15:59:10 69

原创 IStax代码 函数

【代码】IStax代码 函数。

2023-11-01 10:28:16 49

原创 Redboot 学习笔记

简介RedBoot 是 “Red Hat Embedded Debug and Bootstrap” 的缩写,包含很多工具例如下载,还有一个简单的Flash 文件系统用以存放启动代码。以下是RedBoot 的一些突出优点:􀁺 支持启动脚本􀁺 可用简单的命令行界面配置与管理,可通过以太网(Telnet)或串口(超级终端)访问。􀁺 集成GDB stubs 用来通过串口或以太网与宿主机上的排错软件通信。(限局域网)􀁺 属性配置 - 很多数据是可配置的,例如系统时间、日期(如果可用),默认启动F

2022-04-21 10:00:49 2000

转载 IEC61850协议栈选择的一点建议

概述IEC61850的目标是实现产品之间的互操作性,要想很好的实现这一目标最好不要各独自去开发IEC61850,而应该购买非常成熟的IEC61850协议栈进行开发,试想如果都用相同的协议栈开发那么互操作性自然而然的就不存在问题了,但是每个企业都有不同的选择,本文对国内可选的协议栈进行简单的介绍,为尚未做出选择的用户做一个参考。目前在国内可选择的IEC61850协议栈主要有三大协议栈,分别是:美国的MMS-EASE Lite、中国的YX-PIS、德国的libIEC61850。MMS-EASE Lite

2022-02-16 12:19:34 1854 1

原创 C++笔记 函数模板 类模板

2022-01-29 14:22:51 750

原创 C++ 笔记 抽象类

2022-01-29 14:08:18 777

原创 C++笔记 虚函数和多态 动态绑定

动态绑定其实就是多态,只有用new语句创建对象时,才必须使用virtual析构函数。

2022-01-29 13:49:58 496

原创 C++笔记 类的继承

class Graduatestudent : public Student{ private: string undergraduateDegree; string undergraduateInstitution;}继承,派生,基类,父类,子类,派生类构造函数不被继承。派生类构造函数

2022-01-26 11:58:18 322

原创 C++ 笔记 对象指针和对象数组

对象指针Clock c(8,3,10);Clock *ptr;ptr = &c;ptr->getHour(); // 等价于(*ptr).getHour();对象指针 this 指针return hour; // 相当于 return this->hour;new和delete类似于c语言的malloc和free函数,分配内存在堆空间中。Point *ptr1 = new Point; // 调用默认构造函数delete ptr1;

2022-01-26 11:24:48 243

原创 C++ 笔记 类的封装,静态成员

属性都是私有的,外部不能直接访问。提供与属性相关的get/set函数,间接访问属性。静态成员class Point{ private: int x , y; static int count; //定义静态局部变量 public: Point(){ count ++ ;}; ~Point(){ count -- }; static void showCount(){

2022-01-25 10:59:58 180

原创 C++ 笔记 类与对象

1,类与对象的基本概念类是一种抽象的数据结构类型。对象是类的实例,类是对象的模板。属性(数据),行为(函数)class 类名称 //{ public: 公有成员 private: 私有成员 protected: 保护型成员 //与继承有关}3,成员函数4,构造函数5,析构函数6,构造函数重载7,默认构造函数...

2022-01-25 10:22:21 368

原创 C++ 笔记 输入输出

输入输出#include <iostream>using namespace std;int main(int argc, char *argv[]){ int x,y,z; cin >> x >> y >> z; cout << "x=" << x << endl << "y=" << y << endl << "z=" << z <&lt

2022-01-25 10:12:04 418

原创 九年级物理 第十四章 宇宙和微观世界

一、浩瀚的宇宙地球不过是太阳系内一颗普通的行星。太阳是一颗恒星。太阳是银河系中的一颗普通恒星。除太阳外,离地球最近的恒星叫做比邻星。银河系以外的星系叫做河外星系。相互之间有一定力学联系的星系聚合在一起叫做星系团,银河系所在的星系团叫做本星系团。若干星系团聚合在一起构成了超星系团,本星系团和附件的约50个星系团构成了本超星系团,或者成为室女座超星系团。起源与演化宇宙大爆炸学说飞向太空2003年10月15日,神州五号载人飞船在酒泉卫星发射中心发射升空,航天英雄杨利伟出舱,

2022-01-15 11:55:49 482

原创 九年级物理 第十三章 通信技术简介

现代应用最广泛的传递信息的方法有两种:1,借助电磁波实现的无线通信2,借助激光实现的光通信。一,通信发展简史1,人类历史上最早、应用最广泛的通信方式是:传递写在纸上(或其他介质上)的文字。运用交通工具来运送信件,“通信”词汇的由来。2,1844年,莫尔斯发明了有线电报。通过控制电流的有无,发明了一持续时间长短不同的电流组成的信息码,称为莫尔斯电码。原始的发报机只是一个开关,收报机有电磁铁控制的一支笔和输送纸带的机械组成。3,1876年,贝尔发明了有线电话,实现了用变化的电流来传送

2022-01-15 11:00:11 1075

转载 ModbusTCP协议

原文链接:ModbusTCP协议学习笔记_iknow_nothing的博客-CSDN博客_modbustcp视频地址:Java实现ModbusTCP通信_哔哩哔哩_bilibili简介Modbus由MODICON公司于1979年开发,是一种工业现场总线协议标准。1996年施耐德公司推出基于以太网TCP/IP的Modbus协议:ModbusTCP。Modbus协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型。标准的Modbus协议物理层接口有RS232、RS422、

2022-01-06 19:39:12 3856

转载 Linux下SVN客户端使用教程(全)

1、Svn介绍SVN全名Subversion,即版本控制系统。SVN与CVS一样,是一个跨平台的软件,支持大多数常见的操作系统。作为一个开源的版本控制系统,Subversion管理着随时间改变的数据。这些数据放置在一个中央资料档案库(repository)中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样你就可以把档案恢复到旧的版本,或是浏览文件的变动历史。Subversion是一个通用的系统,可用来管理任何类型的文件,其中包括了程序源码。2、Svn安装安装教程:Lin

2022-01-03 21:30:13 8372 1

转载 Linux下安装SVN服务端

1、简介Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说.首先来下载和搭建SVN服务器。yum install subversion2、配置2.1、创建仓库我们这里在 /home 下建立一个名为 svn 的仓库(repository),以后所有代码都放在这个下面,创建成功后在svn下面多了几个文件夹。# cd /home# mkdir svn# svnadmin create /home/svn# ls svnconf db .

2022-01-03 21:20:29 1207

转载 eCos中的线程与同步

1.线程的创建void cyg_thread_create(...),创建一个线程,处于挂起状态2.线程的控制void cyg_thread_yield (),使线程放弃对处理器的控制void cyg_thread_delay (cyg_tick_count_t delay),使线程挂起一定的时间void cyg_thread_suspend (cyg_handle_t thread),挂起指定的线程void cyg_thread_resume (cyg_handle_t...

2021-12-24 10:54:00 531

转载 C语言中函数参数 ...

  本文主要介绍va_start和va_end的使用及原理。  在以前的一篇帖子Format MessageBox 详解中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解。  介绍这两个宏之前先看一下C中传递函数的参数时的用法和原理:1.在C中,当我们无法列出传递函数的所有实参的类型和数目时,可以用省略号指定参数表  void foo(...);  void foo(parm_list,...);  这种方式和我们以前认识的不大一样,但我们要记住这是C中一

2021-12-24 10:25:59 1414

原创 正点原子-驱动开发-新字符设备驱动实验

字符设备驱动开发重点是使用register_chrdev函数注册字符设备,当不用设备时使用unregister_chrdev函数注销字符设备,驱动模块加载成功后还需要手动mknod创建设备节点。register_chrdev和unregister_chrdev这两个函数是老版本内核驱动使用的函数,现在新的字符设备驱动已经不再使用这两个函数,而是使用linux内核推荐的新字符设备驱动API函数。新字符设备驱动原理分配和释放设备号如果没有指定设备号,向内核申请设备号int alloc_ch

2021-12-23 16:05:22 306

原创 正点原子-驱动开发-字符设备驱动实验 Linux LED驱动

linux下LED灯驱动原理Linux 下的任何外设驱动,最终都是要配置相应的硬件寄存器I.MX6ULL-ALPHA 开发板上的LED 连接到I.MX6ULL 的GPIO1_IO03 这个引脚上

2021-12-21 05:43:47 659

原创 C语言_宏定义扩展

#define Conn(x,y) x##y #define ToChar(x) #@x #define ToString(x) #xx##y表示什么?表示x连接y,举例说:int n = Conn(123,456); 结果就是n=123456;char* str = Conn("asdf","adf")结果就是 str = "asdfadf";#@x,其实就是给x加上单引号,结果返回是一个constchar。举例说:char a = ToChar(1);结果就是a...

2021-12-20 11:40:57 748

原创 C语言_结构体数组初始化

typedef struct _TEST_T { int i; char c[10];}TEST_T;TEST_T gst = {.i = 1, .c = "12345"};TEST_T gst = {1, “12345”};//可以初始化,设置i为1,s为一个字符串.TEST_T gst = {1};//初始化个数少于实际个数时,只初始化前面的成员。TEST_T gst = {.c=“12345”};//有选择的初始化成员。复合字面量。gst ...

2021-12-20 11:25:57 4751

原创 正点原子-驱动开发-字符设备驱动实验

chrdevbase字符设备驱动开发实验chrdevbase是一个虚拟设备,有两个缓冲器,一个读,一个写,两个缓冲器的大小都为100 bytes,应用程序可以从chrdevbase设备读写数据。新建 chrdevbase.c 源文件#include <linux/types.h>#include <linux/kernel.h>#include <linux/delay.h>#include <linux/ide.h>#include &

2021-12-18 19:48:48 990

原创 正点原子-驱动开发-字符设备驱动

Linux中的三大类驱动:字符设备、块和网络设备驱动I2C、SPI、音频等都属于字符设备驱动 的类型EMMC、NAND、SD卡和 U盘等存储都属于块设备网卡,WIFI等都属于网络驱动一个设备可以属于多种设备驱动,如USB WIFI,其USB接口属于字符设备驱动,但WIFI功能同时属于网络驱动。字符设备驱动模型应用程序运行在用户空间,而Linux 驱动属于内核的一部分,当在用户空间使用open()函数打开/dev/eth0这个驱动设备文件时,必须使用系统调用的方法来实现,open,cl

2021-12-17 09:23:41 408

原创 Bootloader设计

U-boot包括自主模式和开发模式。异常向量表 Exceptions由于处理器内部或者外部的一些事件,导致处理器停下正在处理的工作,转而去处理发生的异常事件。当一种异常发生的时候,ARM处理器会跳转到对应该异常的固定地址,去执行异常处理程序,而这个固定地址,就称之为异常向量。;;异常向量表_start: b reset ldr pc, _undefined_instruction ldr pc, _software_i...

2021-11-27 14:09:30 393

原创 ARM汇编

.section .data 初始化的数据.section .bss 未初始化的数据.section .text.global _start_start: 汇编代码//Makefile all:start.o arm-linux-ld -Ttext 0x30000000 -o start.elf $^%.o :%.S arm-linux-gcc -g -o $@ $^ -cclean: rm *.o *.elf .tex...

2021-11-23 14:48:45 147

原创 ARM简介

常用词类ARM9 , ARM11 ,ARMv6 , ARMv7芯片名称:6410,210,2440,3399ARM核 :Cortex A8,ARM11,ARM9指令架构:ARMv7 ,ARMv6 ,ARMv4,ARMv8ARM9--->ARMv4ARM11--->ARMv6Cortex A8 --->ARMv7ARM Core (ARM核)ARM7/9/11(传统), Cortex m0/1/3/4(低功耗,类似于单片机) ,Cortex R4 (...

2021-11-23 10:23:10 441

原创 连接器脚本

段代码段,数据段,BSS段,链接器脚本中包含这几个段信息。SECTIONS { .text: { *(.text) //*代表所有文件 } .data: { *(.data) } .bss: { *(.bss) }}起始链接地址SECTIONS { . = 0x0

2021-11-23 09:36:32 291

原创 Makefile工程管理

make命令根据Makefile文件中的规则来编译makefile构成规则targets : prerequisites command目标:依赖 命令命令之前用tab键通用规则%伪目标.PHONY: cleanclean: rm *最终目标如果make没有指定目标名称,那么Makefile中的第一条规则就是最终目标变量$^ 所有的依赖$@ 代表目标$< 代表第一个依赖文...

2021-11-22 16:09:48 390

原创 ARM交叉工具链

什么是交叉工具链多个交叉工具的集合arm-linux-gcc -static hello.c -o hello# arm-linux-gcc -static hello.c -o hello# file hello常用的交叉工具交叉编译器arm-linux-gcc与gcc的语法一致,头文件,库文件等路径不同。交叉连接器arm-linux-ld 生成elf格式文件,test.lds为连接器脚本文件。# arm-linux-ld -Ttest.lds -o test

2021-11-22 15:29:30 388

原创 C语言指针

一,指针基本概念#include <stdio.h>void main(){ int i=10; int *p=NULL; p=&i; printf("%X\n",i); printf("%X\n",*p);} 指针就是指向变量的地址。首次定义指针时,初始化为NULL,避免产生野指针。int x=10;double *q=&x; //错误,指针类型不同//...

2021-11-03 19:02:04 91

转载 makefile葵花宝典

什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。因为,makefile关系到了整个工程的编译规则。一个工程中...

2021-02-06 23:02:03 751

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-11-29 22:00:16 94

Vitesse7428/7429 datasheet

Vitesse7428/7429 datasheet 数据手册 VSC交换机芯片,工业交换机芯片手册

2023-11-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除