51单片机初学知识点总结
经过这半个月的学习,我对于单片机的定时器、对IO口的随意操作、输入检测、中断(定时器的中断、单片机的外部中断)、串口通信等几大学习模块有了一定了解和掌握。1软件。我主要是在keiluvisio
3实现用C语言进行编程和调试。使用keil时,新建或者打开已有文件,按步骤一步步来,漏掉哪一步都会影响最后程序是否能顺利写入单片机中。其中应注意保存C文档、添加文件到工程中和建立hex文档这几个关键步骤。2发光二极管和数码管的显示。发光二极管的静态显示是学习单片机的入门路标。分析相关模块的电路图,弄清楚引脚连接情况,根据电路图直接控制LED引脚电位的高低就能实现对相应LED亮灭的控制。了解后完成走马灯(流水线)或更多其他规则的LED显示。数码管的显示较LED稍微复杂一点点,它分位选和段选,位选控制整个数码管的亮灭,段选控制各数码管以何种形式亮或灭。数码管的显示分三步:(1)全部数码管显示一样的字符;(2)选定的数码管以规定的形式亮;(3)数码管的动态显示。其中利用定时器或者延时程序控制数码管动态显示的频率,以调节其显示亮度和视觉稳定度。用延时函数完成动态扫描:while1D1
100D2
10010D3
10P10x01P0tabD1delay10P10x02P0tabD2delay10P10x04P0tabD3delay10延时子程序:voiddelayx延时1ms子程序u
sig
edcharywhilexfory110y0y3定时计数器。编号0中断源外部中断0(INT0)中断标志位终端服务程序入口IE00003H优先级最高
f1234
定时计数器0(T0)外部中断1(INT1)定时计数器1(T1)串口
TF0IE1TF1RI或TI
000BH0013H001BH0023H
次之次之次之最低
关于定时计数器的两个特殊功能寄存器TMOD用于T1GATETCON用于定时计数器TF1M10011TR1M00101TF0工作方式0123TR0IE1说明13位TC16位TC8位自动重装TCT0分成两个独立的8位TC,T1停止M1M0:工作方式设置位用于中断IT1IE0IT0CTM1M0GATECT用于T0M1M0
GATE:门控位。GATE0,用软件使TR0或TR1为1,就能启动定时计数器;GATE1,用软件使TR0或TR1为1,同事外部中断引脚也为高,启动。我们一般置GATE0。CT0,位定时器;CT1,位计数器。对于定时时间的计算:t计数值N机器周期TN12
1focs
或:要定时时间t(65536x)12晶振频率定时计数器初始化步骤:(1)根据上面的信息,对TMOD赋初值,确定T0、T1的工作方式。(2)计算初值,将其写入TH0、TL0或TH1、TL1。(3)为中断方r