版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、案例2 单片机最小系统设计01用户名:stu密码:stu2014.9.18单片机最小系统设计步骤 硬件设计工具软件:Altium Designer、DXP 软件设计工具软件:Keil uVision 调试万用表示波器最小系统-硬件单元电路 电源及其指示灯电路 晶振电路 复位电路 ROM启动选择电路 下载接口电路 独立按键电路 发光二极管电路等电源及其指示灯电路电源接插件XH2.54KF2510KF7.62HT5.08DC电源插座电源插座压线钳压线钳发光二极管5mm、3mm直径直径贴片发光管贴片发光管060308051206电阻1/4W立式电阻(碳膜、金属膜)立式电
2、阻(碳膜、金属膜)贴片电阻贴片电阻热敏电阻热敏电阻压敏电阻压敏电阻晶振电路时钟:定时与控制部件时钟:定时与控制部件晶振和电容组成的晶振和电容组成的并联谐振并联谐振回路。回路。晶振:晶振:1.2MHz1.2MHz12MHz12MHz之间选择(典型:之间选择(典型:6 6M M、12M12M、11.0592M11.0592M)电容:瓷片电容电容:瓷片电容 5 53030PFPF调试单片机最小系统时,可用示波器测晶振波形(正弦信号)来判断调试单片机最小系统时,可用示波器测晶振波形(正弦信号)来判断CPUCPU是否已工作(正弦波)是否已工作(正弦波)无源无源有源有源瓷片瓷片电容电容8051 8051
3、周期周期 振荡周期振荡周期:指振荡源的周期(石英晶体的振荡周期):指振荡源的周期(石英晶体的振荡周期) 时钟周期时钟周期:( (称称S S周期周期) )为振荡周期的为振荡周期的2 2倍倍 机器周期机器周期:一个机器周期含:一个机器周期含6 6个时钟周期,即个时钟周期,即1212个振荡周期。个振荡周期。 指令周期指令周期:完成一条指令占用的全部时间。:完成一条指令占用的全部时间。805l805l的指令周期的指令周期含含1 14 4个机器周期个机器周期 机器周期机器周期: :T=12/foscT=12/fosc 若若foscfosc6 MHz6 MHz,则,则805l805l的:的:振荡周期振荡周
4、期1 16 6 usus; 时钟周期时钟周期1 13 3 usus;机器周期机器周期2 2 usus; 指令周期指令周期2 28 8 usus。 复位电路 为什么要复位?为什么要复位?单片机死机时,需要复位;单片机死机时,需要复位;复位后复位后CPUCPU从地址从地址00000000H H开始执行开始执行程序。程序。 怎么复位?怎么复位?在在RSTRST输入端出现输入端出现高电平高电平时实现时实现复位和初始化。复位时复位和初始化。复位时RSTRST引脚引脚至少保持一定时间的高电平高至少保持一定时间的高电平高电平持续电平持续2424个振荡周期以上个振荡周期以上(6 6MHzMHz4us4us)。
5、)。当当RSTRST引脚返回低电平以后,引脚返回低电平以后,CPUCPU从地址从地址00000000H H开始执行程序,复开始执行程序,复位时晶振上无信号。位时晶振上无信号。6*6*5mm微动按钮微动按钮12*12*7mm微动按钮微动按钮复位电路 复位电路复位电路上电复位上电复位(R=10kR=10k,C=10uF tC=10uF tRC=100msRC=100ms)手动复位手动复位看门狗自动复位看门狗自动复位看门狗监控复位电路看门狗监控复位电路 IMP705/706/813LIMP705/706/813L为带看门狗为带看门狗PP监控电路。程监控电路。程序中要对序中要对813“813“喂狗喂狗
6、”,若,若1.61.6秒内没有秒内没有“喂狗喂狗” ” 信号信号(P1.0)(P1.0),则,则813813会自动产生信号对会自动产生信号对CPUCPU复位。复位。8051 存储器系统存储器分类存储器分类ROMROM:程序存储器,放代码:程序存储器,放代码 AT89S51AT89S51片内片内(4(4K)K) 片外最大片外最大6464K K(0000HFFFFH0000HFFFFH)RAMRAM:数据存储器,放数据:数据存储器,放数据 AT89S51AT89S51片内片内(256(256字节字节) ) 片外最大片外最大6464K K(0000HFFFFH0000HFFFFH) 8051的ROM
7、与RAM采用独立编址(地址会出现重叠) 系统是通过控制信号PSEN#(ROM编程选择使能)RD#(RAM读控制)WR# (RAM写控制)来区分对ROM还是RAM的操作ROM启动选择电路 AT89S51单片机片内含4K Flash ROM地址范围:000H3FFH 片外亦可扩展到最大64K的ROM地址范围:0000HFFFFH 8051单片机系统是从0H地址处开始运行的,因此8051单片机设置了EA#(External Address外部地址)选通控制位EA#=0:用外部ROM启动EA#=1:用内部ROM启动ROM(程序存储器程序存储器)ROM保留地址其它ROM地址RAM(随机存储器随机存储器)
8、低低128128字节(字节(0000H7FHH7FH) RAMRAM区区高高128128字节(字节(8080H HFFHFFH) 特殊功能寄存器特殊功能寄存器(SFR)(SFR)的区的区 80518051有有2121个特殊功能寄存器,其个特殊功能寄存器,其它是预留,不能用于存储数据它是预留,不能用于存储数据 具体见下页具体见下页8051 218051 21个特殊功能寄存器个特殊功能寄存器( (SFR)SFR)符号符号地址地址注释注释符号符号地址地址注释注释* *ACCACCE0HE0H累加器累加器* *P3P3B0HB0H通道通道3 3* *B BF0HF0H乘法寄存器乘法寄存器PCONPCO
9、N8787H H电源控制及波特率选择电源控制及波特率选择* *PSWPSWD0HD0H程序状态字程序状态字* *SCONSCON9898H H串行口控制器串行口控制器SPSP8181H H堆栈指针堆栈指针SBUFSBUF9999H H串行数据缓冲器串行数据缓冲器DPLDPL8282H H数据存储器指针(低数据存储器指针(低8 8位)位)* *TCONTCON8888H H定时器控制定时器控制DPHDPH8383H H数据存储器指针(高数据存储器指针(高8 8位)位)TMODTMOD8989H H定时器方式选择定时器方式选择* *IEIEA8HA8H中断允许控制器中断允许控制器TL0TL08AH
10、8AH定时器定时器0 0低低8 8位位* *IPIPD8HD8H中断优先控制器中断优先控制器TL1TL18BH8BH定时器定时器0 0高高8 8位位* *P0P08080H H通道通道0 0TH0TH08CH8CH定时器定时器1 1低低8 8位位* *P1P19090H H通道通道1 1TH1TH18DH8DH定时器定时器1 1高高8 8位位* *P2P2A0HA0H通道通道2 2* *:表示该:表示该SFRSFR可以位寻址可以位寻址8051单片机程序下载 编程器方式 ISPIn System Program在系统编程 IAPIn Application Program在应用编程:通过RS23
11、2、CAN、以太网等ISP下载接口电路ByteBlasterIIByteBlasterII 并口下载并口下载实验室台式机实验室台式机参阅参阅 Isplay1.3ISPlayIsplay1.3ISPlay使用手册使用手册. .pdfpdfAVR ISP USBAVR ISP USB下载下载学生笔记本学生笔记本参阅参阅progisp168USB-ASPprogisp168USB-ASP使用说使用说明明. .docdocFC10P压线头压线头DC10P简易牛角座简易牛角座IDC压线钳压线钳输入检测电路1-独立按键电路高电平有效高电平有效低电平有效低电平有效输入检测电路2-大信号输入 工程应用中,很多
12、开关量输入信号为12V或24V,要传入MCU,应将对应信号转换成MCU的匹配电平,可采用电阻分压或光耦方式实现,具体电路见下:电路1:电阻分压电路(74HC14:六施密特反相器)输入检测电路2-大信号输入 若输入信号为12V或24V的开关信号,要传入MCU,应将对应信号转换成MCU的匹配电平,可采用电阻分压或光耦方式实现,具体电路见下:电路2:光耦电路开关量输出控制电路1-发光二极管电路上拉接法(典型)上拉接法(典型)低电平驱动低电平驱动下拉接法下拉接法高电平驱动高电平驱动开关量输出控制电路2-大信号输出 工业现场的开关量通常是12V或24V,而MCU输出一般为5V或3.3V,因此需要加驱动电
13、路。具体方法可采用三极管或集成达林顿管驱动。继电器驱动电路开关量输出控制电路2-大信号输出 工业现场的开关量通常是12V或24V,而MCU输出一般为5V或3.3V,因此需要加驱动电路。具体方法可采用三极管或集成达林顿管驱动。达林顿管驱动8051 I/O口 8051单片机有4组8位P0P1P2P3 每个端口可作为输入或输出字节操作位操作(位寻址) 部分端口除I/O功能外的第二功能P0 AD7AD0 低8位地址总线8位数据总线分时复用P2 A15A8 高8位地址总线P3 RXD、TXD、INT0#、INT1# T0、T1、WR#、RD#8051 I/O 读写操作字节操作 #include “reg
14、51.h” / sfr P1=0 x90; 读字节 unsigned char a; a=P1; /读8位 a=P1&0 x01; /读1位 a=P1&0 x0f; /读4位 写字节 P2=0 x01; /写8位常量 P2=ai; /写8位数组元素 P2=P2|0 x01;/对P2.0置1 P2=P2&0 x0f;/对P2高4位清0,低4位保持不变位操作 sbit P1_0=P10; /必须先定义位 读位 bdata my_byte=0 x20; sbit my_bit= my_byte 0; 或bit my_bit=0 x00; my_bit=P1_0; if(my_bit=1) ; if(
15、P1_0= =1) ; 写位 P1_0=1; P1_0=0; P1_0=P1_0;端口输出控制-字节操作方式#include reg51.h#define DELAY 1000void delay(unsigned int n)unsigned int i;for(i=0;in;i+);void main()P2=0 x7f;delay(DELAY_1S);P2=0 xBf;delay(DELAY_1S);P2=0 xDf;delay(DELAY_1S);P2=0 xEf;delay(DELAY_1S);P2=0 xF7;delay(DELAY_1S);P2=0 xFB;delay(DELAY
16、_1S);P2=0 xFD;delay(DELAY_1S);P2=0 xFE;delay(DELAY_1S);问题:1、8状态完成后程序结束,应该加死循环while(1);2、低电平有效时,16进制数据书写较繁琐,可采用位取反“”实现;3、8组语句可采用通过数组,用循环实现,以简化程序。具体方法见下页端口输出控制-字节操作方式 while内嵌for语句void main()unsigned char d8=0 x80,0 x40,0 x20,0 x10,0 x08,0 x04,0 x02,0 x01;unsigned char i;while(1)for(i=0;i8;i+)P2=di;del
17、ay(DELAY_1S); while内嵌if语句void main()unsigned char d8=0 x80,0 x40,0 x20,0 x10,0 x08,0 x04,0 x02,0 x01;unsigned char i;i=0;while(1)P2=di;delay(DELAY_1S);i+;if(i=8)i=0;问题:1、程序中数组d与变量i为什么要用unsigned char类型定义?2、左右程序执行一次while循环各用多少时间?采用哪种方式更好?为什么?3、若要改变循环移动方向,程序应如何修改?端口输出控制-字节操作方式 循环左移改为循环右移void main()unsi
18、gned char d8=0 x80,0 x40,0 x20,0 x10,0 x08,0 x04,0 x02,0 x01;unsigned char i;i=0; /i=7;while(1)P2=di;delay(DELAY_1S);i+;/i-;if(i=8) /if(i=-1)i=0; /i=7 观察Proteus仿真效果void main()unsigned char d8=0 x80,0 x40,0 x20,0 x10,0 x08,0 x04,0 x02,0 x01;char i;i=7;while(1)P2=di;delay(DELAY_1S);i-;if(i=-1)i=7;问题原因:1、unsigned char i; i是不可能为负的,因此应修改为char i;端口输出控制-位操作方式 注意sbit定义位必须在源程序的上方必须在函数外 该程序的最终执行效果如何? 显然本例用字节方式输出更方便端口输入检测-字节操作方式void main()while(1)if(P1&0 x01=0)/S0按下/循环左移else if(P1&0 x02=0) /S1按下/循环右移8051输入S0(P1.0)S1(P1.1)有效电平:低电平,即只要判断P1.0、P1.1是否为低电平即可 字节输入方式判断存在的问题:关系运算符(=) 比 位与运算符(&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版打磨协议合同
- 2024版拆房工程承包合同
- 二零二五年度房地产预告抵押权转让合同3篇
- 二零二五年度测绘数据保密传输安全合同3篇
- 2024版大型酒店店面租赁合同(品牌联营版)3篇
- 2024版环保工程承包合同
- 研发助理工作总结
- 二零二五年度清洁卫生简易劳务合同范本2篇
- 2025版居民生活用水合同履行监督协议书3篇
- 二零二五年度石墨矿场股权转让与新材料研发合同3篇
- DB11-T 493.3-2022道路交通管理设施设置规范 第3部分:道路交通信号灯
- 供热企业安全风险隐患辨识清单
- HRB500级钢筋施工要点ppt课件
- 中医内科学----泄泻精品课件
- 大数据平台及风险预警系统采购项目需求说明书天津滨海农村商业银行【模板】
- 清华抬头信纸
- 八年级心理健康教育《自控力——成功的标尺》课件
- 施工现场节电方法
- 水利工程安全生产组织机构
- 广东省佛山市南海区人民法院
- 我县教育发展面临的问题及对策建议
评论
0/150
提交评论