MySQL学习笔记
数据库的基础知识
范式
为了设计结构良好的数据库,需要遵守一些专门的规则,称为数据库的设计范式
第一范式(1NF)的目标:确保每列的原子性
第二范式(2NF)的目标:确保表中的每列,都和主键相关
第三范式(3NF)的目标:确保每列都和主键列直接相关,而不是间接相关
第一范式
第一范式的目标是确保每列的原子性
如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式(1NF)
第二范式
如果一个关系满足1NF(第一范式),并且除了主键以外的其他列,都依赖与该主键,则满足第二范式(2NF)
第二范式要求每个表只描述一件事情
第三范式
如果一个关系满足2NF(第二范式),并且除了主键以外的其他列都不传递依赖于主键列,则满足第三范式(3NF)
应用第三范式规范化
单词的含义
1、Create:创建
2、Insert:插入
3、Primary:主要的
4、Structured:结构化的
5、Log:日志
6、SQL:结构化查询语言
7、Alter:修改
8、Drop:删除 (使用 drop database 数据库名; 可删除此数据库 ;使用 drop tab ...
Arduino学习笔记
Arduino介绍
Arduino是一个能够用来感应和控制现实物理世界的一套工具。 它由一个基于单片机并且开放源码的硬件平台,和一套为Arduino板编写程序的开发环境组成
性能:
Digital I/O:数字输入/输出端口 0 - 13
Analog I/O:模拟输入/输出端口 0 - 5
支持ICSP下载,支持TX/RX。(ICSP:In Circuit Serial Programmable 在线串行编程)
输入电压:USB接口供电或者5V-12V外部电源供电
输出电压:支持 3.3V 及 5V DC输出
处理器:使用Atmel Atmega168 328处理器,因其支持者众多,已有公司开发出来32位的MCU平台支持Arduino
我们所用的Arduino控制板是Arduino Uno,如下图:
Arduino基础知识
数据类型
名称
描述
char,unsigned char
字符型,无符号字符型
int,unsigned int
整型,无符号整型
long,unsigned long
长整型,无符号长整型
boolean
布尔类型(只有真/假)
...
C语言学习笔记
基础知识点
程序结构是三种: 顺序结构 、选择结构(分支结构)、循环结构
读程序都要从 main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个 main 函数
计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址
bit 是位是指为 0 或者 1。 byte 是指字节,一个字节 = 八个位
编译预处理不是 C 语言的一部分,不占运行时间,不要加分号。C 语言编译的程序称为源程序,它以 ASCII 数值存放在文本文件中
#define PI 3.1415926; 这个写法是错误的,一定不能出现分号
每个 C 语言程序中main 函数是有且只有一个
在函数中不可以再定义函数
算法:可以没有输入,但是一定要有输出
break 可用于循环结构和 switch 语句
逗号运算符的级别最低,赋值的级别倒数第二
标识符分为关键字、预定义标识符、用户标识符,关键字不可以作为用户标识符号
标识符必须由字母,数字或下划线组成,且必须以字母或下划线开头
字符小写转大写
1234567void m ...
PHP学习笔记
初识PHP脚本程序
PHP是一门嵌入式脚本语言,经常被嵌入HTML中使用
为了区别HTML与PHP代码,需要对PHP代码进行标识
PHP语言标记
开始:<?php
结束:?>
这之间就表示进入PHP模式,在开始和结束标记之外的内容都会被PHP解析器忽略。
可以直接嵌入到html代码中,并且可以嵌入到html代码中的任何地方;在一个html文档中可以嵌入任意多个PHP标记!
文件末尾的PHP代码段结束标记可以不要,在一些情况下省略掉更好!
指令分隔符"分号"
PHP语句分为两种:一种是在程序中使用结构定义语句,另外一种是在程序中使用功能执行语句,其中前者结尾不需要使用分号,后者必须使用分号结尾!
结束标志?>就隐含一个分号,所以PHP代码最后一行可以不用加分号!
在PHP中,第一条语句结束后,需要写上语句结束符";"。如果不加语句结束符,PHP程序在运行时会报错
变量
变量是用于临时存储值的容器。变量在任何编程语言中的都是核心地位!另外PHP脚本语言是一种弱类型语言,和其他语言不用的是变量或者常量的 ...
KST51-学习笔记
开发板介绍
这个板子是KST-51的开发板,芯片是STC89C52RC
新建工程
对于单片机程序来说,每个功能程序,都必须要有一个配套的工程(Project),先在文件夹创建一个工程,如图所示:
接着打开 Keil 软件,点击:Project–>New uVision Project…然后会出现一个新建工程的界面,如图所示:
给这个工程起一个名字叫做 temple,如图所示:
保存之后会弹出一个对话框,这个对话框让我们选择单片机型号。因为 Keil 软件是外国人开发的,所以我们国内的 STC89C52 并没有上榜,但是只要选择同类型号就可以了。这里我们直接选择 Intel 公司名下的 80/87C52 来代替,如图所示:
点击 OK 之后,会弹出一个对话框,如图所示,每个工程都需要一段启动代码,如果点“否”编译器会自动处理这个问题,如果点“是”,这部分代码会提供给我们用户,我们就可以按需要自己去处理这部分代码,那这部分代码在我们初学 51 的这段时间内,一般是不需要去修改的,但是随着技术的提高和知识的扩展,我们就有可能会需要了解这块内容,所以这里先点“否”
这样工 ...
数电笔记
数字信号和数字电路
模拟信号:在时间和幅度上都是连续的信号
数字信号:在时间和幅度上都是离散的信号
数字信号在电路中只分辨两种状态:高电平和低电平。高电平用1表示,低电平用0表示
数字电路:工作于数字电路下的电路称为数字电路
数制和编码
数制
1、十进制数:采用0,1,2,3,…,9十个不同的数码来表示数。十进制数的基数是10,进位规律是“逢10进1”。
2、二进制数:用两个数码“0”和“1”表示数。进位规律是“逢2进1”,即加法运算规则为“1+1=10”。
3、十六进制:用0,1,2,…,9,A,B,C,D,E,F 十六个数码表示数。十六进制基数是16,进位规律是“逢16进1”。十六进制每个数位的权是16的幂。十六进制的下标可用16H表示。
数制的转换
二进制转十进制
二进制数转换成十进制数,简记为“按权展开,相加即可”。
例 将二进制数[101.1]₂转换成十进制数。
解: [101.1]₂ =1 x 2^2 +0 x 2^1 +1 x 2^0 +1 x 2^-1 =4 +0 +1 +0.5 = [5. 5 ]10
十进制转二进制
十进制整数转换成二进制整数采用 “除2取余, ...
51单片机入门笔记
前言
这个板子是普中A2 STC89C52RC的板子,下面为开发板各功能模块
单片机最小系统:(1)晶振电路(2)复位电路(3)电源电路(4)下载电路
GPIO概念:GPIO是通用输入输出端口的简称,可以通过软件来控制其输入和输出。
开发板上使用的 51 单片机型号是 STC89C52RC,此芯片共有 40 引脚,芯片引脚图如下图所示:
51单片机引脚分类:
(1)电源引脚:引脚图中的VCC、GND都属于电源引脚。
(2)晶振引脚:引脚图中的XTAL1、XTAL2都属于晶振引脚。
(3)复位引脚:引脚图中的RST/VPD属于复位引脚,不做其他功能使用。
(4)下载引脚:51单片机的串口功能引脚(TXD、RXD)可以作为下载引脚使用。
(5)GPIO引脚:引脚图中带有Px.x等字样的均属于GPIO引脚。从引脚图可以看出,GPIO占用了芯片大部分的引脚,共达32个,分为了4组,P0、P1、P2、P3,每组为8个IO,而且在P3组中每个IO都具备额外功能,只要通过相应的寄存器设置即可配置对应的附加功能,同一时刻,每个引脚只能使用该引脚的一个功能
LED
LED简介
LED(ligh ...







