C51
Surferqing_
物有本末、事有终始,知所先后,则近道矣。
展开
-
51单片机在什么情况下会产生串口中断
转载-----点击打开链接子函数:void serial() interrupt 4{ P1=SBUF;RI=0;} { P1=SBUF; RI=0; }别的中断都是在某个I/O口为低电平时产生中断,串口中断是在什么情况下产生呢?首先,你要用软件允许中断,即C语言中EA = 1; //允许总中断ES = 1; //允许串口中断汇编中可用SETB ...转载 2018-05-23 20:23:43 · 7292 阅读 · 1 评论 -
keil 编译以后,查看代码的大小
关于段的补充:段可以分为代码段和数据段,其中代码段的内容就是可执行代码。Code是代码占用的空间,RO-data是 Read Only 只读常量的大小,如const型,RW-data是(Read Write) 初始化了的可读写变量的大小,ZI-data 是(Zero Initialize) 没有初始化的可读写变量的大小。ZI-data 不会被算做代码里因为不会被初始化...原创 2018-08-20 15:55:53 · 7509 阅读 · 0 评论 -
单片机存储器结构
单片机内部存储结构分析 我们来思考一个问题,当我们在编程器中把一条指令写进单片要内部,然后取下单片机,单片机就可以执行这条指令,那么这条指令一定保存在单片机的某个地方,并且这个地方在单片机掉电后依然可以保持这条指令不会丢失,这是个什么地方呢?这个地方就是单片机内部的只读存储器即ROM(READ ONLY MEMORY)。为什么称它为只读存储器呢?刚才我们不是明明把两个数字写进去了吗?原来在...转载 2018-09-08 10:27:33 · 7213 阅读 · 0 评论 -
Keil5中C51和MDK共存的方法(以Keil5为例)
百度经验——https://jingyan.baidu.com/article/af9f5a2d1fe94443150a4543.html转载 2018-09-17 17:27:26 · 19854 阅读 · 0 评论 -
C51看门狗含义
“看门狗”技术就是使用一个定时器来不断计数,监视程序运行。当看门狗定时器启动运行后,为防止看门狗定时器的不必要溢出而引起的非正常复位,在程序正常运行过程中,应定期把看门狗定时器清零,以保证看门狗定时器不溢出。 ...原创 2018-09-14 21:16:35 · 1368 阅读 · 0 评论 -
51 单片机 应用开发 快速入门 学习
学习啦…………转载 2018-10-02 10:21:38 · 338 阅读 · 0 评论 -
嵌入式工程师,你知道.c文件和.h的区别吗?
.c文件是程序设计中的一个重要概念。所谓“文件”一般是指存储在外部介质上数据的集合。一批文件是以数据的形式存放在外部介质(如磁盘)上的。操作系统是以文件为单位对数据进行管理的,也就是说,如果想找存在外部介质上的数据,必须先按文件名找到指定的文件,然后再从该文件中读取数据。要向外部介质上存储数据也必须先建立一个文件(以文件名标识),才能向它输出数据。 1 .h文件作用 方便开发:...转载 2018-10-15 20:19:56 · 2846 阅读 · 0 评论 -
c51中bdata是什么意思及使用方法
c51中"bdata"是片内RAM,位寻址方式;存储器类型说明的意思。c51中"bdata"的用法:C51中的两种位变量,除了特殊功能寄存器中的可位寻址的位外,还有位于单片机内部RAM字节。地址0x20~0x2F的16个字节的128个可寻址位,位地址从0x00~0x7F。例程:unsingned char bdata sta; //...原创 2018-10-26 15:27:23 · 5275 阅读 · 0 评论 -
ERROR L107: ADDRESS SPACE OVERFLOW keil错误的解决方法
今天遇到一个keil问题,编译出现下面提示:最后完美解决,把方法分享给51hei论坛的朋友们*** ERROR L107: ADDRESS SPACE OVERFLOWSPACE: DATASEGMENT: ?DT?_WRITEONECHAR?DS18B20LENGTH: 0002H在百度上查了一些资料,说法不一: 1、单片机的RAM 不够,但变量太多,所以删掉一些不重要的...转载 2018-10-31 18:17:11 · 30232 阅读 · 4 评论 -
ASCII码是几位二进制码?
原始的ASCII编码是7位的,所以有2^7=128个字符(包括一些不可显示字符)。但是电脑里1Byte=8bit,有8位。早期的电脑不太可靠,数据经常出错,所以这1Byte的8位中最高为就用来做数据校验,一般是奇偶校验。但是后来的电脑变得可靠了,校验的意义就没有那么大了,因此有了一个扩展ASCII字符集。扩展ASCII字符集包含2^8=256个字符,编码是8位的。扩展ASCII字符集中的前128...转载 2018-11-09 22:02:58 · 28555 阅读 · 0 评论 -
STC15单片机的高低电平范围,拉电流和灌电流理解
当逻辑门输出端是低电平时,灌入逻辑门的电流称为灌电流,灌电流越大,输出端的低电平就越高。由三极管输出特性曲线也可以看出,灌电流越大,饱和压降越大,低电平越大。然而,逻辑门的低电平是有一定限制的,它有一个最大值 UOLMAX。在逻辑门工作时,不允许超过这个数值, TTL 逻辑门的规范规定 UOLMAX≤0.4~0.5V(STC15 的 UOLMAX为 0.7V)。所以,灌电流有一个上限。当...原创 2018-11-04 18:01:34 · 7544 阅读 · 0 评论 -
物联网名词和MQTT解释,阿里云的教程:用51单片机做一个物联网温度计+远程开关
https://mvp.aliyun.com/zhidao/1915本章主要介绍物联网平台中相关的产品名词。明白名词说的是啥。两眼不慌慌。看看官方文档吧concent 报文连接服务器 PUB 发布 SUB 订阅 PING PONG Disconcent 断开连接 unsub 取消订阅 CleanSession 清理会话(设备掉线或断开时,...原创 2018-12-17 15:35:54 · 4862 阅读 · 0 评论 -
ROM, FLASH和RAM的区别
初学MCU的人,经常会看到ROM, RAM, FLASH,而且会被这些词汇搞得晕头转向。本文对这些概念进行了厘清,并介绍了这些Memory的区别,以及它们在MCU中的作用。ROM (Read Only Memory)程序存储器ROM全称Read Only Memory,顾名思义,它是一种只能读出事先所存的数据的固态半导体存储器。ROM中所存数据稳定,一旦存储数据就再也无法将之改变或者...转载 2019-02-28 10:39:52 · 21130 阅读 · 2 评论 -
usb转串口,232电平,TTL电平
TTL电平:一般用作数字芯片的电平(单片机大多是TTL电平,只是不同的电压标准)232电平:232电平特制电脑串口的电平USB:除去屏蔽层,有4根线,分别是VCC、GND和D+、D-两根信号线。5V是USB的电源电压,给USB device供电用的。信号线对于2.0, D+比D-大200mV时为1,D-比D+大200mV时为0,属差分信号,与TTL电平不兼容,信号传输时需要电...原创 2019-05-04 16:44:10 · 8957 阅读 · 0 评论 -
#if、#else、#endif、#elif、#ifdef、#ifndef的区别和使用
常用的条件编译#if, #elif,#else,#endif,#ifdef、#ifndef看名字就知道,跟我们平时用的if、elseif、else是 一样的,不同的是这里一定要记得 #endif。#if 条件 1 代码 1#elif 条件 2 代码 2#else 代码段 n+1#endif意思跟我们平常写的代码一样,如果条件1成立,则编译代码1,如果条件二成立,则编...转载 2019-05-23 18:26:50 · 27549 阅读 · 0 评论 -
AT24C02/04/08 地址理解
转载自——博客 该类器件要通过iic总线操作,读写过程中都要先寻址,这类器件地址有两个字节组成,如下表,1010是固定的,A表示器件地址,可以拉高和拉低,iic总线上可以并接2的几次方个器件。P表示具体的内部地址数,比如at24c02共有256个字节,第二个地址字节完全可以满足,不用P。但是at24c04一个有512个字节,需要9位地址线,第一个字节中的p就表示地址线了,p=0表示低256...转载 2018-08-02 15:50:32 · 19965 阅读 · 2 评论 -
单片机为什么要使用C语言
将C向MCU(俗称单片机)8051上的移植始于80年代的中后期。客观上讲,C向8051 MCU移植的难点不少。如: ·8051的非冯·诺依慢结构(程序与数据存储器空间分立),再加上片上又多了位寻址存储空间; ·片上的数据和程序存储器空间过小和同时存在着向片外扩展它们的可能; ·片上集成外围设备的被寄存器化(即SFR),而并不采用惯用的I/O地址空间; ·805...转载 2018-08-05 20:09:22 · 3905 阅读 · 0 评论 -
扯会儿单片机开发:中断
转载自----简书点击打开链接前言读到这篇,你最好已经有了一些基础知识和单片机入门编程能力,接下来聊聊中断(Interrupt)。用程序员的角度说,单片机的中断机制有点像面向对象中的事件,只不过单片机中的这些“事件”是由其他的部件引发。什么是中断简而言之,就是打断处理器且让其处理那个打断它的事件。就好像你在玩电脑,然后家里的暖壶响了,这时你会放下眼前的事,去厨房关火。水开了、壶响了就是中断的触发,...转载 2018-05-29 21:00:27 · 264 阅读 · 0 评论 -
51单片机定时器
转载自--简书点击打开链接定时器/计数器简介首先,“定时器/计数器”说的是一个东西,因为它既能计时也能计数。其次,它与数码管不一样,不是独立出来的配件,而是存在于单片机内部的一个独立的硬件部分,依赖晶振产生固定的时间间隔,产生了一定量的固定时间间隔后会引发定时器中断(参见:《扯会儿单片机开发:中断》),从而将其产生的时间信息传送给由CPU执行的主程序中。相关寄存器TMODTMOD为定时器/计数器工...转载 2018-05-29 21:25:46 · 10439 阅读 · 1 评论 -
51单片机实战:与计算机异步串行通信
转载自简书--点击打开链接文章框架文章框架前言猴!今儿扯串口,相对于并行——一口气全把数据扔过去,串行显得更加稳重——一位一位来。串行就是这样,只需要一条数据线(全双工和同步串行时两条),一位一位的传过去。为了让大家在直到你是在给我传数据而不是外面的噪音或者是胡说八道,所以串行数据的各位要组装帧(看正文中的帧格式)。乍一看,这种方式跟并行比肯定慢的一腿。但实际上,多亏了它的稳...转载 2018-05-30 17:37:35 · 1129 阅读 · 0 评论 -
你不知道的24CXX系列芯片的细节问题
转载-----瑞生网在电子开发过程中,会遇到很多莫名其妙的问题,很多人都会怪罪于硬件本身或者电路连接,但实际上,大多数情况下,都是自己对硬件的一知半解造成的,瑞生今天给大家说说在使用AT24CXX系列的EEPROM芯片时,大多数人都不知道的细节。希望对你做(高稳定)(高可靠)(高质量)产品有帮助。1.给24cxx写入数据后,要等待至少5ms,才能再对它进行读写操作,你知道吗?上图是24cxx的da...转载 2018-06-26 19:36:51 · 5049 阅读 · 0 评论 -
NRF24L01注意点
转载--点击打开链接nrf24L01被设置为接收模式后,可通过6个不同的数据通道(data pipe)接收数据。每个数据通道都有一个唯一的地址但是各数据通道的频率是相同的。这意味着可以有6个被配置成发送状态的nRF24L01可以和一个配置成接收状态的nRF24L01通信,并且接收方可以区分(通过判断状态寄存器的1-3位即可达到区分的目的)。数据通道0有一个唯一的40bit的可设置的地址。其余的通道...转载 2018-06-20 16:16:14 · 4273 阅读 · 0 评论 -
USB转52单片机下载串口的“转换芯片”MAX232与CH340G的区别
USB转52单片机下载串口的“转换芯片”MAX232与CH340G的区别:首先需要说明,单片机的下载口TXD、RXD(P3.0与P3.1)是TTL电平(TTL电平是正逻辑数据表示,是计算机内部电路的标准通信技术,输出高电平>2.4V,输出低电平<0.4V。在室温下,一般输出高电平是3.5V,输出低电平是0.2V),所以你得万变不离其宗的将其它信号(一般输出电压较高)转成TT相对低电压T...原创 2018-07-10 15:41:09 · 8020 阅读 · 0 评论 -
MCS-51单片机的存储器组织结构
转载自-------21IC特点:哈佛结构,程序存储器与数据存储器分开,两者各有一个相互独立的64K(0x0000 ~ 0xFFFF)的寻址空间(准确地说,内部数据存储器与外部数据存储器不是一回事)。程序存储器:① 用于存放程序(可执行的二进制代码映像文件,包括程序中的数据信息),还包括初始化代码等固件。② 为只读存储器。注意,这里的“只读”,是指单片机(CPU)在正常工作时对其的...转载 2018-07-24 14:44:14 · 1774 阅读 · 1 评论 -
51单片机体系结构初步分析
转载——单片机有很多种,AVR、PIC、MC6805系列等,他们的体系结构不尽相同,指令集也各异,有些是CISC,有些是RISC,51单片机的指令集采用的是CISC。51单片机是单片机的一种,之所以这么流行,业界赞同的原因主要有两个:第一:由于intel公司(开发了51单片机)一开始就开放了授权。第二:51单片机的体系结构不难,资料很多(也良莠不齐),学的人很多。51单片机和电...转载 2018-07-24 15:49:03 · 2391 阅读 · 0 评论 -
三态缓冲器的工作原理
转载自---百家号三态缓冲器(Three-state buffer),又称为三态门、三态驱动器,其三态输出受到使能输出端的控制,当使能输出有效时,器件实现正常逻辑状态输出(逻辑0、逻辑1),当使能输入无效时,输出处于高阻状态,即等效于与所连的电路断开。缓冲器是数字元件的其中一种,它对输入值不执行任何运算,其输出值和输入值一样,但它在计算机的设计中有着重要作用。缓冲器分为两种,常用缓冲器...转载 2018-07-25 15:07:01 · 33231 阅读 · 2 评论 -
51单片机学习知识点
转载自简书—— 1.单片机内部资源三大指标:a.FLASH(程序存储控件<ROM>) 相当于: 电脑硬盘(断点后还保存在)b.RAM(内存) 相当于: 电脑内存(存储一些)c.SFR(特殊功能寄存器)2.单片机的选择:a.STC89C52 (国内生产的)1k=10...转载 2018-07-26 14:45:28 · 19688 阅读 · 0 评论 -
LCD1602时序流程讲解
1.LCD初始化,显示的位置,显示的内容忙信号处理:可以延时(简单处理)或读忙信号检测 读操作:读1602忙信号时序流程LCD1602的时序下图时间间隔都是ns级的用_nop_()代替延时AB单片机释放总线控制:单片机P2口设置成读的状态(接受\输入状态),P2口不控制总线了,即令P2=0xff,设置成高(只适用于STC89C52的设置)对时序图点...原创 2018-07-27 16:09:09 · 15023 阅读 · 0 评论 -
单片机的查询和中断两种方式怎么从程序里面看出来
查询方式就是对某一标志位的不停检测,直到发生变化,例如,汇编:LOOP:JBC TF1,L ;查询计数器是否溢出,若溢出转LSJMP LOOP ;无溢出转LOOP,继续检测TF1状态注:TF1是定时器T1的溢出中断申请位,产生溢出时,TF1置1C语言可能是 while(!TF1);//一直在这循环,直到TF1=1中断就是利用内部中断资源,当发生中断时,自动跳到中断处理程序处,不需要做无谓...转载 2018-07-27 19:47:47 · 11424 阅读 · 0 评论 -
51单片机双向口和准双向口有什么区别
双向口与准双向口的区别主要是:准双向口I/O口操作时做数据输入时需要对其置1,否则若前一位为低电平,后一位输入的电平为高则MOS管拉不起来导致出错。而双向口则不需要做此动作,因为双向口有悬浮态。准双向口就是做输入用的时候要有向锁存器写1的这个准备动作,所以叫准双向口。真正的双向口不需要任何预操作可直接读入读出。1:准双向一般只能用于数字输入输出,输入时为弱上拉状态(约50K上拉),端口只有两...转载 2018-07-28 09:52:57 · 20693 阅读 · 1 评论 -
单片机ISP、IAP、ICP烧写方式的概念与区别
玩单片机的都应该听说过ISP、IAP和ICP这几个词。一直搞不太清楚他们之间的区别。今天就给大家详细讲讲。ISP:In System Programing 在系统编程IAP:In applicating Programing 在应用编程ICP:In Circuit Programing 在电路编程区别:1、ISP是把房子拆了再重造一间,那么...转载 2018-08-05 20:05:18 · 2871 阅读 · 0 评论 -
嵌入式C语言编程小知识
1. 流水线被指令填满时才能发挥最大效能,即每时钟周期完成一条指令的执行(仅指单周期指令)。如果程序发生跳转,流水线会被清空,这将需要几个时钟才能使流水线再次填满。因此,尽量少的使用跳转指令可以提高程序执行效率,解决发案就是尽量使用指令的“条件执行”功能。2. 在LPC2200系列中:可以通过过下面的程序延迟10毫秒:for(i=0;i<200;i++){for(j=0;j&l...转载 2019-05-23 18:39:43 · 420 阅读 · 0 评论