自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 嵌入式面试经典30问

嵌入式面试经典30问在经过4个多月的学习后,学员们最关心的问题莫过于如何拿到高薪offer问题了。但是很多同学说很害怕面试,看见面试官会露怯,怕自己的知识体系不完整,怕面试官考的问题回答不上了,所以今天为大家准备了嵌入式工程师面试经常遇到的30个经典问题,希望可以帮助大家提前准备,不再惧怕面试1讲一下stm32的时钟系统2C语言中堆和栈的区别;推挽输出是什么?...

2020-04-23 14:43:32 5948 3

原创 嵌入式工程师的真实现状,有人月薪 8 千,有人年薪快 40 万!

嵌入式工程师的真实现状,有人月薪 8 千,有人年薪快 40 万!01嵌入式的定义和举例分析官方定义根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“控制、监控或者辅助设备、机器和车间运行的装置”。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础,软件...

2020-04-21 16:27:35 2920

原创 STM32-LED屏程序编写

程序编写 管脚初始化CS: PG12 推挽输出 高电平WR:PD5 推挽输出 高电平RD:PD4 推挽输出 高电平DC:PF12 推挽输出 高电平BL:PB15 背光灯 低电平D0:PD14 推挽输出D1:PD15 推挽输出D2:PD0D3:PD1D4:PE7D5:PE8D6:PE9D7:PE10D8:PE11D9:PE12D...

2020-04-17 15:32:11 2013

原创 嵌入式编程中,如何使用复杂指针?

嵌入式编程中,如何使用复杂指针?1.说明在C语言编程中,指针是最容易出错的地方,尤其是在很多指针同时出现的时候,看的眼花缭乱的,本文从嵌入式中常用的复杂角度进行分析,彻底搞清楚C语言中的容易弄错的指针使用问题。2.函数指针与指针函数在C语言中,函数是有他的地址,同理,函数有也有他的地址,如果如果我们把函数的地址赋值给函数指针,那么我们就可以间接的通过函数指针调用函数地址了。...

2020-04-17 15:03:23 146

原创 嵌入式经典面试题及解析

嵌入式经典面试题及解析基础部分考察1、用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL考点01#define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)02懂得预处理器将为你计算常数表达式的值,因此直接写出你如何计算一年中有多少...

2020-04-16 10:58:21 267

原创 7大嵌入式开发技巧,实用!

7大嵌入式开发技巧,实用!成为一个正式的嵌入式开发工程师——它是一个艰辛的过程,需要开发人员维护和管理系统的每个比特和字节。从规范完善的开发周期到严格执行和系统检查,开发高可靠性嵌入式系统的技术有许多种。今天给大家介绍7个易操作且可以长久使用的技巧,它们对于确保系统更加可靠地运行并捕获异常行为大有帮助。No.1用已知值填充ROM软件开发人员往往都是非常乐观的一群人,只...

2020-04-16 10:52:47 139

原创 困扰ARM嵌入式初学者的若干问题

困扰ARM嵌入式初学者的若干问题对于嵌入式ARM初学者而言,学习过程中心中一定会有各种各样的疑虑和困惑,比如:1、ARM和嵌入式是什么关系?2、ARM工程师的前景如何?3、企业对ARM工程师的技能要求有哪些?4、学ARM需要什么基础,要学习多长时间? 5、学ARM7还是ARM9,如何选择? 6、搭载的操作系统如何选择?7、如何学习?在此,小编针对这些问...

2020-04-14 14:44:55 149

原创 ARM-Linux开发与MCU开发有何不同?下篇

ARM-Linux开发与MCU开发有何不同?下篇(4)固件的存储位置不同单片机:通常具备片内flash存储器,固件程序通常存储在该区域,若固件较大则需要通过外部电路设计外部flash用于存储固件。ARM-Linux: 由于其没有片内的flash, 并且需要运行操作系统,整个系统映像通常较大,故ARM-Linux开发的操作系统映像和应用通常存储在外部的MMC、SD卡上,...

2020-04-02 15:41:06 173

原创 ARM-Linux开发与MCU开发有何不同?上篇

