单片机:
微型计算机
单片机最小系统:电源,晶振,复位电路
操作单片机的思路:
1.硬件原理部分
//搞清楚,电路的基本链接 ---找到要控制的引脚
//(1).要控制哪些引脚
//(2).这些引脚控制成什么状态
2.编程
实际上就是控制引脚的高低来操作CPU,进而控制各个部件
头文件(.h)写法
1.ifndef与define,头文件的名字一般为原文件的.c变.h,在头文件中说明是.变为_,名字大写,且开头和结尾再写一个_
2.写该头文件对应的源文件所包含的库
3.写该文件中供调用的函数,并加上extern
#ifndef _LED_H_
#define _LED_H_
#include "reg51.h" //led.c 用的
//函数声明 -- 主要是给调用者来用的
extern void ledOnAll(void);
extern void ledOffAll(void);
extern void ledOnN(unsigned int n);
extern void ledOffN(unsigned int n);
#endif
三极管作用
1.将微弱的电信号转化为幅值较大的电信号
2.开关
三极管如何判断(箭头方向代表导通后电流方向,p->positive,n->negative,用这个方法确定基级(集电极和发射级在导通后没有电势差,因此必为多的那个级,基级为中间,npn,基级为p))
中断:
中断概念:
在执行一个任务的过程中,被另外一任务打断,
处理玩这个中断后,返回来继续原先的任务
中断源,//引发中断原因,或者认为是发出中断请求信号的来源
中断服务程序,
中断点
中断优先级 //多个中断同时来了
中断的嵌套 //arm中不使用,仅了解
注意:
- 中断是cpu提供的一个功能部件 。//用的时候需要开启这项功能
51单片机的3类信号源:
(1)外部中断
外部中断0
外部中断1
(2)定时器中断
定时器0
定时器1
(3)uart串口中断
操作思路:
//中断功能部件
//1.通过芯片手册,了解该功能部件
需要使用到哪些寄存器
以及寄存器中的哪些位
及这些位需要设置陈哥什么值
中断号:
其中断函数的入口地址放在寄存器中,且是一块连续的空间,类似指针数组:
串口通信:
数据传输方式角度划分:
一位一位给数据 --- 串行通信
一次性多位数据给到 --- 并行通信
串行特点:
电路简单,节省硬件资源
效率低
传输距离可以很长
并行特点:
电路要复杂一些,硬件资源使用要多一些
效率高
传输距离短
数据传输时工作模式角度划分:
--单工,半双工,全双工
单工:只能A给B发,应用:广播,GPS
半双工:某一时刻,只能有一端收,一端发,应用:对讲机
全双工:同时收发,应用:手机
注:
全双工必须要有两条线路,单工和半双工一条线路即可
根据使用是否使用同一时钟划分:
--异步,同步通信
同步通信:通过相同的时钟频率传输
异步通信:规定传输速率(比特率)进行传输
同步通信与异步通信的区别:
(1)同步通信要求接收端时钟频率和发送端时钟频率一致,发送端发送连续的比特流;异步通信时不要求接收端时钟和发送端时钟同步,发送端发送完一个字节后,可经过任意长的时间间隔再发送下一个字节。
(2)同步通信效率高;异步通信效率较低。
(3)同步通信较复杂,双方时钟的允许误差较小;异步通信简单,双方时钟可允许一定误差。
(4)同步通信可用于点对多点;异步通信只适用于点对点。