![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
cykaw2590
这个作者很懒,什么都没留下…
展开
-
一些关于使用SBUF输出字符串时遇到的问题
用SBUF的时候,我们想给计算机输出一个字符串时,总是会遇到一些奇奇怪怪的问题,例如:输出一段字符串时(一个字符一个字符的输出),但是输出结果却不是我们想要的,比如输出“ilovecsdn”时,会输出iiiiiiillllll(可能不是这种,但是大概率不是原本的字符串)之类的字符串。:这个是因为SBUF进行输出字符串的时候,移位寄存器的执行需要时间,但是这个时间还未结束,指令已经执行到下一条了,这就导致了,SBUF刚输出一个字符,指令已经跑了好几条,甚至几十条了。在字符串后面加上\r\n。原创 2023-03-21 20:52:31 · 432 阅读 · 0 评论 -
串口与配置串口通信
12T就是普通的模式,指令周期的时间等于时钟周期的12倍。而6T则是倍速模式,指令周期的时间等于时钟周期的6倍。TTL是Transistor-Transistor Logic,即晶体管-晶体管逻辑的简称,它是计算机处理器控制的设备。回忆UART是异步串行接口,通信双方使用时钟(晶振周期)不同,因为双方硬件配置不同,但是需要约定通信速度,叫做波特率。也称标准串口,最常用的一种[串行通讯接口,比如我们的电脑主机的9针串口 ,最高速率为20kb/s。//降低电磁辐射的出生,降低干扰其他硬件的能力。原创 2023-03-19 21:15:53 · 674 阅读 · 0 评论 -
关于超声波模块的一些问题
超声波模块不能瞬间连续发射超声波,如果给的发射信号过多,程序就会崩,然后保持崩之前的状态。原创 2023-03-18 12:47:22 · 475 阅读 · 1 评论 -
超声波测距模块
while循环改变灯的形态必须加延迟,因为闪的太快人眼反应不过来,测的距离是测距离模块最近的距离。Trig:当它为高电平10微秒的信号时,告诉超声波测距模块准备发射超声波。Echo:若为1则说明超声波已发出,若为0则说明超声波已返回。一个机器周期的时间(计数器加1的时间):1.085微秒。超声波的速度约等于声速(340m/s)原创 2023-03-17 13:19:21 · 235 阅读 · 0 评论 -
控制SG90舵机
PWM波的频率不能太高,大约50HZ,即周期=1/频率=1/50=0.02s,20ms左右。2.0ms-----------135度;2.5ms-----------180度;0.5ms-------------0度;2.5% 对应函数中占空比为250。1.0ms------------45度;1.5ms------------90度;如下图所示,最便宜的舵机sg90,常用三根或者四根接线,黄色为PWM信号控制。PWM信号:接PWM端,如果没有用IO口模拟的话接对应IO口。向黄色信号线"注入"PWM信号。原创 2023-03-15 22:41:02 · 633 阅读 · 0 评论 -
关于PWM是什么
PWM,英文名Pulse Width Modulation,是脉冲宽度调制缩写,它是通过对一系列脉冲的宽度进。过调节占空比的变化来调节信号、能量等的变化,占空比就是指在一个周期内,信号处于高电平的。如果没有集成PWM功能,可以通过IO口软件模拟,相对硬件PWM来说精准度略差。出所需要的波形(包含形状以及幅值),对模拟信号电平进行数字编码,也就是说通。时间占据整个信号周期的百分比,例如方波的占空比就是50%.。如下图增强51,STC15w的CPU。通过芯片内部模块输出,一般。通过占空比编码模拟信号。原创 2023-03-14 20:43:36 · 446 阅读 · 0 评论 -
定时器中断方式控制
后面的interrupt1代表控制的是INT1的中断。这个函数可以和main一起执行(类似多线程)中断信号存在优先级,1.1 1.0 0.1 0.0优先级依次递减。例如函数void Time0Handler() interrupt 1。硬件会先执行优先级高的信号,执行完后再执行优先级低的信号。ET0,EX1等为特定一个的开关。使用中断命令,需要定义一个函数。EA 为 总控制开关。原创 2023-03-13 22:45:46 · 243 阅读 · 0 评论 -
按键的翻转
按键的翻转原创 2023-03-01 19:16:53 · 100 阅读 · 0 评论 -
按键消除抖动影响判断
因为人按下按键的时间大概有个20ms,所以只要写一个判断,如果延迟20毫秒还在被按,证明是人在按。原创 2023-03-01 19:12:54 · 105 阅读 · 0 评论 -
关于Keil中没有Sleep函数的解决方法
在STC-ISP中,选择软件延迟计算器,选择要延迟的时间,如果是C51/52单片机选择STC-Y1指令集,生成C代码后,把_nop_()函数删除(因为要用到其他头文件,此处不展开讨论)原创 2023-03-01 18:53:53 · 515 阅读 · 0 评论 -
关于电路图怎么看
GND:低电平(即0),比如一个灯如果要亮,必须有一个电压差。不同位置出现同一个名字,证明是在一条线上。原创 2023-03-01 18:49:29 · 91 阅读 · 0 评论 -
IO口的输入和输出
IFfire = 1;//这个时候把1输出给IFfire对应的地址(1代表高电平,0代表低电平)io_data = IFfire;//这个时候io_data就是接受IFfire传入的值。原创 2023-03-01 17:35:48 · 279 阅读 · 0 评论 -
sfr和sbit的描述
sfr和sbit原创 2023-03-01 17:29:46 · 1070 阅读 · 0 评论