UNIX下几种常见系统故障和解决办法

我们作为金融系统的计算机系统管理员,从1994年开始就看好了SCO公司的多用户系列操作系统产品,先后使用了XENIX、SCO UNIX SVR4的普通版和网络版、SCO OPENSERVER 5.0.5,原因是这些操作系统产品有多用户、多任务的功能,安...

rlc串联谐振电路仿真实验分析

在含有电感 L 、电容 C 和电阻 R 的串联谐振电路中,需要研究在不同频率正弦激励下响应随频率变化的情况 ,即频率特性 。Multisim仿真软件可以实现原理图的捕获、电路分析、电路仿真、仿真仪器测试等方面的应用,其数量...

嵌入式Linux系统开发学习路线

一:嵌入式c语言C语言是嵌入式领域最重要也是最主要的编程语言,通过大量编程实例重点理解C语言的基础编程以及高级编程知识。包括:基本数据类型、数组、指针、结构体、链表、文件操作、队列、栈等。二:Linux基础Linux操作...

Linux嵌入式系统

操作系统是一种在计算机上运行的软件,它的主要任务是管理计算机上的系统资源,为用户提供使用计算机及其外部设备的接口。它存在的目的是为了管理所有硬件资源,并且提供应用软件一个合适的操作环境。嵌入式系统由于硬件的...

资深工程师告诉你嵌入式学习的学习方向

有些人一直在问,嵌入式要学哪些东西?今天我详细告诉你到底要学哪些技术:刚开始:1)学习 Linux系统安装、 常用命令、应用程序安装。2) 学习 Linux 下的 C 编程、这本书必学《UNIX 环境高级编程》、《UNIX网络编程》,Rechard Steve...

Linux文本编辑器命令大全

Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配。注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功能。· 所有版本的 Linux 都带有 vi 编辑器;&mi...

4412开发板学习笔记---Linux驱动的学习方法

1.Linux驱动的学习方法Linux内核中有上百个驱动,知识点多且杂,对于想学习驱动的同学来说,需要尽快掌握基础知识:如开发板的基本使用,硬件基础知识,开发环境的搭建,Linux常用工具,内核的编译以及烧写,Linux shell命令,C语言基础,L...

AM5728/AM57XX openCL使用案例一(查询硬件资源)

我们知道AM5728/AM57XX系列芯片支持使用openCL来调用DSP,因此可以通过openCL硬件加速来提升算法效率,降低 CPU使用率.openCL是一个为异构系统编写程序的框架,该异构系统可以由CPU,GPU,DSP甚至FPGA组成,因此openCL开发人员需...

AM5728/AM57XX openCL使用案例二(计算向量和)

下面通过一个向量相加的程序来了解OpenCL . 有A,B两个四维向量,相加后值存在C向量里,openCL根据用户提供的维数,将向量分解成多个任务分发给DSP进行并行计算openCL程序分为两个部份,一部份是内核代码,负责具体算法。另一部...

AM5728/AM57XX openCL使用案例三(矩阵转置)

下面对4x4矩阵进行转置,调用openCL,4X4矩阵采用二维数组进行存储,在程序设计上,让转置过程分10次转置完成,就是一次转一行,因此OpenCL的工作维数是二维。openCL程序分为两个部份,一部份是内核代码,负责具体算法。另一部份是主...

AM5728/AM57XX openCV使用opencl案例一(Sobel算法)

OpenCV介绍:OpenCV(Open Source Computer Vision Library)是一个基于BSD许可开源发行的跨平台计算机视觉库。实现图像处理和计算机视觉方面的很多通用计算。OpenCV-OpenCL加载:Opencv3.1架构添加新的概念transparent AP...

嵌 入 式 系 统 的 分 层

嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。1.硬件层它是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,...

嵌入式系统如何学习

一、嵌入式系统的分层与专业的分类嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。1.硬件层它是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起...

关于USART接收中断的问题分析及解决

