- 博客(32)
- 收藏
- 关注
原创 单片机学习
串行通信特点:传输线少,长距离传送时成本低,且可以利用电话网等现成设备,但数据的传送控制比并行通信复杂方式1:是一帧10位的异步串行通信方式,包括1个起始位,8个数据位和一个停止位。其帧格式为: 串行工作方式2、方式3 方式2、3是一帧11位的串行通信方式,即1个起始位,8个数据位,1个可编程位TB8/RB8和1个停止位。 其帧格式为:起始 数据发送和接收:数据发送和接收与方式1基本相同,区别在于方式2把发送/接收到的第9位内容送入TB8/RB8。波特率:方式2波特率固定,即
2022-07-11 23:10:25 796
原创 单片机学习
矩阵键盘的电路结构图 第一行的行控制线接到p17,第二行的行控制线接到p16,第三行的行控制线接到p15,第4行的行控制线接到p14第一列的列控制线接到p13,第二列的列控制线接到p12,第三列的列控制线接到p11,第四列的列控制线接到p10矩阵键盘的原理和独立按键类似,另外我们可以把矩阵键盘的任意一行或一列作为一个独立键盘使用,假如我们把第一行作为独立键盘,那么我们只需要让P17输出高电平,其余7个io口输出低电平即可,假如我们按下了s1,那么p13的电平就会被拉低,变为低电平,所以我们可以通过查找低
2022-07-08 15:07:10 851
原创 单片机学习
LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。该显示屏的优点是耗电量低、体积小、辐射低。LCD1602主要用来显示数字、字母、图形以及少量自定义字符。可以显示2行16个字符,拥有16个引脚,其中8位数据总线D0-D7,和RS、R/W、EN三个控制端口,工作电压为5V,并且带有字符对比度调节V0和背光源AK。其原理图如下 在编写代码我并未使用模块化
2022-07-04 11:29:58 387
原创 单片机学习
C51数组:把相同类型的一系列数据统一编制到某一组别中,可以通过数组名+索引号简单快捷的操作大量数据C51子函数:子函数将完成某一功能的程序代码单独抽取出来形成一个模块,在其它函数中可随时调用此模块,以达到代码的复用和优化程序结构的目的该代码为第三个显示数字6 显示效果: 通过改变P2_2,P2_3,P2_4来改变所要亮的数码管效果如下 LED亮是因为引脚冲突导致P2_4=1;P2_3=1;P2_2=1;第一个静态数码管P2_=1;P2_3=1;P2_2=40;第二个静态数码管P2_4=1;P
2022-06-30 22:56:17 312
原创 单片机静态数码管显示
LED数码管:数码管是一种简单,廉价的显示器,是由多个发光二极管封装在一起组成“8”字型的机器如下图以为数码管引脚定义:A--7;B--6;C--4;D--2;E--1;F--9;G--10;DP--5通过点亮二极管来显示想要的数字(连接公共端)四位一体数码管:A--11;B--7;C--4;D--2;E--1;F--10;G--5;DP--3在哪一个上显示要的数据则给0其他的数码管给1(负极与正极相接不会亮);在下面的二级管中1则为亮,0为灭共阳极:1为灭,0为亮共阴极:1为亮,0为灭138译码器中C.B
2022-06-29 15:41:06 615
原创 独立按键控制LED的状态
按键的抖动:按键产生的电平变化与图所示的理论电平变化具有一定差异,这是因为通常按键所用的开关都是机械弹性开关。当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会立刻稳定接通,在断开时不会立刻彻底断开,而是在闭合和断开的瞬间伴随着一连串的抖动实操如下视频V20625-042812...
2022-06-25 19:18:39 130
原创 按键控制LED灯的点亮与熄灭
通过电路图的原理找到通过P3_1和K1控制LED灯1的亮与灭本代码段执行后冷启动单片机后V20622-143444
2022-06-22 14:56:03 2275
原创 单片机LED流水灯的学习
ranh流水灯是若干个灯泡依次点亮,视觉上感觉到灯光在流动就叫做流水灯在单片机上的操作是在LED灯闪烁的基础上进行的,即LED灯依次进行闪烁其中计算时间的代码在stc的软件延时计算器上可获取然后再在 keil上编写代码然后进行51单片机的冷启动即可看到现象 https://video-community.csdnimg.cn/vod-84deb4/c2b2f6fc9db946ff967ac190ad01f788/snapshots/3c160cd6041e4d50a6b1c93003a342b8
2022-06-18 14:27:40 294
原创 单片机led灯的学习
在学习完亮一个灯之后,又对间隔一个亮一个灯进行学习 在这样的操作下,对单片机进行冷却启动之后会有如下情况就是一个亮的接着一个不亮的在后来又对单片机进行了闪烁实验周期为1s,闪烁之间的间隔为500ms,其代码是通过stc软件复制而来的 然后再重启单片机...
2022-06-13 23:23:33 205
原创 剪映的学习
剪映专业版软件的安装和快捷键熟悉剪映专业版界面的认识剪映专业云服务的同步云空间免费扩充与云素材实用方法(10G)剪映专业版流程认识剪映专业版素材的导入通过视频在下载了剪映之后对软件内基本的设置进行了改动 将文件的存储位置使用了文件夹进行保存以防丢失,也能在使用时方便查找。我启用了GPU绘制界面,在电脑配置较低的情况下,不建议将其打开 。 这张图是Premiere的快捷键,方便在剪映时操作。 这是进入剪映时的页面,在这里进行对视频和照片的处理。...
2022-06-09 19:25:55 1349
原创 单片机——点亮一个LED
单片机的入门首先需要下载两个必要的软件:keil c5和stc。也可以下载有道词典来帮助翻译通过二进制的转化使用16进制来带入LED的vcc为正极 102表示为1000 类似于科学计数法 102=10 00点亮LED分为几步:首先需要在keil中建立这个项目并编写代码,然后在stc中选择正确的型号和串口,打开之前keil建立的项目文件,点击下载/编程接着对单片机冷启动,灯亮。由于不同的板子接口不一样所以代码也不一样...
2022-06-07 22:32:32 631
原创 C语言练习
建立内存动态数组分配区和使用void指针使用动态数组,输入五名学生成绩,再用一个函数检查其中有无低于60分的,输出不及格者用malloc函数开辟一个动态自由区域,用来存储五名学生成绩,会得到这个动态域第一个字节的地址,它的基本类型为void型。用一个基类型为interesting的指针变量p来只想动态数组的各元素,并输出它们的值。但必须先把malloc函数返回的void指针转化为整型指针然后赋值p1....
2022-06-06 15:35:07 138
原创 C语言学习
while语句:其中的语句就是一个循环体,循环体只能是一个语句,可以是一个简单的语句,还可以是一个复合语句while语句可简单的记为:只要当循环条件表达式为真(即给定的条件成立),就执行循环体语句例子:1+2+3+4+5+6......+100用C语言表达式可以表达为如下#include<stdio.h>int main(){ int i=1,sum=0; while(i<=100) { sum=sum+i; i++; } printf("sum=%d\
2022-04-09 15:56:48 533
原创 C语言学习
函数的返回值是通过函数中的return语句获得的函数值的类型,例如:int max在定义函数时指定的函数类型一般应该和return语句中的表达式类型一致函数类型决定返回值的类型对不带回值的函数,应当用定义函数为“void类型”(或称“空类型”) #include<stdio.h> int main() { int max(float x,float y); float a,b; int c; scanf("%f,%f",&a,&b);
2022-04-05 23:47:33 197
原创 C语言学习
#include<stdio.h>int main(){ int x; float y; printf("请输入x的值:"); scanf("%d",&x); if(x<1) y=x; else if(1<x&&x<10) y=2*x-1; else if(x>10) y=3*x-11; printf("%d,%f",x,y); return 0; }x和y的值关系用if语句表达...
2022-04-03 23:33:36 181
原创 C语言学习
if语句的使用#include <stdio.h>int main(){ int a,b; printf("请输入两个整数:"); scanf("%d %d",&a,&b); if(a>b) { printf("max = %d\n",a); } if(a<b) { printf("max = %d\n",b); }}switch从句的运用
2022-04-01 22:29:58 52
原创 C语言学习
else从于它上面的,最接近的未配对的if语句配对年月计算#include<stdio.h>int main(){ int year,month,days; printf("请输入年,月"); scanf("%d,%d",&year,&month); switch(month) { case1; case3; case5; case7; case8; case10; case12; days=31; break; ca
2022-03-29 23:52:30 51
原创 C语言学习
disc 不是保留字,也不是标准函数,是自定义标识符。 disc 可以是 discrete 离散,可以是 disk 盘 片, 可以是 discard在程序中disc代表b*b-4ac,realpart代表实部,imagpart代表虚部#include<stdio.h>#include<math.h>int main(){ double a,b,c,disc,x1,x2,realpart,imagpart; scanf("%if,%if,%if",&a,&a
2022-03-28 21:50:45 3465
原创 C语言学习
<小于 <=等于>大于>=大于等于==等于!=不等于其中小于,小于或等于,大于,大于或等于的优先级相同且高于等于和不等于运算符优先级低于运算符,但高于赋值运算逻辑值:成立1 不成立0!0=1代数中:0<x<10在C语言中只能表示为0<x&&x<10,如果在C语言中表示为0<X<10在C语言的运算规则中0<x,其值为0或1,则0<X<10的值则永远为1#includ...
2022-03-27 22:34:22 1694
原创 C语言学习
&&逻辑与and 例如:a&&b 如果a和b都为真,则结果为真,否者为假|| 逻辑或or 例如:a||b 如果a和b有一个以上为真,则结果为真,二者都为假时,结果为假!逻辑或not 例如:如果a为假,则!a为真,如果a为真,则!a为假switch语句是多分支选择语句选择结构程序综合举例:判断是否为闰年#include<stdio.h>int main(){ int year,leap; printf("enter year:");
2022-03-26 14:18:09 251
原创 C语言学习
用程序求解方程#include<stdio.h>#include<math.h>int main(){ double a,b,c,disc,x1,x2,p,q; scanf("%if%if%if",&a,&b,&c); disc=b*b-4*a*c; if(disc<0) printf("This question hasn't real roots\n"); else { p=-b/(2.0*a); q=sqrt(di
2022-03-24 22:02:42 78
原创 C语言学习
带有修饰符的整数型数据的输入输出事例#include<stdio.h>;int main(){ int a,b,c,d; scanf("%2d%3d%*d,%d%d",&a,&b,&c,&d); printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d); printf("a=%4d,b=%-4d,c=%-4d,d=%4d\n",a,b,c,d); printf("a=%+4d,b=%+4d,c=%+4d,d=%+4d\.
2022-03-23 17:07:52 159
原创 C语言学习
C语言处理系统提供了许多事先编好的库函数,供用户在编写程序的时候使用,这些事先的函数成为库函数。常用的数学函数库有:1.exp(x)=e的x次方2.fabs(x)=x的绝对值3.以e为底的对数函数log(x)=lnx4.pow(x,y)=x的y次方5.sqrt(x)=根号下xe+004表示为*10的4次方用putchar函数输出一串字符用getchar函数输入一个字符一元二次方程:#include<stdio.h>#include<math.
2022-03-22 21:10:22 1183
原创 C语言学习
算法包括:设计算法和实现算法用计算机语言表达算法,例子#include<stdio.h>int main(){ int sign=1; double deno=2.0,sum=1.0,term; while (deno<=100) { sign=-sign; term=sign/deno; sum=sum+term; deno=deno+1; } printf("%f\n",sum); return 0;}结构化程序设计方法:1.自顶向下2
2022-03-21 18:36:53 260
原创 C语言学习
三角形面积的计算#include<stdio.h> #include<math.h>int main() { double a,b,c,s,area; a=3.67; b=5.43; c=6.21; s=(a+b+c)/2; area==sqrt(s*(s-a)*(s-b)*(s-c)); printf("a=%f\tb=%f\tc=%f\n",a,b,c); printf("area=%f\n",area); return 0;}...
2022-03-20 16:54:17 244
原创 C语言学习
······························································································ ·········
2022-03-20 00:32:52 80
原创 C语言学习
反序数运算例子:#include<stdio.h>int main(){ int ge,shi,bai; int n=123; printf("输入的三位数为:%d\n",n); ge=n%10; shi=(n%100)/10; bai=n/100; printf("反序数为%d%d%d",ge,shi,bai); return 0;}赋值运算:赋值运算符+=,-=,*=,/=,%=复合赋值运算例:a+=3等价于a=a+3 x*=y+8等
2022-03-19 10:43:39 994
原创 C语言学习
练习打代码 代码表示游戏:贪吃蛇#include <stdio.h>#include <Windows.h>#include <stdlib.h>#include <time.h>#include <conio.h>#define ROW 22 //游戏区行数#define COL 42 //游戏区列数#define KONG 0 //标记空(什么也没有)#define WALL 1 //标记墙#define F...
2022-03-17 15:11:15 201
原创 C语言的学习
求和:a+b%3*(int)(a+c)%2/4a=2.5,b=7,c=4.7用代码形式表示#include<stdio.h>int main(){ float a,c; int b; a=2.5; b=7; c=4.7; a+b%3*(int)(a+c)%2/4; printf("%f",a+b%3*(int)(a+c)%2/4) ;}scanf和printf都是C语言的标准输入输出函数&是地址符 &...
2022-03-16 21:41:13 1306
原创 C语言学习
%f小数int整数%d整数char字符型*代表乘/代表除,两个整数相除结果为整数 如:5/3=1 2/3=0%模运算符,或称求余运算符,只有整数型数据能求余(浮点型不能求余)+加法运算-减法运算%c字符 (字符中对应的数字为ASCII) 字符串用双撇号“” ‘a’是字符常量 “a”是字符串常量浮点数两种表示形式:1.十进制 123.452.指数 1.2345e2 (e表示为乘,e后的2为10的2次方)#define指定用一个符号代表一个常量...
2022-03-15 22:26:22 753 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人