ARM-Linux开发与MCU开发有何不同?上篇针对ARM-Linux程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发,针对不同种类的软件开发,有其不同的特点。今天我们来看看ARM-Linux开发和MCU开发的不同点,以及ARM-Linux的基本开发环境。 1. ARM-Linux应用开发和单片机开发的不同这里先要做一个说明,对于ARM的应用开发...

2020-04-02 15:40:34 298

原创 PCB基础

PCB基础 PCB概述 PCBLayout行业介绍 ① Cadence Allegro目前大公司用的比较多,Cadence公司Layout有两套PCB画图软件,一套是自己的PCB工具Allergo,另外一套就是OrCAD,Allergo优势是画高速多层板效率比较高,上手难度稍大, 因为软件非常昂贵,每年授权费用大概需要几十万(功能可以定制,功能多少决定价格),所以只有大公...

2020-04-01 12:31:09 244

原创 PCB-印制板的基本设计准则

印制板的基本设计准则 抗干扰设计原则 ① 电源线的设计(电源是所有器件工作的能量来源,对于不同器件,对电源的要求也不同,其中包括功率、电位、频率、干净度(纹波))~设计人员应该根据不同的工作电路来选择合适的能量来源,也就是电源。~设计人员还应根据资料手册、设计要求,来估算所需要的电源电流的大小,确定电源导线的宽度,在允许的范围内尽量加宽电源线的宽度。电源线越宽,能...

2020-04-01 12:24:53 474

原创 来了!PCB多层板解析

来了!PCB多层板解析01什么是多层板,多层板的特点是什么?答:PCB多层板是指用于电器产品中的多层线路板,多层板用上了更多单面板或双面板的布线板。用一块双面作内层、二块单面作外层或二块双面作内层、二块单面作外层的印刷线路板,通过定位系统及绝缘粘结材料交替在一起且导电图形按设计要求进行互连的印刷线路板就成为四层、六层印刷电路板了,也称为多层印刷线路板。随着SMT(表面安...

2020-03-31 16:19:30 971

原创 PCB设计中会需要注意哪些间距要求?

我们在平常的PCB设计中会遇到各种各样的安全间距的问题,比如像过孔跟焊盘的间距,走线跟走线之间的间距等等都是我们应该要考虑到的地方。那么我们今天就把这些间距要求分为两类,一类是:电气安全间距;另一类为:非电气安全间距。电气安全间距1.导线之间间距根据PCB生产产家的生产能力,走线与走线之间的间距不得低于4MIL。最小线距,也是线到线,线到焊盘的间距。那么,从我们的生产角度出发的话,当然...

2020-03-27 17:02:21 695

原创 Linux内核裁剪移植学习分享

内核裁剪移植内核源码是大量模块代码的集合!每一个模块代码都是大量的.c 和 .h文件组成的!内核是系统所有功能的集合!内核镜像是一个二进制文件,是一个大型可执行程序!内核移植步骤:把内核源码包复制到linux系统下的 /work/目录下,并解压!命令:cp /mnt/hgfs/xxxxx/linux-3.5.buildok.tar.gz /work/cd /w...

2020-03-25 18:29:45 402

原创 Linux-Makefile编程学习分享

Makefile编程Makefile中的目标分两类:伪目标:只作为标签使用,本身没有任何意义!常用的伪目标:all:当前Makefile第一个目标是伪目标,一般喜欢使用all作为目标名!clean:如果做清除操作,为了明确操作代码,目标可以命名为clean目标:如果制定工程编译规则,这时使用的就是目标!目标定义格式: target: 依赖文件1)拥有自动推导规则!...

2020-03-24 16:41:34 126

原创 Linux- LCD应用层编程学习分享

LCD应用层编程LCD驱动 --> 设备节点文件 --> fb0设备节点文件 等同于 显存空间!如果想要在屏幕上显示图像,只需要往显存中写入数据即可!LCD应用程序就是往显存中写入数据的操作!!!LCD应用程序编程步骤:打开LCD驱动对应的设备节点文件(显存) 把内核中的显存空间映射到进程空间中 往映射空间中写入数据 关闭显存mmap();...

2020-03-24 16:40:45 309

原创 CORTEX-M系列芯片介绍