问题描述:在使用USART做串口通讯时,我只把接收中断打开,并设置抢占优先级为最低一个级别,而接收中断上一个优先级处理事情比较多,可能占用了2ms时间。当我使用9600波特率往下位机发送数据,速度非常快,就是一直按回车发!问题就...

深究标准IO的缓存

一、IO缓存系统调用:只操作系统提供给用户程序调用的一组接口-------获得内核提供的服务。在实际中程序员使用的通常不是系统调用,而是用户编程接口API,也称为系统调用编程接口。它是遵循Posix标准(Portable operation sy...

如何学好嵌入式系统(基于ARM平台),10年经验分享

着重理解“嵌入”的概念 主要从三个方面上来理解。 1、从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片要造外部桥路来扩展实现,象...

Linux系统真正的优势以及学习方法

作为一名Linux爱好者,在Linux的世界中也算是半个老司机了,从桌面玩到服务器、从ubuntu到centos、从计算机到路由器,各种Linux的花俏玩法都略有体验。作者并非职业Linux选手,我仅仅是将Linux作为兴趣和特长,给我的学习和生...

AD转换__HCS12学习笔记(3)

AD转换是非常普遍的模块了,在8位或者16位的单片机上都有应用,在HCS12系列的单片机上内置了一个AD转换器,可用于8位或者10位的AD转换,但做不了DA转换。原理很简单,就不提了。寄存器:ATDCTL2 AD的电源开关、中断和外部触发信...

从IO口讲起__HCS12学习笔记(1)

A、B、E、K可以通过寄存器控制是否上拉电阻,他们共用一个使能位PUCR。H、J、M、P、S、T也可做普通IO口,基本与A口类似。1.1 输出程序用到了,PORTB口的输出,控制小灯的亮和暗,设置DDRB都为高位,就可以使得B口输出,也就是IO口...

八位移位寄存器VHDL程序设计

用vhdl表示八位寄存器的程序如下所示: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;entity a is port(clk:in std_logic; data_in:in std_logic; data_out:out std_logic_vector(7 ...

加密系统调试_HCS12学习笔记(8)

最近搞了一下关于加密的调试,在此做个记录。其实很简单,只是对#FF0F进行操作一下就可以了,具体位操作详见S12FTS256KV2.PDF,寄存器FESC。在MAIN.C的最后加上const volatile unsigned char SecureReg @(0xFF0F)=0xFC;即可...

FLASH调试_HCS12学习笔记(7)

在无数次询问以及查询后,终于把FLASH的问题搞清楚了,原来无论单片机的FLASH分页与否,程序都是写在FLASH上的,所以,当我调用PPAGE寄存器的时候,改变了FLASH的页面,也就是说存储在FLASH上的程序就读不到了,因此,这个时候出于保护...

FLASH调试_HCS12学习笔记(6)

停了一阶段没有调试FLASH的程序,调了一阶段的CAN,无果,CAN的程序也很麻烦,不过今天早上终于把FLASH的程序调通了,其实,程序本身应该是没有什么问题的,但是因为程序没有分段存储,所以直接导致FLASH的分页寄存器没有能够读出来,...

FLASH__HCS12学习笔记(5)

昨天调了一天的FLASH擦写,到最后依旧没有调通,但是对FLASH的结构还总算有一定的了解了。我调的程序是北航出版社的《使用HCS12微控制器的设计与应用》这本书附带光盘上的例子,程序似乎没有问题,但是FLASH确实是擦不掉,串口...

Linux软连接和硬链接-实际操作一遍你就会懂

1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。【硬链接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文...

引脚与端口的区别,你知道吗?

引脚就是芯片外接的引脚啊,一个芯片至少有VCC,GND引脚,象51单片机还有IO引脚,串口引脚等,引脚就是物理外接的一个个管腿啊。端口是单片机内部(CPU单元)和外部IO的接口组,比如说PA端口,有8个引脚,PA0~PA7。端口在IO空间映射有寄...

嵌入式JTAG接口是导致设计出问题的罪魁祸首?

JTAG是一种标准的通讯口,用来传输调试信息。简单说它就是一种专用的串行通讯口,配合专用的设备(仿真器)与上位机进行通讯交换数据,在芯片内有专门的硬件部分与这个接口配合,可以让上位机通过这个口的信息来下载程序、控制...

详解嵌入式开发中DSP与FPGA的关系

常所说的单片机侧重于控制,不支持信号处理,属于低端嵌入式处理器,arm可以看做是低端单片机升级版,支持操作系统管理,更多接口如网卡,处理能力更强;fpga是可编程逻辑器件,侧重时序,可构建从小型到大型的几乎所有数字电路系统,DS...

嵌入式系统的5个特征

嵌入式软件开发人员在创建他们的系统时需要监控五个重要特征。现代系统拥有丰富的资源,监控这些特征有时看似价值不高或没有必要,但目前为止在现场遇到的最大问题总是与这五个关键特征密切相关。无论一个嵌入式系统多简...

Java代码的编译与反编译

一、什么是编译1、利用编译程序从源语言编写的源程序产生目标程序的过程。2、用编译程序产生目标程序的动作。 编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制...

超详细的 linux挂载详解

一 、linux文件结构 文件结构是文件存放在磁盘等存贮设备上的组织方法。主要体现在对文件和目录的组织上。目录提供了管理文件的一个方便而有效的途径。linux使用标准的目录结构,在安装的时候,安装程序就已经为用户创建...

十点总结:为何Linux系统如此深得人心

Linux过去主要作为服务器运行,但经过几年的发展,其用户界面有了很大的改善。如今,Linux已经成为美观易用,用户友好的桌面操作系统。在某些方面,Linux甚至赶超Windows和Mac成为用户首选。Linux为何如此深得人心呢?以下是我们...

python常用框架及第三方库

一、Web框架1.Django:开源web开发框架,它鼓励快速开发,并遵循MVC设计,比较庞大,开发周期短。Django的文档最完善、市场占有率最高、招聘职位最多。全套的解决方案,Django象Rails一样,提供全套的解决方案(full-stack framewor...

C语言发展历程,C语言特点

C语言的发展颇为有趣。它的原型ALGOL 60语言。1963年,剑桥大学将ALGOL 60语言发展成为CPL(Combined Programming Language)语言。1967年,剑桥大学的Matin Richards 对CPL语言进行了简化,于是产生了BCPL语言。1970年,美国...

用汇编的眼光看C/C++之深入指针

指针是我们在C/C++中经常遇到的一种数据类型。指针用的好,可以提高代码的可读性;但是如果使用不恰当,反而会造成很大的麻烦。指针,也就是指向某一种数据类型的地址。这种类型很多,它可以是编程语言自带的类型,比如说int、lo...

超经典!工程师嵌入式Linux自学笔记及体会 - 全文

一个典型的桌面 Linux 系统包括 3 个主要的软件层---linux 内核、C 库和应用程序代码。内核是唯一可以完全控制硬件的层,内核驱动程序代表应用程序与硬件之间进行会话。内核之上是 C 库,负责把 POSIX API 转换为内核可...

Arch Linux安装实用教程详解

最近在评论区看到很多人对Linux开始感到兴趣,身为一个精通各种系统开关机,各种发行版安装与卸载的老司机,我觉得我有必要站出来为大家安利一下Arch Linux了。Arch Linux是一款轻量、简单的发行版,我个人感觉这是最适合新...

关于嵌入式闪存的一些错误观念

多年来,汽车行业的发展和创新一直推动着半导体行业的发展。根据IHS的数据可知,汽车半导体市场的年收入已经超过300亿美元,而随着ADAS的增加、燃油效率的提高以及便利性的提升,这一数字还将不断上升。目前,每辆豪华车内部半...

MCU设计的最佳实践和除错技巧

在本文中,小编将分享在软件开发方面的经验教训。关键词extern,staTIc和volaTIle都是什么?你应该在你的代码中使用递归还是malloc()?1)查找硬件设备的现有软件示例开发任何嵌入式解决方案的第一步是找到可以使您的任务更简单...

Linux学习指南针,起步、进阶、高级应用都在这里!

Linux学习指南针,起步、进阶、高级应用都在这里!一.为什么要学linux?当然最重要是爱好和兴趣!如果你没必要学,或者根本不喜欢,请不要浪费时间,你学也学不好!二.起步你应该为自己创造一个学习linux的环境--在电脑上装一个linu...

电子工程师必上的十大专业网站

在电子产业混,情报能力是相当重要的,具体体现在一要能及早全面地获得最新的设计资讯,二要能认识一些专家级的大虾,当有设计难题时,这些大虾可以伸出热情的手拉你一把,则对你的设计会帮助很大的。小可我在电子产业混了几年,在...

从0到1,嵌入式开发就这么简单

对于从事嵌入式系统软件开发的人来讲,应该掌握哪些基本技能呢?(1)懂得C语言和一些简单的汇编语言编程。(2)能够阅读一般嵌入式系统的原理图。(3)至少熟悉一种嵌入式系统的软件开发环境。(4)熟悉一种嵌入式系统软件的开发过程,如:...

Linux运维工程师应该必备的8中技能要求

当你想成为一名合格的linux工程师的话,我们都知道这不止是说说而已啊,我们要用我们的行动或者说是能力去坚持下去,要扎根扎底,只有这样我们才能立足于linux工程师这个职位当中吧,如果说我们要做到优秀的话,我相信这样的话那...

嵌入式系统知识和接口技术详解

嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入...

嵌入式系统的开发技巧

技巧1——用已知值填充ROM软件开发人员往往都是非常乐观的一群人,只要让他们的代码忠实地长时间地运行就可以了,仅此而已。微控制器跳出应用程序空间并在非预想的代码空间中执行这种情况似乎是相当少有的。然...

基于 Linux 的动态电源管理:使嵌入式设备更节能

为了在产品众多、竞争激烈的市场上使产品与众不同,手持设备的制造商们往往把电池寿命和电源管理作为手机、PDA、多媒体播放器、游戏机、其它便携式消费类设备等产品的关键卖点来考虑。用户是从电池寿命这方面来看待电...

H.264视频编码器的汇编程序级优化

通过 profile clock工具找出效率很低的部分,使用线形汇编继续优化。线性汇编语言是 C6000系列 DSP独有的一种编程语言,介于高级语言和低级语言之间。和标准的汇编语言不同的是,在编写线性汇编程序时可不必考虑指令的延时...

H.264视频编码器的实现

H.264视频编码器的实现有多种方法,不过大部分都是进行移植、优化的操作。H.264代码要在DSP的软件平台CCS环境下运行,需要注意几个问题:如配置文件、库文件的改动、数据类型的调整、汇编程序的处理、内存终结模式的调整等...

H.264视频编码器的代码优化

进行代码优化,先要找出程序的瓶颈,即占用CPU时间较多的代码,然后对其进行有针对性的优化。使用CCS提供的代码剖析工具Profile可以统计显示出程序中各个重要段和函数的运行时间,找出运算量较大的程序段,优化这些程序段,对于...

初学linux系统的常见问题

一、 如何建立多用户提醒大家一句,别一直使用root用户,因为root用户在系统中有着至高无上的权力,一不小心就可能破坏系统。比如我们想删除/temp目录下的文件却将命令不小心输成“rm / temp(在‘/’后多了...

第二章 畅学多功能底板LED彩色流水灯开放源码

/*******************************************************程序功能:彩色流水灯测试开发环境:Keil4硬件环境:CEPARK多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.092M晶振 接线说明:单片机P1口接底板单色流水灯模块的JP...

第一章 畅学多功能实验箱LED单色流水灯开放源码

/*******************************************************程序功能:花样流水灯开发环境:Keil4硬件环境:eeskill多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.092M晶振 接线说明:使用杜邦线连接P1口与底板单色流水灯模...

嵌入式系统工程师十“不要”

1. 不要第一句话就说:给个代码吧!你应该想想为什么。当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异。 2. 初学者请不要看太多的书那会误人子弟的。先找一本好书系统的学习。很多人用了很久都是只对部...

七个嵌入式开发技巧

技巧1——用已知值填充ROM 软件开发人员往往都是非常乐观的一群人,只要让他们的代码忠实地长时间地运行就可以了,仅此而已。微控制器跳出应用程序空间并在非预想的代码空间中执行这种情况似乎是相当少有的...

第五章 畅学多功能实验箱4位一体数码管开放源码

/***********STC12C5A60S2单片机驱动74595 8位LED显示实验*************程序功能:上位机配套的8位数码管下位机代码开发环境:Keil4硬件环境:CEPARK多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.0592M晶振 接线说明:单片...

第四章 畅学多功能实验箱一位数码管开放源码

/***************STC12C5A60S2单片机 1位LED显示实验******************程序功能:上位机配套的一位数码管下位机代码开发环境:Keil4硬件环境:CEPARK多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.0592M晶振 接线说明:单片...

第三章 畅学多功能实验箱红绿双色流水灯开放源码

/*******************************************************程序功能:双色LED测试程序开发环境:Keil4硬件环境:CEPARK多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.092M晶振 接线说明:单片机P10~P11接底板JP19,分别为:P10-...

驱动程序安装常用方法说明

大部分驱动都可以双击驱动文件,然后一路next自动安装的。但是遇到个别电脑安装不成功的时候,就需要手动安装了。一、 常用操作步骤一手动安装就是不用电脑搜索,自己指定电脑的搜索路径。打开设备管理器中没有成功安装的...

第七章 畅学多功能51实验箱独立按键开放源码

/************STC12C5A60S2单片机 独立按键单次触发实验uart***************程序功能:独立按键上位机配套的下位机代码开发环境:Keil4硬件环境:CEPARK多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.0592M晶振 接线说明:单...

第六章 畅学多功能51实验箱矩阵按键开放源码

/************STC12C5A60S2单片机 矩阵按键单次触发实验uart***************程序功能:上位机配套的矩阵键盘下位机代码开发环境:Keil4硬件环境:CEPARK多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.0592M晶振 接线说明:单...

畅学多功能51实验箱LCD1602液晶应用源码资源

/*******************************************************程序功能:LCD1602液晶静态显示开发环境:Keil4硬件环境:CEPARK多功能开发学习板/实验箱(2017版),STC12C5A60S2,11.092M晶振 接线说明:单片机P1口与底板JP33排针相连,...

AVR Stduio安装与使用

从光盘中找到AVR Stduio安装文件,或者从网上下载AVR Stduio 4.13版,该软件是免费软件,可以直接到AVR的官方网站上下载。双击安装文件,出现如下画面,接着出现如下画面然后出现如下画面,点击“NEXT“出现如下画面,选...

畅学AVR多功能实验箱JTAG在线仿真

1)首先设置熔丝位,打开JTAG功能,如下图。使用USB ISP下载器写入熔丝。2)硬件连接(a)10芯线一端接核心板的JTAG口(b)10芯线另一端接仿真器JTAG(c)JTAG串口接串口线,串口线的另一头接电脑。(d)打开电源开关,接着下面的操作3)仿真调试我...

AVR多功能实验箱DS1302时钟实验源码资源

/*******************************************************************************************************************程序功能:DS1302时钟实验开发环境:WINAVR/GCC20100110硬件环境:eeskill多功能开发学习板/实验...

如何为畅学多功能实验箱安装JLINK驱动

在光盘JLINK相关资料中,找到JLINK驱动安装文件,双击安装文件Setup_JLinkARM_V434.exe进行安装。点击Yes,进入下面页面点击next安装路径选择默认即可,也可以自己更改路径。这里选择默认值,点Next这里的第二项勾选,在桌面创建...

ULINK2仿真器安装使用之工程设置

一、 ULINK2仿真器ULINK2是ARM公司最新推出的配套RealView MDK使用的仿真器,是ULink仿真器的升级版本。ULINK2不仅具有ULINK仿真器的所有功能,还增加了串行调试(SWD)支持,返回时钟支持和实时代理等功能。开发工程师通过...

如何使用KEIL MDK下载程序

1. KEIL MDK简介RealView MDK开发套件源自德国Keil公司,被全球超过10万的嵌入式开发工程师验证和使用,是ARM公司目前最新推出的针对各种嵌入式处理器的软件开发工具。RealView MDK集成了业内最领先的技术,融合了中国多数...

如何给本地电脑安装IAR软件

给STM32的程序开发除了Keil MDK这个软件之外,还可以使用IAR公司的EWARM集成开发环境开发STM32程序。1.在配套光盘中找到IAR软件安装文件,并双击。2.双击最下面的autorun.exe3.在下图中选择第二项4.点击Next5.选择&ldquo...

STLINK调试下载CEPARK STM32开发板

1、 畅学 STLINK简介ST-LINK/V2 是STM8 和STM32 微控制器系列的在线调试器和编程器。单线接口模块(SWIM)和串行线调试(SWD)接口用于与应用板上的STM8 和STM32 微控制器通讯。STM8 的应用使用USB 全速接口与ST Visual Deve...

JLINK V8使用常见问题

一、 供电问题JLINK V8可以设置为对外供电,但是默认情况下是不对外输出电源的。电子园所有产品在和JLINK V8使用时,请外接电源,不使用JLINK V8供电。如果用户自己产品,想要使用JLINK V8供电的,请参看下面的操作以下是JLINK...

JTAG仿真器常见问题总结

一、 出现下面提示时,通常是熔丝位没有打开JTAG 注意在使用JTAG之前,请先使用USBASP将下面的JTAG位打开,设置为0 1. 检查晶振不是插好了2. 检查芯片有没有锁死 一、 出现下面提示时 1. 请核对你的设备管理器中JTAG...

MSP430仿真器使用常见问题

一、 主要是驱动安装问题有用户反应驱动安装不上,按照用户手册操作一直不能安装成功。可以尝试如下步骤进行安装。1. 双击设备管理器中无法安装或者提示有错误的430仿真器设备选择驱动程序——更新驱动程序...

KIT下载软件安装与使用

下载软件安装打开下载软件文件夹下的安装文件setup.exe.双击开始安装(WIN7 系统用户请鼠标右键,选择 以管理员身份运行 )一路点击NEXT,安装路径选择默认安装路径。直到安装结束安装完下载软件后,桌面会自动生成一个快捷方...

PICKIT3脱机烧写指导书

一, PICKIT3的联机烧写方法PICKIT3的联机烧写与ICD2一致,只是需要在MPLAB IDEV840或者更高版本下使用PICKIT3。烧写时,从MPLAB IDE的菜单“PROGRAMMER——PICKIT3”,选中PICKIT3即可。由于PICKIT3能...

MPLAB软件安装与使用

一、 开发环境的安装 本章讨论了如何安装PICkit 3 编程器/ 调试器系统。 1 MPLAB IDE开发环境的安装 要安装MPLAB IDE 软件,首先从CEPARK畅学系列-PIC核心板光盘中找到存放MPLAB IDE 软件的开发环境的文件夹,然后从中获...

畅学STM32多功能实验箱DS1302时钟芯片源码资源

/******************** (C) COPYRIGHT 2017 EESKILL多功能开发学习板******************** * 文件名 :main.c * 描述 :CPU不断读取DS1302时钟芯片上的数据,并显示在oled上 * 实验平台:EESKILL多功能开发学习板 * 库版本 :S...

ULINK2 降级使用步骤

ULINK2 在高版本的keil上使用后 在低版本的keil无法使用 是由于keil软件对ULink2内部硬件升级导致的。如果想继续在低版本的keil使用,只需将Ulink2初始化一下即可。其具体步骤如下:1、 插入ULINK2调试器到电脑中,找到kei...

汇编C语言混合编程经验总结

ARM汇编语言和C语言混合编程ATPCS规则体现了一种模块化设计的思想,其基本内容是C模块(函数)和汇编模块(函数)相互调用的一套规则(C51中也有类似的一套规则)。我感觉比在线汇编功能强大(不用有很多忌讳),条理更清楚(很简...

51单片机DS18B20温度计C语言程序(附详解)

#include#include#include //要用到取绝对值函数abs()//通过DS18B20测试当前环境温度, 并通过数码管显示当前温度值, 目前显示范围: -55~ +125度sbit wela = P2^7; //数码管位选sbit dula = P2^6; //数码管段选sbit ...

单片机延时方法总结举例

实现延时通常有两种方法:一种是硬件延时,要用到定时器/计数器,这种方法可以提高CPU的工作效率,也能做到精确延时;另一种是软件延时,这种方法主要采用循环体进行。1 使用定时器/计数器实现精确延时单片机系统一般常选用11.0...

Flash Loader原理

先说说Flash Loader这个小程序,IAR调试器C-SPY默认是通过它来完成数据传输、Flash 擦除和烧写等任务,当然前提是得选中Options->Debugger->Download选项下的“Use Flash Loader”,如下图:下面我们说说Flashload...

在Linux下搭建51单片机的开发烧写环境

在Linux下没有像keli那样好用的IDE来开发51单片机,开发环境只能自己搭建了。第一步:安装交叉编译工具a) 安装SDCCsudo apt-get install sdccb)测试SDCC是否可用,这是个网上找的简单的流水灯代码 test.c, 用来测试#include...

51单片机PWM的控制

一、PWMPulse Width Modulation脉冲宽度调制,简称PWM。PWM(脉冲宽度调制)对模拟信号电平进行数字编码的方法,计算机只能输出0或5V的数字电压值而不能输出模拟电压,而我们如果想获得一个模拟电压值,则需通过使用高分辨率计...

如何提高单片机程序执行效率

首先什么是执行效率。我们平常所说的执行效率就是使用相同的算法在相同输入条件下完成相同计算所产生的系统开销,目前来说一般会更多关注执行时间方面的开销。所有语言编写的代码最终要运行,都要转化成机器码。在更短的...

stdarg的用法(可变参数的用法)

stdarg宏:可变参数列表是通过宏来实现的,这些宏定义于stdarg.h头文件,它是标准库的一部分。这个头文件声明的一个va_list的类型,和三个宏va_start,va_arg,va_end。我们可以生明一个va_list类型的变量,配合三个宏使用。va_sta...

51单片机之蓝牙控制风扇

其实这个项目比较简单,只不过是我们自己把它想得太难了,下面来总结一下具体设计过程:首先买一个蓝牙模块,在手机上下载一个蓝牙串口调试助手,等同于单片机的UART串口通信,利用BUFF来获取接受到的数据,这里只需要重视一个问题...

51 汇编语言编程:走道灯控制程序

按一下按键灯就亮,延时 10s 后自动灭。在亮灯期间再按一下键,灯立即就灭。用定时器及中断实现。LED EQU P3.3KEY EQU P3.7ORG 0000HLJMP STARTORG 000BHLJMP T0_INTORG 0030H;--------------------------------START:MO...

资深程序员总结编程的15个好习惯

1. 动手编码之前,你需要对要编码实现的解决方案有一个正式的或粗略的设计。永远不要在没有任何设计的前提下就开始编码,除非所编代码不重要。2. 优秀的代码文档跟编程语言知识一样重要。在代码源文件中,为每个主要的代码...

嵌入式开发者技能大全

合格的嵌入式开发者应是多面手,应具备各方面的技能,包括从硬件到软件到应用(电力系统保护,自动化,控制,人工智能,机器学习等),从单板到系统整机,从技术到管理,甚至吹拉弹唱也需要了解一点,做项目管理时可以提升团队气氛和丰富业...

基于单片机的电子存包柜的软件设计

Small RTOS 对RAM 需求小,非常适合单片机这类资源比较少的系统上。RTOS 具有多任务处理,较强的实时性,可裁减的内核,使得实时应用程序的设计、扩展和维护变得更容易。RTOS 思想的引入,一改传统单片机软件设计方法,使其不再...

嵌入式应用层开发要学习什么?

如果从应用层的应用开发出发,建议先熟悉API函数。如果从应用层的界面开发出发,则建议学习Qt,WinCE或Android等。但真实的嵌入式开发,熟悉以上还是远远不够的,建议如下学习曲线:第一节段 熟练使用Linux操作系统学习Linux操作...

Linux进程的睡眠和唤醒

1 Linux进程的睡眠和唤醒在Linux中,仅等待CPU时间的进程称为就绪进程,它们被放置在一个运行队列中,一个就绪进程的状 态标志位为TASK_RUNNING。一旦一个运行中的进程时间片用完, Linux 内核的调度器会剥夺这个进程对CPU的...

Linux C 多线程编程之互斥锁与条件变量实例详解

一、互斥锁互斥量从本质上说就是一把锁, 提供对共享资源的保护访问。1. 初始化:在Linux下, 线程的互斥量数据类型是pthread_mutex_t. 在使用前, 要对它进行初始化:对于静态分配的互斥量, 可以把它设置为PTHREAD_MUTEX...

嵌入式Linux驱动开发基础总结

1, linux驱动一般分为3大类:* 字符设备* 块设备* 网络设备2, 开发环境构建:* 交叉工具链构建* NFS和tftp服务器安装3, 驱动开发中设计到的硬件:* 数字电路知识* ARM硬件知识* 熟练使用万用表和示波器* 看懂芯片手册和原理图4, lin...

从需求的角度去理解嵌入式Linux:总线、设备和驱动

一、软件、面向对象、软件框架软件是为了解决现实问题而产生的,面向对象的软件思维是解决普遍现实问题的一种有效的抽象方法,而软件框架指的是用面向对象的思维去解决某种特定领域的问题而专门设计的一套行之有效的解决...

嵌入式视觉的概念及关键因素

基于视觉的系统在很多行业和应用领域中已变得非常普遍。实际上,我们中的很多人每天就携着一个嵌入式视觉系统,比如在我们的智能手机中。这些智能设备不仅能够捕获图像和录制视频,而且还能执行增强现实的应用,这些都展示了...

嵌入式系统的各种常见外设总结

背景嵌入式系统中,硬件方面,有很多常见的外围设备。在此,专门整理一下。什么是嵌入式系统中的外设外设==外部设备==Peripheral· 外部:主要指的是除了嵌入式系统中主要的CPU,即SoC,MCU等之外的· 设备:某种硬件...

考一考!嵌入式 ARM基础题三道

题一:uboot是怎么传参给内核的?思考过后,再到下方寻找答案题二:linux怎么进行内存管理?思考过后,再到下方寻找答案题三:请简单说说进程和线程的区别。思考过后,再到下方寻找答案题一答案:简单的讲,uboot利用函数指针及传参规...

了解Android开发规范:性能及UI优化是什么样的?

本文带您全面了解Android开发规范,其中包括Android编码规范,Android性能优化和Android UI优化,读完绝对不会后悔的好文章。一、Android编码规范1.java代码中不出现中文,最多注释中可以出现中文2.局部变量命名、静态成员变...

CP2102与C8051F040的USB-CAN转换器设计

引言CAN(Controller Area Network,控制器局域网)总线是德国Bosch公司在20世纪80年代初为解决汽车中众多控制与测试仪器间的数据交换而开发的一种串行数据通信协议,主要用于各种设备检测及控制。CAN总线是一种多主机控制局...

网站建设 电商