从单片机基础到程序框架(连载) - 单片机论坛,单片机技术交流论坛 - 21ic电子技术开发论坛
阅读笔记
1.关键词sbit和符号“^”的组合类似宏定义:
sbit P1_4=P1^4; //变量P1_4就和P1.4关联起来了
2.51系列单片机,最短的单周期指令是由12个“心跳个数”组成,
假如51单片机是晶振频率12MHz,那么心跳速度就是1/12000000,
所以一个单周期指令的节拍时间就是:心跳个数*心跳速度 = 12*1/12000000 = 1微秒;
这种情况下假如定时器的16位模式,最大值是65535,因此最大定时值就是65.535ms
- 中断函数:
- 无返回值,也不能带参数;
- 函数名后面需要紧跟关键字interrupt,说明是中断函数;
- 关键字interrupt后面要跟中断号,说明说明这个服务函数是为那个中断服务的;
4)格式:void 函数名称() interrupt 中断号
中断的开启:中断的总开关EA + 局部开关(比如定时器0中断的开关ET0),两个必须同时打开;中断允许
5.定时器/计数器 模式控制寄存器TMOD
GATE C/T M1 M0
定时器开启和停止由两个开关决定:1)GATE是定时器是否受“其他外部开关”影响的标志位;2)自身原配开关(定时器0的自身原配开关是TR0,可以启动定时器的中断);
C/T 计数器/定时器;
6.定时中断里面关键词:1)1ms, 1ms是系统时钟的节拍来源;2)互斥量;3)volatile;volatile是针对编译器的;
7.初始化注意事项:
1)单片机系统初始化SystemInitial(),这里主要放对上电瞬间要求高需要立即处理的,比如控制继电器
2)延时Delay(10000)---为3)做准备
3)外设初始化PeripheralInitial(),主要用来处理不要求上电立即处理的外设芯片和模块,如液晶屏、存储芯片、时钟芯片等等,这些芯片在上电的瞬间,内部自身、外部的电压稳定都需要一点时间,只有过了这一点时间,这些芯片才处于正常的工作状态,也只有这情况下,单片机才能跟它们正常通讯
8. 蜂鸣器分类:
有源蜂鸣器:通电响,断电停。驱动电路有NPN(高电平导通,低电平关闭)和PNP