CORTEX-M系列芯片介绍 以CORTEX-M4为准 CORTEX-M4的特点 ①采用了先进的CORTEX-M4内核SIMD计算(单指令多数据流) a = b + c + d;执行效率: 1.25DMIPS 125万条指令每秒1~240个物理中断源8~256个中断优先级②增强了单精度浮点型运算(更快更精确)-FPU串口发送数据+ -...

2020-03-19 20:21:10 2713

原创 linux根目录组成

linux根目录组成: bin:存储着linux系统的命令的源文件,大部分都在这里,少部分在别的路径下boot:系统启动时需要加载的一些文件dev:存储着设备文件的目录,这里都是一些硬件设备etc:存储着配置文件,有系统上电调用的,也有运行某个程序的时候才会调用的文件home:普通用户的家目录,普通用户只能操作这个路径下的同名目录文件lib:存储着库文件的目...

2020-03-19 17:44:32 111

原创 ARM处理器

ARM处理器 ARM的简介 ARM,是一个公司的名字,变成一种处理器的统称。ARM公司成立于1991年,主要卖芯片的技术,不卖芯片。目前大部分芯片厂商都采用了ARM的架构,已经遍布了工控、通信、网络、无线等各个领域,ARM的32位RISC微处理器已经占据市场85%的份额。它有很多的开发软件、第三方工具的支持,方便查找资料和方便使用。有如下几个大公司用的是ARM的架构: ST(意法...

2020-03-18 20:27:56 228

原创 PCB生产资料导出

生产资料导出1.1 概述生产资料是板厂需要的生产加工文件,也可以直接将绘制完成的 PCB 文件发至板厂加工,但是存在加工后效果和设计理想效果有差异以及保密问题,不建议将 PCB 直接发至板厂加工,生产一般包含以下几项1.1.1 PCB 板厂所需要的文件板厂加工所需要的文件一般称为 Gerber 文件,也称为菲林文件(CAM),包含以下几种文件1) 线路层文件(Top+B...

2020-03-18 19:22:55 738

原创 关于单片机中断基本概念

1.ARM cortex_m3 内核支持 256 个中断(16 个内核+240 外部)和可编程 256 级中断优先级的设置,与其相关的中断控制和中断优先级控制寄存器(NVIC、SYSTICK 等)也都属于cortex_m3 内核的部分。STM32 采用了 cortex_m3 内核,所以这部分仍旧保留使用,但 STM32并没有使用 cortex_m3 内核全部的东西(如内存保护单元 MP...

2020-03-17 20:06:20 661

原创 关于单片机中断控制

1.对于 STM32 讲,外部中断通道位置 28(35 号优先级)是给外部设备 TIME2 的,但 TIME2本身能够引起中断的中断源或事件有好多个,比如更新事件(上溢/下溢)、输入捕获、输出匹配、DMA 申请等。所有 TIME2 的中断事件都是通过一个 TIME2 的中断通道向 STM32 内核提出中断申请,那么 STM32 中如何处理和控制 TIME2 和它众多的、不同的、中...

2020-03-17 20:04:30 444

原创 PADS常见问题全集

PADS常见问题全集走线很细,不是设定值有时将预拉线布好线后,所布的线变成了一根很细的线而不是我们所设定的线宽,但是查看它的属性也还是一样的最小线宽显示值的设定大于route线宽。tools--options--global--minimum display width或者使用R X 这个快捷命令,X表示需要设定的值走线宽度无法修改,提示wrong width value关于线宽的...

2020-03-17 19:26:20 4810 1

原创 AD20中19个常用系统快捷键小节

AD20中19个常用系统快捷键小节Altium Designer自带很多组合快捷键,可以多次执行字母按键组合成需要的操作,很是方便。那么组合快捷键如何得来呢?其实,系统的组合快捷键都是依据菜单中命令的下画线字母组合起来的。如图7-4所示,对于“放置(P)-线条(L)”这个命令,组合的快捷键就是“PL”。平时多记忆操作这些快捷的组合方式,有利于PCB设计效率的提高。Altium D...

2020-03-16 16:59:15 4345

原创 PCB层叠的认识

PCB层叠的认识随着高速电路的不断涌现,PCB的复杂度也越来越高,为了避免电气因素的干扰,信号层和电源层必须分离,所以就牵涉到多层PCB的设计。在设计多层PCB之前,设计者需要首先根据电路的规模、电路板的尺寸和电磁兼容(EMC)的要求来确定所采用的电路板结构,也就是决定采用4层、6层,还是更多层数的电路板。这就是设计多层板的一个简单概念。确定层数之后,再确定内电层的放置位置及如何在这些层上...

2020-03-16 16:40:17 659

原创 阻抗计算

阻抗计算在线宽规则设置中提到过阻抗线的概念,那么什么是阻抗线呢?我们如何知道设计当中的信号走线线宽与间距呢?这就涉及阻抗的计算。阻抗计算的必要性当电压、电流在传输线中传播时,特性阻抗不一致会造成所谓的信号反射现象等。在信号完整性领域里,反射、串扰、电源平面切割等问题都可以归为阻抗不连续问题,因此匹配的重要性在此展现出来。常见的阻抗模型一般利用Polar SI9000阻抗计算工具...

2020-03-16 16:34:31 576

原创 如何用PADS进行PCB设计

如何用PADS进行PCB设计?这6步就够了在使用PADS进行PCB设计的过程中,需要对印制板的设计流程以及相关的注意事项进行重点关注,这样才能更好的为工作组中的设计人员提供系统的设计规范,同时也方便设计人员之间进行相互的交流和检查。设计的流程PCB的设计流程分为网表输入、规则设置、元器件布局、布线、检查、复查、输出六个步骤。2.1 网表输入网表输入有两种方法,一种是使用Powe...

2020-03-13 16:09:28 267

原创 嵌入式和物联网有什么关系?一文教你搞明白。

嵌入式和物联网有什么关系?一文教你搞明白。物联网时代,物联网实现了人人互联,物物互联,还有就是人物互联,它是一种建立在互联网上的泛在网络。物联网技术的重要基础和核心仍旧是互联网,通过各种有线和无线网络与互联网融合,将物体的信息实时准确地传递出去。在物联网上的传感器定时采集的信息需要通过网络传输,由于其数量极其庞大,形成了海量信息,在传输过程中,为了保障数据的正确性和及时性,必须适应各种异构网络...

2020-03-13 16:01:12 2265

原创 51/STM32/MSP430/STC/TMS/PIC,主流单片机最全面对比

单片机现在可谓是铺天盖地,种类繁多,让开发者们应接不暇,发展也是相当的迅速,从上世纪80年代,由当时的4位8位发展到现在的各种高速单片机……各个厂商们也在速度、内存、功能上此起彼伏,参差不齐~~同时涌现出一大批拥有代表性单片机的厂商:Atmel、TI、ST、MicroChip、ARM…国内的宏晶STC单片机也是可圈可点…  下面为大家带来51、MSP430、TMS、STM32、PIC、ST...

2020-03-13 15:54:46 6016

原创 C语言常量

常量 程序运行期间,不可改变的数据 12 78 12.34 's' 's' 单引号,避免编译器进行处理 1.表示 因为常量的数值不可改变,所以使用 数值去表示一个常量...

2020-03-12 21:40:45 133

原创 PCB Layout总结

PCB Layout作为硬件设计中的一个环节,也是很重要的一个环节;在硬件电路设计合理的情况下,他其实是影响性能的一个绝对重要的指标。现在很多的PCB Layout工程师都是按照硬件工程师或者PI SI工程师给出的约束规则来完成布局布线的,这些也就是俗称的“拉线工”。他们重复而机械的完成一块块PCB设计,一段时间设计后,他们中的一些或许已经有了这样的一些经验:哪些要做等长,哪些要走粗、哪些要平...

2020-03-12 17:06:25 1760

原创 老司机们学习STM32的技巧

老司机们学习STM32的技巧单片机用处这么广,尤其是STM32,这么火!如何快速上手学习呢?你问,如何系统地入门学习stm32?这本身就是一个错误的问题。假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习。你要考虑的是, 我可以用STM32实现什么?对于传统的电子工程师来讲,使用库编程可能会感到有一点虚,感觉没有脚踏实地的感觉。但...

2020-03-12 15:46:03 127

原创 标准字符设备注册函数

标准字符设备注册函数标准字符设备是由早期字符设备拓展而来的,分析早期字符设备注册函数,可以获取标准字符设备注册方式!早期字符设备注册函数分析: register_chrdev();register_chrdev();--> __register_chrdev(major, 0, 256, name, fops); //因为该函数,早期字符设备才必须同时注册256个次设备号...

2020-03-11 11:06:53 225

原创 设备节点文件创建函数

设备节点文件创建函数使用杂项字符设备注册设备驱动时,可以自动创建设备节点文件。但是使用早期字符设备和标准字符设备注册设备节点文件时并不能自动创建设备节点文件。猜测:杂项字符设备注册函数中,包含有设备节点文件注册的函数!杂项字符设备注册函数分析:misc_register();misc_register();--> device_create(misc_class, mi...

2020-03-11 10:59:35 290

原创 在Linux下灵活使用expect脚本的小窍门

在Linux下灵活使用expect脚本的小窍门对于喜爱自动化的Linux系统管理员而言,一定是用过expect这个命令行工具。Expect 是由 Don Libes 基于 Tcl 语言开发的,并被广泛应用于交互式操作和自动化测试的场景之中,它尤其适用于需要对多台服务器执行相同操作的环境中,可以大幅度提高系统管理人员的工作效率。本文是thegeekstuff.com最近更新的一篇技术分享文章,其...

2020-03-11 10:58:13 223

原创 pads无模命令

全局设置(Global Settings)C……….打开或关闭设计画面补充格式显示模式。D……….打开或关闭当前层拥有最高优先显示权。DO……….打开可关闭当前通孔显示模式。ET………. 设置暂停走线时以测试点为结束方式。I……….进行数据库完整测试。L<n>……….改变当前层,如,则当前层为第二层N<s>………. 高亮某一网络O<r>……….将焊盘和走线以...

2020-03-11 10:55:10 594

原创 PCB无模命令-全局设置(Global Settings)

全局设置(Global Settings)C……….打开或关闭设计画面补充格式显示模式。D……….打开或关闭当前层拥有最高优先显示权。DO……….打开可关闭当前通孔显示模式。ET………. 设置暂停走线时以测试点为结束方式。I……….进行数据库完整测试。L<n>……….改变当前层,如,则当前层为第二层N<s>………. 高亮某一网络O<r>……….将焊盘和走线以...

2020-03-10 20:24:17 466

原创 设备节点文件创建函数

设备节点文件创建函数使用杂项字符设备注册设备驱动时,可以自动创建设备节点文件。但是使用早期字符设备和标准字符设备注册设备节点文件时并不能自动创建设备节点文件。猜测:杂项字符设备注册函数中,包含有设备节点文件注册的函数!杂项字符设备注册函数分析:misc_register();misc_register();--> device_create(misc_class, mi...

2020-03-10 20:23:25 64

原创 嵌入式从入门到精通的学习攻略

近几年,嵌入式系统产品渐渐完善,并在全世界各行业得到广泛应用。2004年,全球嵌入式系统产品的产值已达2000亿美元,国内嵌入式软件的产值也达到600亿人民币。据预测,随着Internet的迅速发展和廉价微处理器的出现,嵌入式系统将在日常生活里形成更大的应用领域。嵌入式软件工程师学习路线推荐:一、嵌入式软件编程的基础这一阶段重点打好嵌入式软件编程的基础,包括学习Linux系统的基本应用...

2020-02-29 17:41:42 3740 2

原创 信盈达2017届嵌入式就业班学员课堂笔记-IIC通信协议

1.IIC总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。它在传输数据过程中有三种特殊类型信号,分别是:开始信号、结束信号和应答信号。   区分UART通信:同样使用两根线进行数据传输,但UART通信中一根用于接收数据,一根用于发送数据,每次通信的时候只用到一根线。且其传输数据与时钟无关,因此称为异步串行通信,随时进行数据的接收和发送,SBUF寄存器存满时,则说明完成数据接收...

2018-09-05 14:43:28 396

空空如也

空空如也

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

TA关注的人

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