自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 KEIL主题背景恢复默认设置方法

keil恢复默认设置的操作(如果你因为设置配色想改回原来的配色).非常简单—— 自己的Keil安装路径→UV4→把global.prop文件删了就是了。

2023-07-23 00:16:26 1952 1

原创 关于单片机中头文件定义的深度分析

头文件

2022-12-20 11:05:08 907 1

原创 windows使用技巧

前沿:做软件开发,讲究的是效率,同时将windows系统的技巧熟练使用有开发有极大的帮助在不同软件界面之间首先自动输入法切换,提高编码速度插件:略系统自带:设置-时间和语言-语言-拼写、键入和键盘设置、高级键盘设置-选择允许我为每个应用窗口使用不同的输入发...

2021-09-02 23:37:50 166

原创 VSC使用教程大全

系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录 前言 一、官网软件下载 二、中文配置记录开机了了 好看交流l 老家 就老家l总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基

2021-09-02 22:02:41 6525

原创 时隔一年才发现嵌入式到底指的是什么

时隔一年才发现嵌入式到底指的是什么嵌入式指的就是与硬件相关的产品,说明白就是芯片上通过软件去控制硬件完成相应的功能!!!!!!原来嵌入式就是偏硬件偏底层,而搞芯片研发也是嵌入式的范畴,所以嵌入式做牛的地方就是搞芯片研发,但是几乎极少的一部分且高学历的人才会去做这个,大部分我们学的是怎么移植。而大部分从事嵌入式工作的人都是从事小型智能产品的研发,几乎难度不大。对于职业发展没有太明确的方向。所以从事嵌入式如何找到方向,根据网友的讨论我希望自己能够在实践中探索:1 上层软件比较吃香。如果想做底层硬件驱动,除非

2021-07-22 12:06:31 2498

原创 什么是2U网络设备

其实所谓的1U、2U的“U”就是服务器大小的一个单位。在一些公司的服务器托管中,有服务器尺寸1U 。其实U是一种表示服务器外部尺寸的单位,是unit的缩略语,详细尺寸由作为业界团体的美国电子工业协会(EIA)决定。厚度以4.445cm为基本单位。1U就是4.445cm,2U则是1U的2倍为8.89cm。也就是说所谓“1U的PC服务器”,就是外形满足EIA规格、厚度为4.445cm的产品。设计为能放置到19英寸机柜的产品一般被称为机架服务器。U是一种表示服务器外部尺寸的单位,是unit的缩略语,之所以

2021-07-16 14:00:31 3158

原创 学好单片机编程设计的方法和3个步骤

学习单片机的动机不外乎有四种:为兴趣爱好而学、为专业而学、为饭碗而学、在工作中被逼而学。不管是哪种动机,因主修专业的不同以及电子基础的深浅不同,对于不同的人可能采用不同的学习方法,根据笔者的亲身学习经验和教授徒弟学习的感受,以下是笔者的学习方法和步骤。第一步、基础理论知识学习基础理论知识包括模拟电路、数字电路和C语言知识。模拟电路和数字电路属于抽象学科,要把它学好还得费点精神。在你学习单片机之前,觉得模拟电路和数字电路基础不好的话,不要急着学习单片机,应该先回顾所学过的模拟电路和数字电路知识,为学习单片

2021-07-15 11:14:35 1926

原创 这2个单片机编程的思想,请你掌握。

分层思想分层的思想,并不是什么神秘的东西,事实上很多做项目的工程师本身自己也会在用。看了不少帖子都发现没有提及这个东西,然而分层结构确是很有用的东西,参透后会有一种恍然大悟的感觉。如果说我不懂LCD怎么驱动,那好办,看一下datasheet,参考一下阿别人的程序,很快就可以做出来。但是如果不懂程序设计的思想的话,会给你做项目的过程中带来很多很多的困惑。参考了市面上各种各样的嵌入式书籍,MCS-51,AVR ,ARM 等都有看过,但是没有发现有哪本是介绍设计思想的,就算有也是凤毛麟角。写程序不难,但是程序

