- 博客(29)
- 资源 (35)
- 问答 (1)
- 收藏
- 关注
原创 mqx 启动流程记录
当编译器通过链接依赖打包,分配好.text, .data, .bss, 等。上电后,通过ENTRY()跳到boot.s文件 __boot。 然后流程如下:
2020-05-15 17:26:19
260
原创 C语言 __attribute__
__attribute__ 是GNU C的一种机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)。__attribute__ 的参数介绍如下: aligned:指定对象的对齐格式(以字节为单位) packed:使用该属性对struct或者union类型进行定义,设定其类型的每一个变量的内存约束 at:绝对定位,可以把变量或函数绝...
2020-05-15 16:29:55
416
原创 链接脚本学习
https://www.jianshu.com/p/42823b3b7c8ehttps://blog.youkuaiyun.com/henduoluo/article/details/12358399https://wenku.baidu.com/view/fbec3f9858f5f61fb7366663.html
2020-05-15 15:30:03
285
原创 Git Gitlib Github GitLab Gerrit 区别
Git:是一种版本控制系统,是一个命令,是一种工具。是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。使用教程:https://git-scm.com/book/zh/v2,关于分支版本库的详解:https://learngitbranching.js.org/Gitlib:是用于实现Git功能的开发库。Github:是一个基于Git实现的在线代码托管仓库,包含一个网站界面,向互联网开放。repo(repository的缩写,表示"仓库")都需要public(公开), 如果你想要创建pr
2020-05-13 16:51:44
1222
原创 shell makefile 的区别和总结记录
Shell是Linux系统的操作命令行界面,是人机交互的一种方式,同时Shell也是一种编程语言,可以用于编写Shell脚本程序,在Linux中常用的脚本语言是bash。 makefile,是一个编译脚本,用来完成编译工作的。 所以,可以理解他们都可以作为很多命令的集合,一个用于系统处理(通用工具),一个用于编译处理(特定工具)。通常makefile可以调用shell脚本,以下列出两者在使用上的常用区别。makefile使用可参考(https://blog.youkuaiyun.com/zg...
2020-05-13 16:05:26
597
原创 makefile 记录
1,.PHONY: 伪目标是这样一个目标:它不代表一个真正的文件名,在执行make时可以指定这个目标来执行所在规则定义的命令,有时也可以将一个伪目标称为标签。伪目标通过PHONY来指明。比如,我们常用的make clean, 如果当前文件下有一个clean文件,就会命令出错,此时通过标签来识别就可以了。 2,$@ 表示目标文件$^ 表示所有的依赖文件$< 表示第一个依赖文件$? 表示比目标还要新的依赖文件列表hello.o: hello.c ...
2020-05-12 18:28:50
243
原创 linux make时 问题记录
最近遇到makefile编译问题,有文件找不到,类似如下,然后提示没有找到相关文件,而且直接从repo获取的code,案例来说不会有问题。 make[1]: *** No rule to make target '../bin', needed by 'all'. Stop. 解决,首先确认缺少的文件,是不是repo有一些依赖,git clone 是否成功。最后可以尝试手动创建相关文件夹或文件。...
2020-05-12 11:05:20
493
转载 mqx 任务调度
mqx 任务调度调度任务MQX提供如下任务调度策略: FIFO(先来先服务) 轮循 使用任务队列你可以为处理器和每个任务设置调度策略为FIFO或者轮循方式,这样,应用程序可能包含使用这些调度策略任意组合的多个任务。...
2020-04-27 18:16:00
878
原创 单片机菜单系统 - 想法记录整理
记录整理一下,关于一个单片机菜单系统的idea,偶然翻到,怕流失,在此记录,为那美好青春,哈哈哈 首先不是完整系统,只有能找到的代码段,这是上课没认真听讲,别人玩手机,自己乱想,写下了一些片段。不过还是有些思想值得学习。 大致想法是,每个界面被看成是一个文件,添加了一些已有的结构成员,界面切换,通过全局变量RUN,只需要把要加载的文件给到全局变量即可。 文件结构体type...
2020-04-23 18:08:58
463
原创 mqx 驱动解析 以io flash读写为例
hi,大家好,今天为大家解析一下,MQX系统中flash的操作。 我们在用户层经过特有平台(每个公司基于MQX的封装)的封装,我们都会调用到open,read,write的接口,但是这种接口怎么经过内核把驱动连接起来,实现基本读写操作,即寄存器的操作。如下是一下接口。fopen -> _io_fopen -> (kernel_data)dev_ptr->IO_OPEN...
2019-07-26 11:31:11
404
原创 c语言_基础知识
C语言{数值数据:十进制: 0,1,2,3,4,5,6,7,8,9 基数:10123 = 1*10^2 + 2*10^1 + 3*10^0 --->123二进制: 0,1 基数:2二进制转十进制:0b 101 ---> 1*2^2 + 0*2^1 + 1*2^0 ---> 5 0b 10111 ---> 1*2^4 + 0*2^3 + 1*2...
2019-07-26 10:20:27
163
原创 linux_ 基础知识
linux系统:{Linux下一切都是文件从根目录" / " 开始, home - farsight用户目录用户登录:zg 密码:xxx超级用户: root 密码:xxx进入终端:Ctrl Alt + t}命令:{cirl l :清屏 ctrl c :取消程序运行tab: 自动补齐命令cd: 目录的跳转 cd / :跳到根目录 cd ~:跳...
2019-07-22 15:27:14
110
原创 c++_多态基础知识
1,多态:一个接口,多种方法,程序运行时才决定调用的函数。2,多态性是接口与实现进行分离。3,虚函数:virtual修饰的函数,虚函数的限制(1,静态成员函数不能定义虚函数(2,构造函数不能定义虚函数,析构函数可以。(3,声明需要virtual修饰,定义不用(4,基类某一函数为虚函数,子类同名函数(函数名,参数,返回值),自动成为虚函数4,纯虚函数:虚函数=0;-> virtu...
2017-12-22 18:31:49
196
原创 c++_继承基础知识
1,继承:在一个已有的类上建立一个新的类,类的继承:新类从已有的类获得已有的特性,新类为派生类2,class A : public B, public C ...{};关于访问权限,参考另一篇博文,http://blog.youkuaiyun.com/zg915355901/article/details/788396063,子类向基类传数据:(1,构造函数,代码如下:class A{...
2017-12-21 16:33:12
209
原创 c++_模板基础知识
模板:1,函数模板template <class(typename) T, ...(非类型参数,int var)>T add(T &a){//函数体}非类型参数只能是,整型,指针,引用。以上T可以有对应的默认值2,类模板template <class T>class A{//类体}template <class T,...>...
2017-12-20 18:31:04
282
原创 linux_进程和线程
1,进程(交互,管理,守护)(1,资源管理的最小单位(2,执行模式:用户模式,内核模式(3,几种状态:运行,停止,等待,僵尸,等(4,进程调度命令:ps(ps -alx, ps -ef, ps -eLf), nice, kill, top2,进程机制:使用fork创建,进程控制块(PCB),拷贝了父进程的整个地址空间,实则“写操作是拷贝(子进程需要改变内存数据时才拷贝父进程)”...
2017-12-19 20:20:17
239
原创 linux_动态库和静态库
静态库$gcc -c *.c -o *.o 生成目标文件$ar crs libmyhello.a *.o 生成库$gcc *.c -o x -lmyhello 链接库,生成可执行文件$gcc *.c -o x -L. libmyhello.a 链接当地库,生成可执行文件(这个和上面一个二选其一)动态库$gcc -fPIC -Wall...
2017-12-19 20:18:04
127
原创 linux_文件io
1,文件:常规文件--,目录-d,字符设备-c,块设备-b,有名管道-p,套接字-s,符号链接-c标准输入-0,标准输出-1,标准出错-2,2,linux '\n'换行mac '\r'回车win '\r\n'换行回车3,标准io-c库:有缓存,可以fflush刷新缓存文件io :没有缓存4,标准io(库调用)FILE*(文件对象,stdin-0,...
2017-12-19 20:06:57
229
原创 TCP/IP和其他的协议视图
7 应用层 例如HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP 6 表示层 例如XDR、ASN.1、SMB、AFP、NCP 5 会话层 例如ASAP、TLS、SSH、ISO 8327 / CCITT X.225、RPC、NetBIOS、ASP、Winsock、BSD sockets ...
2017-12-19 16:34:01
329
原创 c++_运算符重载
C++中重新定义这些运算符,赋予已有运算符新的功能,注意二异性1,实质是函数重载2,不能有默认参数,不会改变运算符的优先级和结合性3,双目运算符不能将 = () [] -> 重载为类的友元函数。其他:对于成员函数来说,一个操作数通过this指针隐式的传递(即本身) a.operator+(b);另一个操作数作为函数的参数显示的传递;对于友元函数(非成员函数)两个操作数都是通...
2017-12-19 15:58:23
150
原创 c++_public protected private的权限
1,权限访问public:类内部,友元类友元函数可以访问,类对象可以访问protected:类内部,友元类友元函数可以访问,类对象不可以private:类内部,友元类友元函数可以访问,类对象不可以2,派生之后的权限private 属性不能够被继承。使用private继承, 父类的protected和public属性在子类中变为private;使用protected继承,父类的pr...
2017-12-19 10:10:09
207
原创 c++_构造析构函数
1,构造函数,可以被重载a> 函数与类名相同b>没有返回值c>定义的时候被系统调用浅拷贝和深拷贝:浅拷贝对象(两个)指向一片堆区,深拷贝对象分别指向一个堆区构造函数3种方式:默认构造,复制构造,赋值构造2,析构函数,不能被重载,没有返回值,没有参数,可以显示调用(对象不会被销毁)...
2017-12-18 20:28:24
158
原创 c++_重载
意义:方便直接使用,不用考虑命名1,函数名相同,参数个数和类型不同2,关于默认参数,有以下几点:a>引用类型传参,不能是实际值,可以是全局变量b>右侧全默认原则:某一参数有默认值,其右侧的参数全都要有默认值c>从左传参原则:给某一形参传值时,其左侧形参都要传值。说明:传递参数和默认参数的配合使用很灵活,只要没有歧义,即编译不出错,都可以。...
2017-12-18 20:09:49
135
原创 c++_友元基础知识
友元,打破类的隐藏和封装,方便访问与修改,提高效率1,友元函数:直接在函数前加friend,并且没有this->属性(非类成员函数)函数与存放位置无关,直接调用,类似于使用类空间,直接只用函数名调用。2,友元类:类前加上friend,没有交换性和传递性,不能互为友元,数据传递:a>,其中静态变量常用于类与类的数据传递b>,直接引用类,实现数据传递3,友...
2017-12-18 16:43:11
315
原创 c++_static和const
static和const对直接变量和函数修饰,与c类似,以下主要是在类中的使用static类成员变量:必须在类外部初始化,int Demo::num = 10;(对象A的static变量值,在对象B定义时传给B,他与具体对象不相关联)类成员函数:没有对象的this指针(默认类成员都有一个this->),可以被对象调用(*.func)或者类名::静态成员其他:静态成员函数不能访...
2017-12-18 15:37:39
158
原创 关于有名管道( fifo)open时阻塞的问题
问题:有名管道,mkfifo了两个文件,然后文件io-open打开的时候,阻塞在open里面了,找了好久,没找到,无解网上搜索。分析:一般情况下(没有指定O_NONBLOCK),只读open要阻塞到某个其他进程为写而打开这个FIFO为止。类似的,只写open要阻塞到某个其他进程为读而打开它为止。 如果指定了O_NONBLOCK,则只读open立即返回,但是如果没有进程为读...
2017-12-04 15:17:54
4070
3
C# 收发邮件系统完整版 mail send receive system 全场最低
2017-02-05
Qt用串口读单片机温度数据画动态波形曲线 全场最低分 超实用
2017-02-05
基于mini_stm32的ad9854程序(可用)
2015-07-21
Everything-1.4.1.935.x86-Setup.exe.rar
2020-05-20
Q-Dir_Installer.zip
2020-05-20
Freescale MQX实时操作系统用户手册(中文)
2020-04-26
大象:Thinking in UML 清晰完整版pdf
2019-06-04
QT4基础教程
2017-02-05
基于STM32的wifi模块连接实现 实用
2017-02-05
esp8266和stm32驱动之三实现访问网站获取数据-实用
2017-02-05
NModbusAPI说明文档(中文的) 实用
2017-02-05
关于qt android video问题
2015-07-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人