51
51系列单片机相关
帅气滴点C
这个作者很懒,什么都没留下…
展开
-
I2C
一般情况下,I2C设备焊接没什么问题,按照设备手册一步步来,基本上就顺风顺水能够用起来。如果这么一个简单的东西,有时候想要的结果死活不出来,反复的检查问题的原因,查询解决办法,核查设备的数据手册,甚至发送和接收的每一条命令与数据都知道是什么意思,仍然无法解决问题,那该怎么办呢?本文主要针对I2C设备,讲解如何解决I2C设备主机与从机直接无法正常数据交互的问题,侧重点是针对硬件设计不太合理、I2...转载 2019-11-13 09:51:19 · 543 阅读 · 0 评论 -
Qt中QString,int,char,QByteArray之间相互转换
int 转 QStringint m=1;QString b;b=QString::number(m)QString 转intQString a="1111"int b;b=a.toInt()char 转换为 QStringchar a='b';QString str;str=QString(a);QString 转换为 charQString str="qq";char *ch;ch = st...转载 2018-05-23 20:08:00 · 548 阅读 · 0 评论 -
*((volatile unsigned int *)
例如*(volatile unsigned int *)0x500其中0x500是16进制的常数,这里用用到强制类型转换,把0x500转换成int指针类型,所以0x500变为指针地址。前面在加上*(volatile unsigned int *)0x500 也就是在改地址中进行赋值。volatile在嵌入式中去掉优化。...转载 2018-05-25 15:41:14 · 726 阅读 · 0 评论 -
51单片机中的堆栈
在51单片机中,堆栈(push)分为入栈和出栈(pop)遵循’先进后出,后进先出’的原则。堆栈可以看似一个临时保存数据的寄存器。特点是保存的数据不变,一般用来保存中断开始地址,和用户所需要自己设定的数据。在使用时要现在片内ram中初始化,即给sp(堆栈指针一个空间地址),然后按照先进后出恩,后进先出的原则进行压栈和出栈操作。要注意只能在片内ram中。堆栈是一种执行“后进先出”算法的数据结构。设...原创 2015-12-22 23:06:59 · 10253 阅读 · 1 评论 -
单片机汇编指令
1.减法指令1.带借位减法指令SUBB 2.减1指令DEC1:SUBB A,Rn;A2.DEC A;A=A-1 DEC Rn;Rn=Rn-1 位转移指令 以C为条件1.JC rel:假如psw寄存器中的c为1,则转移PC2.JNC rel :假如c=0,则转移PC<-PC relbr />以bit为条件1.JB bit,rel:若bit该位为1,则转移P原创 2015-12-22 22:48:24 · 4592 阅读 · 0 评论 -
单片机定时/计数器
在工作方式0和1中在每次益出时都要重新置初值。工作方式2高8位用来放初始值,低8位用来计数,所以计数定时的范围为0-256 定时器/计数器的定时/计数范围工作方式0:13位定时/计数方式,因此,最多可以计到2的13次方,也就是8192次。工作方式1:16位定时/计数方式,因此,最多可以计到2的16次方,也就是65536次。工作方式2和工作方式3,都是8位的定时/计数方式,因此,最多原创 2015-12-22 23:02:41 · 1242 阅读 · 0 评论 -
51单片机最小系统——复位
在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。所以可以通过按键的断开和闭合在运行的系统中控制其复位。 开机的时候为什么为复位在电路图中,电容的的大小是10uF,电阻的大小是10k。所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*1...原创 2015-12-22 23:01:34 · 7391 阅读 · 0 评论 -
寄存器TCON
寄存器TCON用来控制中断相关的功能,高四位用来控制定时器/计数器,低四(D3-D0)位用来控制外部中断。其中D0-1为外部中断1,剩下两个为中断2D0:用来选择外部中断的触发方式。0为电平触发,1为边沿触发。D1:两个外部中断请求标志。若为1则向cpu请求中断,cpu响应中断后自动由硬件将IE0/1清零。D2:外部中断1……同D0原创 2015-12-22 23:01:03 · 5621 阅读 · 0 评论 -
altium designer 09 封装库建立
第一种方法:文件-新建-库-pcb元件库:保存该库,在该库中可以建立多个元器件原理图,所以要调用,即调用该库即可, 则该库下面所建立的所有元器件原理图即可。 1:绘制原理图库中的元器件原理图。2:保存后在sch library 中双击该元器件原理图文件,更改其属性。3:在库中调用自己建立的原理图库,则可以用它下面的所建立的一个或多个元器件原理图第二种方法:利用向原创 2015-12-22 22:54:41 · 1369 阅读 · 0 评论 -
单片机串口中断
单片机串口中断如何进行串口初始化1.首先选择工作方式即SCON方式的选择(SCON,PCON)2.波特率设置。 ( TMOD TH1 TL1)3.中断开启(EA)4.开始(TR)1)sm0, SM1为方式寄存器1.串行工作方式0串行口工作方式0时,串行口作同步移位寄存器使用。以RXD(P3.0)端作为数据的输入和输出端,而TXD(P3.1)提供移位的时钟脉冲原创 2015-12-22 22:43:42 · 2032 阅读 · 0 评论 -
C51中变量的存储器类型有
C51中变量的存储器类型有code,data,idata,xdata,bdata,pdata这几种。code:定义的变量在程序存储区域,64Kbyte范围,变量为只读。data:定义的变量在00H~7FH的RAM,128byte范围,变量可读写。idata:定义的变量在00H~FFH的RAM,256byte范围,变量可读写。bdata:定义的变量在20H~2FH的RAM,16byt转载 2015-12-22 22:42:07 · 6143 阅读 · 0 评论