2021-07-15 11:11:51 115

原创 单片机怎么学?新手怎么快速学会单片机?

“初听不懂曲中意,听懂已是曲中人”。不知不觉跟单片机、Keil、C语言、AD、烙铁、风枪、示波器、元器件…打了10年的交道。这10年,经历了很多的产品的磨练,也熬过了很多孤独的夜,更多的是”牺牲了”很多头发…这不是回忆录,但每次碰到刚入行的朋友来咨询怎么入门的问题,当初熬夜点亮一个LED那种成就感都意犹未尽!技术和产品虽然是”死”的,但是注入自己大量精力以后,它们就像自己的”小孩”,说没感情是假的。很多人并不看好这个行业,工资少,屁事多。前几年我在熬夜焊板子的时候也骂自己骂到天亮:”自己真是瞎了

2021-07-15 11:02:26 262

原创 单片机应用编程技巧问答

C语言和汇编语言在开发单片机时各有哪些优缺点?答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。C语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。对于目前普遍使用的RISC架构的8bit MCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多.

2021-07-15 11:00:01 855

原创 单片机程序的基本思路和写法

学习单片机最主要的是学习写程序的方法,程序的功能千变万化,是学不完的,只有掌握了一定方法,才能用这种方法去写新的程序。7 i4 f( `; b. s以c语言写的单片机程序为例,程序总是从main程序开始,然后顺序执行到main结束。由此可知,程序必须包含而且只能包含一个main程序,也就是常说的主程序。main(){4 i D" o: u. N主程序的内容。。。。。。$ ]3 E, {. y9 a/ V}% Q2 v. @ n# E, a7 k+ ]; f/ }5 ^实际使用中还需要在ma

2021-07-15 10:46:47 1647

原创 谈谈我的单片机编程思路

我曾经做过两年的单片机产品,在对单片机编程的过程中逐渐形成了一个大体固定的整体框架,也可以说是编程思路。现提出来供大家参考。首先,对外围芯片进行分类,属同一功能或同一芯片的程序采用模块化的形式,用固定的几个函数实现,一般不同芯片之间的函数功能尽量不重叠,也不要使用一个函数覆盖几个芯片,以便于后期的调试,如果涉及到芯片之间通讯的,可以单独列出,使用专门的函数进行处理;其次,将单片机中需要完成的工作按轻重缓急进行分类,一般我会设置两个定时中断,其中一个定时时间大致在20mS左右,用来处理一些按钮防抖处理、时

2021-07-15 10:43:18 964

原创 远程升级单片机程序怎么设计?

2021-04-21 08:32 预计 4 分钟读完在物联网应用中,远程IAP升级MCU的程序是一项非常有用的功能。当设备出现程序问题或者需要更新程序时,只需要在服务器上对设备进行升级,不需要在有专门的人员去现场进行升级,节省人力物力。要实现远程升级,首先要实现以下几个基本功能:1、Flash读写。不管是本地IAP还是远程IAP,这都是最基本的功能。2、无线通讯。可通过WIFI、4G、以太网等多种方式来实现,根据实际项目需求选择。3、通讯协议。常用的通讯协议有TCP、HTTP、FTP、MQTT等。

2021-07-15 10:38:17 256

原创 微程序控制器的工作原理

微程序控制器的工作原理(1)将机器指令分解为基本的微命令序列,在制造CPU时固化在控制存储器CM中,执行一条机器指令时,CPU依次从CM中取出微指令产生微命令。(2)一条微指令包含的微命令控制实现一步(一个节拍)操作,若干条微指令组成一小段微程序解释执行一条机器指令。微程序控制的基本思想,就是仿照通常的解题程序的方法,把操作控制信号编成所谓的“微指令”,存放到一个只读存储器里.当机器运行时,一条又一条地读出这些微指令,从而产生全机所需要的各种操作控制信号,使相应部件执行所规定的操作。...

2021-07-15 10:36:39 4361

原创 单片机开发:为何要避免使用汇编语言?

对资深单片机开发人员来说经常提倡的一个开发技巧是,开发人员应避免使用汇编语言。避免使用汇编语言的原因是它特定于所使用的处理器体系结构,难以阅读,理解和维护。而且需要注意的是,在查看仍可以使用汇编语言的每个区域之前,这些汇编指令如何集成到代码库中将根据所使用的开发环境而有所不同。通常有一些自定义的编译器函数用于使编译器语言知道正在使用汇编指令,例如_asm(),我们检查的代码段在使用前可能需要进行修改。但是,有四个适合使用汇编语言的地方:一、执行断点指令每当我开始一个新项目时,我在实施过程中要做的第一件

2021-07-15 10:34:35 613

原创 单片机c语言必背代码_stm32单片机编程用库函数好还是寄存器好?

库函数和寄存操作到底哪个好,这个不好说,只能说根据个人情况和应用场合吧。比如说我,虽然说我一直用的是标准库函数,但是我也不只是用标准库,偶尔在需要的时候会用寄存器操作,因为寄存器操作的效率更高。库函数和寄存器操作的区别可能和 C 语言与汇编语言的区别差不多吧,都是跟效率有关,但有时候效率并不是唯一指标。我们都知道 C 语言的效率要比汇编低,但是现在绝大多数嵌入式开发人员用的还是 C 语言!为什么,因为它简单易学,容易跨平台,移植性好,这是很大的优势,而汇编就不同了,它针对的是某一款内核进行开发,比如51

2021-07-15 10:31:08 2133

原创 单片机外部中断详解及程序

单片机在自主运行的时候一般是在执行一个死循环程序,在没有外界干扰(输入信号)的时候它基本处于一个封闭状态。比如一个电子时钟,它会按时、分、秒的规律来自主运行并通过输出设备(如液晶显示屏)把时间显示出来。在不需要对它进行调校的时候它不需要外部干预,自主封闭地运行。如果这个时钟足够准确而又不掉电的话,它可能一直处于这种封闭运行状态。但事情往往不会如此简单,在时钟刚刚上电、或时钟需要重新校准、甚至时钟被带到了不同的时区的时候,就需要重新调校时钟,这时就要求时钟就必须具有调校功能。因此单片机系统往往又不会是一个单纯

2021-04-23 11:34:05 3849

原创 从事嵌入式行业年薪有多少,你和高薪究竟差了哪些东西?

如今,纵览整个互联网,非常缺乏从事嵌入式行业的前辈。当周围cs同学能精准判断出,自己毕业后所属公司和大致薪资,并为之努力时,嵌入式方向的学生却非常迷茫,也导致很多人转向cs。为什么从事嵌入式和电子行业的前辈们,很少谈及薪资?掀开迷雾谈薪资某位知乎匿名用户表示,创业第二年,盈利125w以上,创业第四年,目标收入8000w,团队人数从12人+到110人+,办公室换到了320平米,回想过去的例程非常不容易,嵌入式和物联网相结合会产生出巨大的能量。他表示,其实嵌入式只是一个完成目的的手段,更重要的还是做事的

2021-01-07 18:33:19 3518

原创 《C语言非常道》李忠

毋庸置疑,C是非常流行的编程语言。正是因为流行,和它有关的图书之多,可以用多如牛毛、汗牛充栋来形容。 既然都已经这么多了,那我为什么还要再来一本,给牛增加负担呢?原因很简单:想看看是否能用一种和别人不同的方法来把C语言讲清楚。这本书面向初学者,但是,已经学过C语言的人也不妨读一读,因为我的讲解方法和对很多问题的阐述和别人不一样。请放心,我们不胡来,C语言有自己的标准,我们始终按标准来解释一切。 当然,自负是人类的共性,这本书是否真的能把C语言讲清楚,还得靠读者来检验。 ...

2020-12-25 17:46:27 871

原创 关于嵌入式驱动开发,这篇文章让你了解透彻!

01嵌入式驱动开发到底学什么嵌入式大体分为以下四个方向:一、嵌入式硬件开发:熟悉电路等知识,非常熟悉各种常用元器件,掌握模拟电路和数字电路设计的开发能力。熟练掌握嵌入式硬件知识,熟悉硬件开发模式和设计模式,熟悉ARM32位处理器嵌入式硬件平台开发、并具备产品开发经验。精通常用的硬件设计工具:Protel/PADS(PowerPCB)/Cadence/OrCad。一般需要有4~8层高速PCB设计经验。二、嵌入式驱动开发:熟练掌握Linux操作系统、系统结构、计算机组成原理、数据结构相关知识。熟悉嵌入式

2020-09-27 16:48:38 7452 3

原创 关于 -128 ,+128,-0,+0,-1 的反码补码

一.反码的范围反码表示法规定:正数的反码与其原码相同。负数的反码是对其原码逐位取反,但符号位除外。在规定中,8位二进制码能表示的反码范围是-127~127。此时(字长为8位), -128没有原码和反码(只有补码)。那么,为什么规定字长8位时-128没有原码和反码呢?下面解释。首先看-0,[-0]原码=1000 000,其中1是符号位,求反操作,算出[-0]反码=1111 1111,再看-128,假如它有原码且[-128]原码=1000 000,假如让-128也有反码,求反操作,则[-128]反码

2020-09-11 18:00:12 1121 1

原创 C语言得问题

1 问题描述:1float a = 2.9;//为什么是一个很大的正数?float b = 2.5;//为什么是0?//不同的小数是如何存在内存中的?printf("%d\n",a); //%d打印float 出现数据丢失的过程是什么样的?原因分析:1 不明白实型是怎么存在内存中得2 实型用整型打印出现得数据丢失得过程不清楚解决方案:1 实型 在内存中存得形式:float 符号位(1)指数位(8)尾数位(23) double 符号位(1)指数位(11)尾数位(52)实

2020-09-11 17:51:00 114

原创 疑难杂症unsigned无符号、有符号类型的转换

unsigned无符号、有符号类型的转换时间:2016-11-21 08:42:25 阅读:111 评论:0 收藏:0 [点我收藏+]标签:数字 print 存储 补码 style 原码 log int 高精度先看一段代码#include <stdio.h>main(){unsigned char a = -1;char b = a;printf("%d %d",a,b);return 0;}a输出为

2020-09-03 01:33:45 636

原创 五年嵌入式经验工作与心得

不知不觉已经从事嵌入式行业5年了,大学4年工作5年一直专心从事嵌入式工作。下面我谈一下我对嵌入式的看法。可能对大神们没什么用,希望对刚入门或者即将走出校园的同学们有些帮助。嵌入式在工作中分为固件程序(firmware)和硬件(hardware)。很多公司做电路和做程序的是分开的。假如我们好好学是可以两样都熟悉而精通其中一种的。本人大学经历,每科都认真学习,在实验室和老师做了很多项目。多是围绕51单片机去做的,当时觉得自己很了不起。也觉得了解了嵌入式是先做硬件然后硬件里包含某种单片机,去写单片机程序驱动外

2020-08-30 20:34:59 2666 2

原创 浅谈对STM32单片机的理解

假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习。为什么使用STM32而不是8051? 是因为51的频率太低,无法满足计算需求?是51的管脚太少,无法满足众多外设的IO? 是51的功耗太大,电池挺不住?是51的功能太弱,而你要使用SPI、I2C、ADC、DMA? 是51的内存太小而你要存储的东西太多?当你需要使用STM32某些功能,而51实现不了的时候, 那STM32自然不需要学习,你会直接去寻找STM32某方面的使用方法。比如要用spi协议的网卡、要使用串口通信、要使用rto

2020-08-30 20:31:56 987

原创 很好的单片机学习心得,值得任何编程读完

一直想写一个帖子,将自己学习单片机的经历、经验和方法总结一下,今天终于动手写了,呵呵,这是我学习单片机的经验、心得、方法。希望对大家学习单片机有所帮助。经常在群、论坛里看到有人问:怎么学单片机?也常看到有人说学了好几个月可就是没有什么进展。当然,受限于每个人受到的教育水平不同和个人理解能力的差异,学习起来会有快慢之分,但我感觉最重的就是学习方法。一个好的学习方法,能让你事半功倍,这里说说我学习单片机的经历和方法。05年的时候,因为制作FM发射电路采用了BH1415的芯片,需要用到单片机控制,所以开始接触

2020-08-30 20:30:51 575 1

原创 浅谈单片机编程思想

对于单片机的开发而言,都是对输入输出设备的的设置,根据不同的规格书,需求来改来改去,一个刚开始编程的阶段感觉,这样挺好的,但是长时间就会发现,一个个项目开始,都会去配置这些基本的操作,然后再去构造整体框架,有一天,大神就掏出自己创造的”武功秘籍”,拿到后发现,果然是大神,此秘籍能秒杀任何项目,解决项目问题也是屡试不爽.OK,我这就简述其内容如下:前面也说了,从单片机的操作空间来看,输入输出设备是最多与之打交道的,单片机种类很多,每次都要去操作,所以就从代码框架上去着手,大神用五个子函数去划分: Power

2020-08-30 20:29:45 557

原创 一位十年软件工程师告诉你什么是编程思想

什么是编程思想?答案可能很会复杂,但也可以很简单。一句话来讲就是,用计算机来解决人们实际问题的思维方式,即编程思想。我们学习编程语言的最终目的,就是希望用计算机来解决我们的实际问题。那么学习计算机该如何入手,也是很多初学者犯难的一个问题,特别是对与非计算机专业的人来说更是如此。面对现实如此多的编程语言(比如:C,C++,JAVA,C# …)和 种类繁多的应用技术(比如: windows编程, linux编程,数据库, 网络编程 …)。确实让人有些眼花缭乱,摸不着头脑。此篇文章就来谈谈学习计算机的步骤和编程

2020-08-30 20:27:29 248

原创 输入输出专题

input & output -> I/O(标准IO,文件IO)标准IO1 格式化输入输出函数scanf printf典型的变参函数??printf问题一:要明白 L在格式化输出中结合常量使用的情况容易犯什么错误?问题二:关注缓冲区的问题scanf: int scanf(const char *format ,地址表)问题一:字符串的输入很危险?问题二 :为什么scanf放在循环中容易出错2 字符输入输出函数getchar putchar3 字符串输入输

2020-08-30 20:22:51 77

原创 vim编辑器和gcc编译器

gcc

2020-08-24 23:52:54 310

原创 linux常用命令

2020-08-24 19:37:22 70

原创 数据类型 运算符 表达式

数据类型

2020-08-16 00:44:32 200

原创 学习C的重要性

C到底有多重要我曾听人说过,我们所学过的c只是冰山一角,只是一些语法,语义,规则什么的。c语言难吗,难,光是这些语法,我们能够理解透彻就算不错了。而真正精通c语言是冰山下面的部分。是毁灭谭泰尼克号的真正力量。C 作为一门工程实用性极强的语言,提供了对操作系统和内存的精准控制,高性能的运行时环境,源码级的跨平台编译等优点,才是我们必须学习和使用 C 的理由。历史C 语言是由美国 AT&T 贝尔实验室的研究员 Dennis Ritchie 在 B 语言的基础上,最初作为改造 Unix 操作系统

2020-08-14 19:45:45 881

原创 linux入门学习

**Linux入门学习**1.Ubuntu的installlinux分很多版本 ,作为嵌入式开发,我们普遍应用ubuntu版本。ubuntu系统是一个linux操作系统 我们记住这计划就行了作为小白我为了节省时间,先是拿来主义,方便快捷安装上就行 ,所以这里的细节我也不熟悉,只是有个大概了解,说下大概步骤。能会用就行,等熟练了有时间再去详细学习怎么一步步搭建环境的。安装的途径:官网下载自定义安装:配置功能的了解linux的常用命令图一:详细介绍命令的用法图二:常用的命令大全 必须混个脸熟

2020-08-14 16:43:11 189

空空如也

空空如也

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

TA关注的人

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