- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机初学知识点总结
51单片机初学知识点总结
经过这半个月的学习,我对于单片机的定时器、对I/O口的随意操作、输入检测、中断(定时器的中断、单片机的外部中断)、串口通信等几大学习模块有了一定了解和掌握。
软件。我主要是在keil uvision3实现用C语言进行编程和调试。使用keil时,新建或者打开已有文件,按步骤一步步来,漏掉哪一步都会影响最后程序是否能顺利写入单片机中。其中应注意保存C文档、添加文件到工程中和建立hex文档这几个关键步骤。
发光二极管和数码管的显示。发光二极管的静态显示是学习单片机的入门路标。分析相关模块的电路图,弄清楚引脚连接情况,根据电路图直接控制LED引脚电位的高低就能实现对相应LED亮灭的控制。了解后完成走马灯(流水线)或更多其他规则的LED显示。数码管的显示较LED稍微复杂一点点,它分位选和段选,位选控制整个数码管的亮灭,段选控制各数码管以何种形式亮或灭。数码管的显示分三步:(1).全部数码管显示一样的字符;(2).选定的数码管以规定的形式亮;(3).数码管的动态显示。其中利用定时器或者延时程序控制数码管动态显示的频率,以调节其显示亮度和视觉稳定度。
用延时函数完成动态扫描:
while(1)
{
D1=nn/100;
D2=nn%100/10;
D3=nn%10;
P1=0x01;
P0=tab[D1];
delay(10);
P1=0x02;
P0=tab[D2];
delay(10);
P1=0x04;
P0=tab[D3];
delay(10);
}
延时子程序:
void delay(x) // 延时1ms子程序
{
unsigned char y;
while(x--)
{
for(y=110;y0;y--);
}
}
定时/计数器。
编号 中断源 中断标志位 终端服务程序入口 优先级 0 外部中断0(INT0) IE0 0003H 最高 1 定时/计数器0(T0) TF0 000BH 次之 2 外部中断1(INT1) IE1 0013H 次之 3 定时/计数器1(T1) TF1 001BH 次之 4 串口 RI或TI 0023H 最低 关于定时/计数器的两个特殊功能寄存器
TMOD
用于T1 用于T0 GATE C/T M1 M0 GATE C/T M1 M0 TCON
用于定时/计数器 用于中断 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 M1M0:工作方式设置位
M1 M0 工作方式 说明 0 0 0 13位T/C 0 1 1 16位T/C 1 0 2 8位自动重装T/C 1 1 3 T0分成两个独立的8位T/C,T1停止 GATE:门控位。GATE=0,用软件使TR0或TR1为1,就能启动定时/计数器;GATE=1,用软件使TR0或TR1为1,同事外部中断引脚也为高,启动。我们一般置GATE=0。C/T=0,位定时器;C/T=1,位计数器。
对于定时时间的计算:
或:要定时时间t=(65536-x)*(12/晶振频率)
定时/计数器初始化步骤:
根据上面的信息,对TMOD赋初值,确定T0、T1的工作方式。
计算初值,将其写入TH0、TL0或TH1、TL1。
为中断方式时,对IE赋值,开放中断。
使TR0或TR1置高,启动定时/计数器。
例:
TMOD=0x01;//T0处于工作方式1,为十六位定时/计数器
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;ET0=1;
TR0=1; //T0初始化完毕
定时子程序:
void timer0() interrupt 1 //定时子程序
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
aa++;
if(aa==10)
{
aa=0;
……
}
}
键盘。单片机键盘分独立键盘和矩阵键盘两类,矩阵键盘涉及键盘扫描程序。而与键盘按下有关的程序就要注意到消除抖动和松手检测两个重要的细节。松手检测原理是,当键按下时,key2为低,!key2=1,此时程序一直在while语句里面循环,无法跳出来,一旦松手,key2为高,程序即可跳出while循环,执行下面接下来的语句。
if(key2==0)
{
delay(5);//延时5ms
if(key2==0) //确定key2键的确按下,,消抖
{
while(!key2);//松手检测
……
}
}
串口通信。串行通信的传输速率用波特率表示。波特率定义为:每秒发送二进制数码的位数,单位为“bps”。波特率的计算公式:
其中
您可能关注的文档
最近下载
- 牙合架、面弓 培训专用.ppt VIP
- 谐音背单词联想记忆七天背完高中单词打印版.docx VIP
- 八年级语文上册新教材解读课件(统编版2024).pptx
- 建设工程监理质量管理体系技术和档案管理制度汇编样本.doc
- GB 30251-2024 炼化行业单位产品能源消耗限额.pdf VIP
- 香精香料基本知识培训课件.pptx VIP
- 《中华优秀传统文化》教案 第16课 商贸文化.docx VIP
- Unit 5(第1课时 Section A 1a-1d)(教学设计)七年级英语上册(人教版2024).pdf VIP
- 人教版中考英语单词巧记妙背三(单词句子图片结合记忆)课件.pptx VIP
- 第6课 从小爱科学 第1课时(教学设计)2025统编版道德与法治三年级上册.pdf
文档评论(0)