自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

欢迎来到我的空间

不积跬步无以至千里,愿与君共勉!

  • 博客(193)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

转载 走进嵌入式Linux系统的内部

Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。 1. linux内核内核是操作系统的核心,具有很多最基本功能,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能

2017-05-27 21:44:17 1392

原创 c语言中,关于延迟函数的理解

延迟函数 sleep()在Linux下c语言中的使用

2017-05-26 10:21:56 3622

转载 迪拜机器人警察上岗 精通6种语言

【科技讯】5月22日消息,据外媒报道,全球首个警察机器人昨天正式加入迪拜警方服役,帮助迪拜警方维护治安,服务于人。这款机器人身高170厘米,体重100公斤。它配备了“情感检测装置”,能分辨1.5米内的动作和手势,同时还可以辨别人脸的情绪和表情。在巡逻街道的时候,机器人将帮助警方找到违规人员并提供相关视频记录。迪拜警方表示,机器人可以帮助街上、公共场所的人们,还可以同

2017-05-25 22:25:45 350

转载 详解C语言中的stdin,stdout,stderr

我们在写C程序时经常遇到printf(),fprintf(),perror(),这些东西到底有什么作用。说到这不得不提及stdin,stdout,stderr。想想,我们在用C去写文件时的操作,File *fp=fopen(),这个fp就是我们向系统申请的,相当于一通往文件的通道。 其实,stdin,stdout,stderr就是这个fp,不过他是随着计算机系统的开启默认打

2017-05-24 22:36:21 63991 3

原创 用 c 语言实现自动发牌

一副扑克有52张牌,打牌时将牌发给4个人,现设计一个程序完成自动发牌工作。要求黑桃用 S 表示;红桃用 H 表示;方块用 D 表示;梅花用 C 表示程序如下#include <stdio.h>#include <stdlib.h>#include <time.h>void p(int *, char *);int comp(const void *j, const void *i);int main()

2017-05-23 20:27:03 5150

原创 c语言中,关于随机函数的使用详解

c语言中,如何产生X ~ Y范围内的随机数c语言中大家都知道的随机函数为random,但是random函数并不是ANSI C标准,所以random函数不能在gcc或者vc等编译器下编译通过。c语言中,rand()函数可以产生随机数,但其产生的随机数是固定的。

2017-05-23 10:12:39 2559

原创 C语言中,输出一组数的排列和组合

N个元素中取出M个元素的所有排列#include <stdio.h>#define MAX 10void print();void Perm(int step);int used[MAX] = {0}; int result[MAX] = {0}; int M, N;int main(){ printf("Please input N M = "); scanf("%d %d

2017-05-22 15:00:55 9430 5

原创 双向循环链表简单的插入、删除、修改以及查找功能的实现

