版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SoC型单片机原理及应用
课时量和讲义48学时的课程32学时的实验关于讲义和参考资料我们课程的一些特点:1.加强单片机的专业英语(口语)2.C语言的反刍,编程语言:C语言3.放弃汇编语言4.面向实验,面向工程的教学,不最求全面和系统的知识(传统是怎么教的,我是怎么教的?)5.传统的AT89C51仅作为核,学习最新型SoC单片机C8051F3206.注重与ARM的衔接7.加强实验,加强动手能力,以工程师为目标,以进一步的ARM学习为目标.-这样做法的依据:就业形势和我校师生的特点哈佛大学校园我们要做的实验〔暂定〕LED数码管PWM,〔PulseWidthModulation〕,舵机控制UART(RS232串口),TSP〔触摸屏〕字符液晶,16键盘,IC卡,电机正反转控制,电机转速调节中断,ADC(模数转换),USB(中断型,批处理型)通信,1.概述1.1单片机根本概念,开展,MCS-51MCU(MicroControllerUnit)-单片机单片机在嵌入式系统中的地位MCU8-bitARM32-bitASM,CASM,C/C++,OS什么是嵌入式系统?根据IEEE〔国际电气电子工程师协会〕的定义,嵌入式系统是“用于控制,监视或者辅助其它设备,机器和工厂运行的装置”〔devicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants.〕
单片机是不是嵌入式系统?Yes/no?Yes,but它是低端嵌入式系统.MCU-ARM关系1.概述(续)MCS-51系列单片机-Atmel公司的AT89C51(15年历史)-Silabs公司的C8051F320(5年历史)51单片机开展过程8048=>8031=>8051=>8751=>89C51=>89C52=>89CxxxIntel,Atmel,SST,Philips,SiLab,..我们简单学习AT89C51,重点学习C8051F320单片机的今后开展参看讲义第1章“绪论”1.2学习单片机的目的和方法应用性:就业,工程师,工程经理(MCU命还长着)深造的根底:为32位嵌入式系统学习考研:单片机知识为理工本科生必须具备的就业:硬件很“硬”,软硬兼施支持:帮助理解计算机有关知识有关课程:C语言,IT电子技术,及线路板设计,VB6.0,VC++….我们的单片机学习方法从内核到芯片充分应用SoC芯片的功能,补充一些外设通过详细讲解实验程序学习芯片的sfr同学的实验要求在样板的根底上,自己局部编程1.3开发工具,环境,开发过程-硬件:Protel99,原理图,PCB〔马慧敏老师〕-编程:工程的建立,C51编程,编译,链接,下载,在线调试C51编译器(uKeil),IDE,EC5+JTAG+目标板-文件:xx.wsp:工程,xx.asm:汇编程序,xx.c,xx.lst,xx.obj,xx.hex,xx.bin-工程开发流程可行性分析=>立项=>需求分析=>硬件方案(框图)和设计(原理图,PCB图)=>制板=>软件方案(流程框图)=>编程=>调试=>定型=>性能测试=>文档
-学习内容:单片机结构,C51编程,十几个实验〔马慧敏老师〕
EC5-JTAG-Kit(Kit-EH200)连接PCUSBEC5适配器JTAGKit(开发机)5VDCEH200AboutJTAGJTAG:JointTestActionGroup〔联合测试行动组织〕JTAG于1990年被IEEE批准为IEEE1149.1-1990.JTAG是一种国际标准测试协议〔IEEE1149.1兼容〕,主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP、FPGA,ARM器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。U-EC5+Kit-EH200IDE界面
(IntegratedDevelopmentEnvironment)1.4单片机的实际应用1.工控(IndustrialControl):数据采集(DataAcquisition),数控(NumericalControl),….2.仪器&仪表(Apparatus&Instruments)3.家电(HouseholdItems)4.PC外设(PeripheralsofPC)5.商用设备(CommercialApparatus)6.下位机〔Host->Slave〕7.军事2传统型单片机AT89C51很老的型号:8031,8051,8751,80C31,80C51,87C51,(/52)2.151系列单片机简介老型号:AT89C51,AT89C52,AT89C2051现代型号:C8051F320,C8051F340,
2.2.151单片机的内部结构内部结构(BlockDiagram)1.2.1结构框图(AT89C51)CPU(CentralProcessingUnit)CPU到底包含哪些模块(module)?ALU+指令存放器IR+指令译码器+DPTR+PC+SP=CPUArithmeticLogicUnit+InstructionRegister+DataPointer+ProgramCounter+StackPointer2.1.2AT89C51的引脚
(PinAssignments)三-2hC8051F320引脚引脚说明(PinDefinitions)AT89C51有多种封装形式,最常使用的封装形式是双列直插(DIP:DualIn-linePackage)40引脚形式。PinNumber逆时针。电源引脚Vcc,GND(20,40):Vcc是供电电压,GND为地线。供电电压为5伏,变化范围允许为2.7V~6V。5V工作电压下正常工作电流约为20mA,休眠方式维持电流为5mA,掉电方式维持电流〔电压为3V时〕为40μA。振荡器引脚XTAL1,XTAL2〔19,18〕:芯片工作需要时钟脉冲。AT89C51单片机的时钟振荡有两种接法。一种为外接振荡器信号输入,一种为外接石英晶体和电容。石英晶体振荡线路用得较多。AT89C51允许的最高时钟频率为24MHz,最低允许时钟频率为4MHz。石英晶体可用4MHz~24MHz,电容C1,C2可用20Pf的电容。时钟脉冲周期在单片机内部组成机器周期,每12个时钟脉冲形成一个机器周期。机器周期是单片机的根本计时单位。如果使用12MHz晶体的时钟脉冲,那么单片机的机器周期为1μs。复位引脚RST〔9〕:复位引脚能使单片机系统复位。所谓复位就是使程序从第一句开始执行。如何通过复位引脚使系统复位?只要使RST引脚为高电位并保持2个机器周期以上。平时正常工作时,复位引脚RST应处于低电位。何时需要复位?接通电源一瞬间,希望程序从头开始执行,这个复位称为上电复位。在单片机上电一瞬间电容C1有一个充电过程,瞬间电容对RST引脚仿佛是通路,RST引脚得到高电位,系统复位。电容充电后C1对RST引脚仿佛是断路,RST引脚通过R1电阻接地,使RST为低电位,系统能正常工作。当单片机程序处于混乱状态或死机,需要人工复位,可采用图b〕线路。按键K接通时使RST接高电位,系统复位。为保证单片机系统不死机,很多情况下外接看门狗线路。在系统死机时,系统不能定时地给看门狗线路一个响应信号,看门狗经过一段小延时后会给复位引脚RST发一个高电位信号,使系统从头开始执行程序,从死机状态中跳出来。
地址锁存/编程引脚ALE/PROG〔30〕:在正常工作时ALE引脚输出稳定的正脉冲,用于在访问外部程序存储器时锁存地址的。ALE输出的脉冲频率为时钟的1/6。由于AT89C51程序存储器在芯片内部,ALE一般不用于它本来的用途,只是作为一个振荡器供外部线路使用。这个引脚另一个用途是在给芯片下载程序〔编程〕时,用于输入编程脉冲。外部程序存储器选通引脚PSEN〔29〕:芯片在访问外部程序时PSEN引脚会发出外部存储器芯片的选通信号〔低电位〕。在从外部存储器取程序指令时,每个机器周期PSEN信号出现两次。访问外部数据存储器时PSEN信号不出现。如果AT89C51使用内部程序存储器,所以PSEN引脚已失去其原有的用途。外部访问允许引脚EA/VPP〔31〕:当EA引脚接地时AT89C51只能访问外部程序存储器,内部程序存储器被隔离了。所以正常运行时EA引脚应接高电位,一般串接一个几KΩ电阻接到电源正极。在给芯片编程时,EA引脚要接编程电压12V。I/O口P0〔39~32〕:P0口是8位漏极开路(OpenDrain)双向I/O口。作为输出口,输出数据为0时它的驱动能力可吸收8个TTL门电路的电流。由于是漏极开路作为输出口输出1时实际P0口的引脚为高阻态〔相当于与内部断开状态〕。这时应在P0口外部加上拉电阻,信号1由上拉电阻提供,驱动能力也决定于上拉电阻的电阻值。一般由于上拉电阻为几KΩ,所以驱动能力很弱。作为输入引脚时应给P0口内部先写1,使其为高阻态,读P0口的指令会使P0口的引脚直接接到内部总线上,反映了加在P0口引脚上的外部信号的真实值。这一点很重要,如果疏忽了这一点,在P0口上刚输出过0,P0口线与地线接通,再作为输入时,加在引脚上的高电位会被短路掉,内部总线读到的输入是0,发生了一个很难查获的错误。P0口在我们的应用中经常作为外部数据总线口使用,通过指令MOVX读取外部的数据,或将数据输出到外部总线上。在输出数据时,内部控制线路将口线的一个上拉场效应管接通,使具有上拉电阻作用,所以不需外接上拉电阻。在输入数据使仍应先给P0口输一高电位,使其与地线断开。AT89C51也可以外挂程序,此时EA引脚应接地,P0口将输出指令的地址,并读入程序指令。这个过程是硬件自动完成的,软件无法干预,也不需要对P0口写1。当AT89C51编程时,P0口作为代码的输入口。编程后校验时P0作为代码的输出口,此时外部要有上拉电阻。I/O口P1〔1~8〕:P1口是一个带内部上拉电阻的双向I/O口。它能接收或输出4个TTL门电路的电流。P1口的上拉电阻是固定的,〔20KΩ〕,因此作为输出时一般无需外接上拉电阻。其它局部的内部电路两者类似,所以P1口作为输入时也必须事先在P1口写1。输入为0时电流经内部上拉电阻,引脚流经外部电路通地,电流值为50μA。I/O口P2〔21~28〕:P2口是一个带内部上拉电阻的双向I/O口。它的一局部根本结构类同P1口。它也可以接收和输出4个TTL门的电流。内部写1以后使引脚与地线断开,内部上拉电阻起作用,可用作输入引脚,输入0时,电流经过上拉电阻,引脚流经外部电路通地,电流值为50μA。此外P2口的另一个作用是在访问外部程序存储器或用MOVX指令访问外部数据时作为高8位地址的输出。所以P2口除了作I/O口以外,通过MOVX指令也能作为输出。这种输出常作为外部设备选通信号,使得外部设备被选通的同时由MOVX指令直接访问被选通的这个外部设备。P2口在AT89C51芯片编程和校验时作为高8位地址输入口。I/O口P3〔10~17〕:P3口也是带内部上拉电阻的8位双向I/O口。可接收和输出4个TTL门电流。内部写1以后,内部上拉电阻起作用,可用作输入。当输入为0时,电流经内部上拉电阻通过引脚流经外部电路通地。这个输出的电流值为50μA。P3口除了作通用的I/O口以外,它的每一个引脚都还分别可作专门的特殊功能口。
英文阅读:aboutP3P0结构AT89C51最小系统振荡电路复位电路EA脚上拉电源2.1.3存储器配置冯.诺依曼(von.Neumann)结构/哈佛(Harvard)结构?程序存储器(ROM,EROM,EPROM,EEPROM,Flash)数据存储器(RAM)片内存储器(MemoryonChip)AT89C51:EEPROM4kBRAM256BC8051F320:Flash(ROM)16kBRAM256BRAM1kB+1kBFIFO(USB)RAM(Data)和Flash(程序代码)
-AT89C51-最重要的局部RAMFlash00h7Fh80hFFhSFR自由RAM代码0000h0FFFh128Byte128Byte4096Byte(AT89C51)Homework(1)画最小系统自由RAM〔00h–7Fh〕R0–R7的映射:00–1Fh(map:映射的概念〕位寻址的(允许)区域:20–2FhStack(堆栈):全部自由区:00–7Fh课堂提问:Whatis“SFR”?2011.09.02.五-4h特殊功能存放器(SFR)RAM
(80h-FFh)SpecialFunctionRegistersP0,P1,P2,P3,PSW,TCON,SCON,IE,A,B,SP,DPH,DPL,TMOD,TH0,TL0,TH1,TL1,SBUF,PCON,IP,共21字节(51系列)SFR(特殊功能存放器)SFR(特殊功能存放器)2.1.4定时器/计数器T0,T1硬件上有T0,T1(16bit),配置了2套相关存放器C/T:Counter/TimerSFR:TMOD(高4位:C/T1,低4位:C/T0)(89h)(GATEC/TM1M0GATEC/TM1M0)GATE=0(测INTx的脉宽)C/T=0:内部定时器,=1:外部计数器M1M0=00:0模式(弃用),01:1模式(16位),10:2模式(8位自动重装),11:3模式(C/T0:2个独立8位,C/T1:不用,停止记时)对应的TH1,TL1,TH0,TL0注:自动重装,TH1装入TL1中,TH0装入TL0中要强调的一点T0,T1模块的工作和运行是脱离CPU的,一旦运行后就与程序的运行无关了.就好象你的闹钟一样,溢出前它不干预你的正常日程.它是并行工作的.二-6hSFRTCON(88h)(TF1TR1TF0TR0IE1IT1IE0IT0),低4位只与外部中断有关(混合了)TF1:溢出标志(硬件自动置1,如果中断,自动清0)TR1:1:启动,0:停止(软件设置)——————————————————————————IT1:外部中断(INT1)类型设置,1:下降沿,0:低电平IE1:外部中断检测到下降沿自动置1,
进中断后自动复0
TF0,TR0,IE0,IT0同上
注:对于TF1,TF0,IE1,IE0,一般不太关心SFRTH1,TL1,TH0,TL0
(8Dh,8Bh,8Ch,8Ah)TH1,TL1用于C/T1,TH0,TL0用于C/T016位模式(1模式):TH1高字节,TL1低字节8位自动重装(2模式):TH1向TL1充值,初始化:TH1=TL1启动后,TL1以机器周期加1,溢出后进位到高字节(1模式)或中断如果设置成外部计数:计数信号由引脚T1,T0输入(Pin15,Pin14)关于T0模式31)T1没有模式3,T0为模式3时,T1可以为模式0,1,2,但不能使用中断.2)T0模式3:TL0,TH0为2个独立8位计数器,TL0可记数,也可定时.TH0只能定时,TH0的启动用TR1,溢出和中断申请用TF1.3)T1到底能干什么?可以用于波特率发生器,T1的停止将用怪招:将其设置为模式3提问:8位自动重装是什么意思?2.7串行I/O1.关于RXD,TXD引脚的工作方式(51系列):a)工作在“移位”串行通信方式时,RXD为发送和接收.TXD为移位脉冲.低位在前(LSB:littlesignificantbit).8位数据.传送靠移位脉冲,所以频率的精度不重要.半双工(HalfDuplex).同步方式。b)异步通信时,RXD为接收,TXD为发送.LSB,常用8位数据,双方设为相同波特率(BaudRate).全双工(FullDuplex).UART(UniversalAsynchronousReceiver/Transmitter)1.可以满足RS232通信协议的信号时序(与PC兼容)2.无信号时,发送端拉高电平3.常用的波特率:9600,115204.起始位:0,8数据位,1:停止位,SFRSCON(98h)
串行控制存放器
SM0SM1S工作模式通信协议波特率0008位数据同步移位晶振1/12(同步)**0118位数据异步由定时器1溢出率确定**1029位数据异步晶振1/32或1/641139位数据异步由定时器1溢出率确定SM0SM1SM2RENTB8RB8TIRIS工作模式模式0:RXD为发送和接收.TXD为移位脉冲.低位在前(LSB).8位数据.传送靠移位脉冲,频率固定为机器周期.半双工(HalfDuplex).晶体的1/12.模式1:异步通信,RXD为接收,TXD为发送.LSB.全双工(FullDuplex).1位起始+8位数据+1位停止.波特率为T1的溢出率/32(或1/16).模式2:异步通信,RXD为接收,TXD为发送.LSB.全双工.1位起始+8位数据+1位特数据+1位停止.波特率晶体的1/32或1/64.适用多机通信.模式3:异步通信,RXD为接收,TXD为发送.LSB.全双工.1位起始+8位数据+1位特数据+1位停止.波特率为T1的溢出率/32(或1/16).适用多机通信.SCONSM2是接收中断请求的控制位。在模式2和模式3的多机通信中,如果SM2设置成1,接收到的第
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版新教材道德与法治五年级上册第8课《改革开放展宏图》教学设计
- 病房 6S 管理护理质控落地推行
- 2026 年有机磷中毒急诊急救护理课件
- 2026 年内分泌科糖尿病足分级护理实施策略
- 2021 全息位置地图数据内容
- 心外麻醉测试题与答案解析
- 公务员法专项试题及答案解析
- 直男鉴定题目与答案
- 2026年《花卉学》期末考试模拟试题及答案详解
- 2026年保育员正规考试题及答案
- 容县辅警招聘考试题库 (答案+解析)
- 煤矿安全生产标准化管理体系2024版与2026版对比分析报告
- 期末模拟测试卷(试卷)2025-2026学年五年级数学下册人教版(含答案)
- 1.1 动与静 课件(共28张)2026-2027学年沪科版物理八年级全一册
- T∕CAPID 005.4-2023 垃圾焚烧发电工程质量监督检查大纲 第4部分:厂用电系统受电前监督检查
- 中国专家共识降胆固醇策略2026
- 2026四川省现代种业发展集团种芯农业有限公司招聘财务人员(会计岗)1人笔试历年常考点试题专练附带答案详解
- 广西传统医学师承关系合同书模板
- 《化妆品用植物来源原料技术要求通则》
- 交警预警研判工作制度
- 驾驭式课堂培训心得体会
评论
0/150
提交评论