1.“=” 赋值运算符
2.算数运算符
“*”乘运算符
“/” 除运算符 例: 7/3=2;
“%”取余运算符 例:7%3=1;
3.增量和减量运算符
++ 自增
-- 自减
4.位运算符
~ 按位取反 100 →011
<< 左移 (空的补零); >> 右移 (空的补零);
&按位与; ^ 按位异或; | 按位或;
5.关系运算符(关系运算符通常用来判断某个条件是否成立,运算结果只有0和1两种值。)
>= 大于等于; <=小于等于;
==等于; !=不等于;
6.逻辑运算符
&& 逻辑与 (都为真(非零值),才是真。一个是假就是假(返回0))
|| 逻辑或 (一个真就是真,都假才是假 )
! 逻辑非 (对条件式的逻辑值直接取反)
C51中常用的控制语句
条件语句:
if(a>c)
{c=a+b;}
If(a>b)
{a=0; }
else
{a++;}
循环语句
for([初始设定表达式];[循环表达式];[更新表达式])
{语句}
例:
for (i=1; i<100; i++)
{语句}
花括号里面的语句会被执行100次,后退出。
C51程序的基本结构
#include<reg52.h>
int main()
{
}
80c51有32个IO接口。
89c51有15位IO接口。
VCC电源 VSS接地
单片机中最小系统要包括:
1.电源
2.单片机芯片(运行程序/处理数据)
3.晶振电路(给单片机工作提供节拍)
4.复位电路(刚上电时需要复位程序,是程序从头开始运行。)
时钟周期:为单片机提供时钟脉冲信号的震荡的周期
机器周期:一个机器周期包括12个时钟周期,在一个机器周期内,CPU可以完成一个独立操作。
Arduino:四位共阴极数码管的控制
例:
Unsigned char table[10][8]=
{
{1, 1, 0, 0, 0, 0, 0, 0}, //从左往右数,分别是低0~7位
{1, 1, 1, 1, 1, 0, 0, 1},
{1, 0, 1, 0, 0, 1, 0, 0},
{1, 0, 1, 1, 0, 0, 0, 0},
{1, 0, 0, 1, 1, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 1, 0},
{1, 0, 0, 0, 0, 0, 1, 0},
{1, 1, 1, 1, 1, 0, 0, 0},
{1, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 0, 0, 0, 0}
}; //从上往下数分别是低0~9行
最后的分号别忘记
switch(com){
case1:
berak;
case2:
break;
…
default:
break;
}
randomSeed 随机种子
输入上拉模式:按下时低电平,不按时高电平。
开关引脚:同侧不相连,相连不同侧
Serial.begin(9600)
Serial.println(analogRead())
累加器
Int i = 1234; i/1000=1
Int形只能存放整数。
松手检测:
Unsigned char Scankye()
{
If(digitalRead( )==LOW)
{
delay(20);
if(digitalRead( )==LOW)
{
while(digitalRead( )==LOW)
{
return 1;
}
}
}
return 0;
}