```#include <stdio.h>#include <stdlib.h>#define T 1#define F 0typedef int ElementType;typedef int Boolean;typedef struct node* Node;struct node //定义双向的结构体{ struct node* prior; ElementType

2017-05-21 21:01:33 1016

转载 你知道吗?为何C语言函数调用要堆栈,而汇编却不需要?

最近,看了很多关于uboot的分析,其中就有说要为C语言的运行,就要准备好堆栈。而在Uboot的start.S汇编代码中,关于系统初始化,也看到有堆栈指针初始化这个动作。但是,从来只是看到有人说系统初始化要初始化堆栈,即正确给堆栈指针sp赋值,但是却从来没有看到有人解释,为何要初始化堆栈。 今天,我们就来试图解释一下,为何要初始化堆栈,即: 为何C语言的函数调用

2017-05-20 22:20:42 382

转载 干货!ARM常用的22个概念!快收藏

1.ARM中一些常见英文缩写解释 MSB:最高有效位; LSB:最低有效位; AHB:先进的高性能总线; VPB:连接片内外设功能的VLSI外设总线; EMC:外部存储器控制器; MAM:存储器加速模块; VIC:向量中断控制器; SPI:全双工串行接口; CAN:控制器局域网,一种串行通讯协议; PWM:脉宽调制器; ETM:嵌入式跟踪宏; CPSR:当前程序状态寄存器;

2017-05-19 22:41:42 307

转载 取代Android?聊聊谷歌的Fuchsia新操作系统

最近,一款由谷歌开发,被称为 Fuchsia 的操作系统在网上曝光。Fuchsia 是在去年 8 月就进入了 GitHub 项目,但谷歌对此非常低调,像操作系统这样的重量级项目,却没有官方的宣传和说明介绍。网上的介绍称这个操作系统采用了代号为 Magenta[一种给给的洋红色] 的微内核设计 [MicroKernel],是一种实时操作系统 [real-time OS]。在谷歌官方介绍出现前,网

2017-05-18 19:25:05 1457

转载 WannaCry 2.0 已能通过 Wine 感染 Linux 系统

WannaCry 爆发以来,引起全球恐慌,各大安全机构和用户纷纷通过打补丁、关闭 445 端口等方式加强了旧版本 Windows 系统的防护。然而此病毒的变种正在以人们最易忽略的方式加速渗透传播,长期以对 Windows 病毒免疫著称的 Linux 也有被侵染之势。 根据网络安全公司 Myhackerhouse 联合创始人 hackerfantastic 的测试 发现 ,比特币勒索病毒最新

2017-05-17 21:25:36 666

转载 操作系统如何管理CPU资源?细说操作系统进程与多任务模型问题

进程是操作系统的核心概念,是正在运行的程序的一个抽象,那么我们有必要进行深入的分析了。现代操作系统都是多道程序设计,意思是:我们的单核心cpu也可以“同时”运行多个程序,比如你可以一边qq,一边酷狗听歌或者再干点别的。事实真的这样吗?你可能会说,事实真的就这样啊!那我告诉你,那是你的世界,在cpu的世界里,事实不是这样的。在cpu看来,他们是依次循环进行的(这里我们只考虑单核心)。就是说在某一个时刻

2017-05-15 21:43:11 1803

转载 Win10/Win7小技巧:教你如何彻底关闭系统进程

无论Windows 10打过多少补丁,官方说的有多么完美,运行卡顿和程序假死还是常有的事儿。这个时候常规的解决方案就是用任务管理器(Ctrl+Alt+Del)去解决一些占用系统资源非常过分,“表脸”的进程。但有的时候会发现任务管理器并不能100%完成我们想要的工作,遇到一些系统进程或具有关联属性(进程树)的应用时,它就是“有心杀贼无力回天”了。等等,先不急着安装那些管家什么的,小编

2017-05-14 22:15:01 1439

转载 不再害怕驱动!Linux字符设备驱动详解

现实世界中存在着大量的设备,操作系统要求能够控制和管理这些硬件,而驱动就能帮助实现管理控制。下面我们从不同的角度理解一下驱动:驱动(Device Driver)相当于硬件的接口,它维护着我们的硬件,操作系统通过驱动这个接口才能控制硬件。驱动本身就是一段代码,自己不会主动运行,而是被操作系统调用执行。驱动是内核的一部分,运行在内核空间。驱动和应用程序有什么关系?应用程序在运行中往往要用到硬件设备,但应

2017-05-13 21:54:33 368

原创 1 ~ 9 每个数只能用一次 组成各类运算公式

#include <stdio.h>int a[9] = {0};int fun();int main(){ int m, n, x, y, count = 0; //第一类 OOO + OOO = OOO 即三位数加三位数等于三位数,且1~9只能出现一次。 printf("OOO + OOO = OOO :\n"); for (m = 123; m <= 86

2017-05-12 18:42:48 4526

转载 gcc常用命令选项

gcc这条命令用来将源代码生成可执行程序,下面来看一下gcc的常用选项。 1、无选项编译链接 例:命令:gcc test.c //会默认生成a.out可执行程序 2、-E: 进行预处理和编译,生成汇编文件。 命令:gcc -E test.c //会生成test.i文件3、-S: 进行预处理,编译,汇编等步骤,生成“.s”文件 例:命令:gcc -S test.c //会

2017-05-11 22:46:48 11212

转载 嵌入式编程与PC编程有何区别

能从PC机器编程去看嵌入式问题,那是第一步;学会用嵌入式编程思想,那是第二步;用PC的思想和嵌入式的思想结合在一起,应用于实际的项目,那是第三步。有些朋友是从PC编程转向嵌入式编程的。在中国,嵌入式编程的朋友很少是正儿八经从计算机专业毕业的,都是从自动控制啊,电子相关的专业毕业的。这些童鞋们,实践经验雄厚,但是理论知识缺乏;计算机专业毕业的童鞋很大一部分去弄网游、网页这些独立于

2017-05-10 22:27:55 1001

转载 腾讯云正式加入 CNCF 和 Linux 基金会

美国东部时间 5 月 8 日,全球知名非营利性组织 CNCF (Cloud Native Computing Foundation) 在全球开源盛会“2017 OpenStack 峰会”上宣布,腾讯云作为金牌会员正式加入 CNCF 基金会。按照规则,基于企业会员对代码的贡献、贡献的标准和规范、为开源组织提供的支持等综合标准,CNCF 基金会授予腾讯云金牌会员身份,同时基于腾讯云在 Linu

2017-05-09 22:52:50 535

转载 Linux下的目录树

目录树的主要部分有root(/)、/USR、/var、/home等等。下面是一个典型的linux目录结构如下: / 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件等 /dev 存放设备文件 /etc 存放系统的配置文件 /home 用户文件的主目录,用户数据存放在其主目录中 /lib 存放必要的运行库 /mnt 存放临时的映射文件系统,我们

2017-05-08 21:57:53 403

原创 30秒看懂数组中的地址问题

一、 对数组地址的理解首先需要明确以下几个概念:以一维数组 array[3] = {0, 1, 2} 为例。1、数组的首元素地址    &array[0]2、数组的地址    &array3、数组名 array 代表数组首元素的地址    即 array  与  &array[0] 等价4、步长的概念    例如:执行 &array + 1,对于这个数组来说

2017-05-07 21:58:17 4908

原创 关于shellll脚本的基本编译

什么是shell?  shell是用C语言进行编写,在Linux内是用户和系统的桥梁。下面主要针对最常见的shell中的 Bash shell的基本编译进行说明。一、shell最简单的脚本运行该脚本二、shell中的变量注: ‘=’两边无空格!    其中单引号中的内容会原样输出,内部不能使用变量,也不能使用转义字

2017-05-06 19:58:21 1427

转载 关于Linux进程你所需要知道的一切

进程(process)是指正在执行的程序;是程序正在运行的一个实例。它由程序指令,和从文件、其它程序中读取的数据或系统用户的输入组成。进程的类型在 Linux 中主要有两种类型的进程:前台进程(也称为交互式进程) - 这些进程由终端会话初始化和控制。换句话说,需要有一个连接到系统中的用户来启动这样的进程;它们不是作为系统功能/服务的一部分自动启动。后台进

2017-05-05 20:55:14 413

转载 嵌入式应用层开发学习步骤

如果从应用层的应用开发出发,建议先熟悉API函数,如果从应用层的界面开发出发,则建议学习Qt,WinCE或Android等。但真实的嵌入式开发,熟悉以上还是远远不够的,建议如下学习曲线.第一节段 熟练使用Linux操作系统学习Linux操作系统的概念和安装方法,理解Linux下的基本命令、管理配置和编辑器,包括VI编辑器,GCC编译器,GDB调试器和 Make 项目管理工具

2017-05-04 16:00:17 741

转载 嵌入式linux基础学习笔记

Linux是什么1、 Linux的核心原型是1991年由托瓦兹(Linus Torvalds)写出来的。2、 1973年:unix的正式诞生,Ritchie等人以C语言写出第一个正式unix核心。3、 1977年:重要的unix分支——BSD(Berkeley Software Distribution)的诞生。4、 目前被称为纯的unix指的就是S

2017-05-03 21:28:52 309

转载 嵌入式系统开发提升可靠性的七大技巧

提升可靠性的七大技巧  从规范完善的开发周期到严格执行和系统检查,开发高可靠性嵌入式系统的技术有许多种。本文介绍了7个易操作且可以长久使用的技巧,它们对于确保系统更加可靠地运行并捕获异常行为大有帮助。   技巧1——用已知值填充ROM  软件开发人员往往都是非常乐观的一群人,只要让他们的代码忠实地长时间地运行就可以了,仅此而已。微控制器跳出应用程序空间并在非预想的代码空间中执行

2017-05-02 21:07:30 1199

转载 分析C语言函数机制的优点和函数的使用

函数机制的优点:使程序变得更简短而清晰有利于程序维护可以提高程序开发的效率提高了代码的重用性常用内置函数(库函数)的使用方法当遇到函数原型为return_type function_name(arg1_type arg1, arg2_type arg2)时就可以如下使用return_type r_value;arg1_type a1_value;arg2_type a2_value;r_v

2017-05-01 20:36:15 4545

原创 C语言中对于for语句,变量赋初值问题探讨

在C语言编程中很多时候会用到for语句循环,这就需要对for循环里面所涉及的变量赋值,有时赋值赋不对则会造成结果的错误。  下面就我在编程中所涉及的问题进行详解。  例如:打印所有不超过256的,其平方具有对称性质的数即回文数。程序如下:#include int main(){    int a[5], n, i, c, j ;    for ( i =1;

2017-04-30 15:08:10 5308

转载 翱旗科技发布四款新品,欲打造产品化、通用化DT服务

“数据”已经成为了信息时代的石油,但就目前来看,并非每家企业都能够有效将数据利用起来,所以数据能力也成为了越来越多企业进行投入的方向。4月13日,翱旗科技在京召开了数据领域通用化产品发布会,会上,翱旗科技全面展示了其在数据领域的完整技术路线和通用化产品。数据从产生开始,必然要经历“数据采集与融合、存储与计算、剖析与管理、挖掘分析、数据展现”等全过程才能体现数据蕴含的价值和力量。而针对上

2017-04-29 20:46:58 322

转载 慧荣科技亮相2017纽伦堡国际嵌入式应用展览会

在设计和推广固态存储设备专用NAND闪存控制器方面处于全球领导地位的慧荣科技公司(Silicon Motion Technology Corporation, 纳斯达克交易代码: SIMO)近日宣布继续扩展旗下广受欢迎的SATA 6Gb/s FerriSSD®工业级BGA SSD产品线,推出采用最新一代3D NAND、拥有端到端路径保护、NANDXtend™ 代码纠错(ECC)以及Inte

2017-04-28 20:43:31 454

原创 通过调用一个求解阶乘的函数,求解一个三位数,该三位数等于其每位数字的阶乘之和。

#include int fun();int main(){    int i, a, b, c;    for ( i = 100; i     {        a = i / 100;        b = i / 10 % 10 ;        c = i % 10;       // printf("%d%d%d", fun(a), fun(

2017-04-27 20:29:39 3393

原创 Linux操作以及c编程规范 、附带个问题

Linux运行c文件进入死循环时,按ctrl+c就可以强制退出。

2017-04-26 15:07:30 363

原创 C语言-结构(一)

一、结构声明,结构变量 例如:struct book {    char title[MAXTITL];    char author[MAXAUTL];    float value;} library ; //在定义之后跟变量名或者struct book {    char title[MAXTITL];    char author[MAXAUTL

2017-04-24 22:05:00 269

基于51单片机12864液晶屏的贪吃蛇游戏

基于51单片机12864液晶屏的贪吃蛇游戏,通过红外遥控器控制,可以上下左右移动、暂停、背景音乐、多种难易程度和游戏地图供你选择、华丽滴菜单等,单片机型号为STC15F60S2,内含项目源代码、自己设计的15系列单片机原理图、PCB、项目文档以及项目演示视频照片等。

2018-03-19

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

TA关注的人

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