电子设计大赛培训系列---C语言和单片机

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

汽车学院电子设计大赛培训系列之二1/23电子设计大赛系列培训------单片机和C语言(1)汽车学院电子设计大赛培训系列之二2/23第1讲单片机入门本章主要内容:1、学单片机需要什么基础2、什么是单片机、单片机能做什么、怎么开始学习单片机。3、学单片机需要的一些预备知识4、51单片机基础知识。5、如何用单片机学习板在短时间内掌握51单片机和C语言编程。6、KEIL工程建立详细介绍及KEIL软件使用方法7、从控制实验板上的一个发光二极管开始判断输入,控制输出汽车学院电子设计大赛培训系列之二3/231、与以前所学的知识关联很少;2、只需要掌握很基本的数电模电知识,如二进制、十进制、十六进制之间的转换,与、或、非逻辑关系等;3、对各种器件的概念基本上是从0开始;4、如果要用C语言编程,需具备简单的C语言基础;一、学单片机需要什么基础?汽车学院电子设计大赛培训系列之二4/23什么是单片机?◆单片机在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。Intel公司推出了MCS-51系列单片机:集成8位CPU、4K字节ROM、128字节RAM、4个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64K,并有控制功能较强的布尔处理器。二、什么是单片机、单片机能做什么、怎么开始学习单片机。汽车学院电子设计大赛培训系列之二5/23单片机能做什么凡是与控制或简单计算有关的电子设备都可以用单片机来实现,再根据具体实际情况选择不同性能的单片机,如:atmel,stc,pic,avr,凌阳,arm等汽车学院电子设计大赛培训系列之二6/23怎么开始学习?1、实践第一。2、补充必要的理论知识,即缺什么补什么。3、做实际小制作积累经验,比如调试、编程。(可在网络上搜集题目,也可自己有什么想法大胆的去试验)汽车学院电子设计大赛培训系列之二7/23三、预备知识1、电平特性2、2进制与16进制的表示及转换3、二进制数的逻辑运算4、8051单片机介绍5、C51基础知识汽车学院电子设计大赛培训系列之二8/231、关于电平特性(1)数字电路中只有两种电平:高和低(2)(本课程中)定义单片机为TTL电平:高+5V低0V(3)RS232电平:计算机的串口高-12V低+12V所以计算机与单片机之间通讯时需要加电平转换芯片max232。汽车学院电子设计大赛培训系列之二9/232、二进制数字电路中的两种电平特性006110117111210810003119100141001010105101111011汽车学院电子设计大赛培训系列之二10/23十六进制(1)十进制中的0-15分别表示为十六进制的0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F(2)熟练掌握二进制与十六进制之间的转换。规律:一般把四个二进制数放在一起转换成一个十六进制数,转换后直接组合在一起即可。汽车学院电子设计大赛培训系列之二11/23如:0001B-1-1H(汇编),0x1(C语言)B表示为二进制,H为十六进制1001B-9H,0x91010B-AH,0xa00101100-2CH,0x2c汽车学院电子设计大赛培训系列之二12/23各种进位制的对应关系十进制二进制十六进制十进制二进制十六进制000910019111101010A2102111011B3113121100C41004131101D51015141110E61106151111F71117161000010810008汽车学院电子设计大赛培训系列之二13/233、二进制数的逻辑运算(1)“与”“与”运算是实现“必须都有,否则就没有”这种逻辑关系的一种运算。运算符为“·”,其运算规则如下:0·0=0,0·1=1·0=0,1·1=1汽车学院电子设计大赛培训系列之二14/23(2)“或”“或”运算是实现“只要其中之一有,就有”这种逻辑关系的一种运算,其运算符为“+”。“或”运算规则如下:0+0=0,0+1=1+0=1,1+1=1汽车学院电子设计大赛培训系列之二15/23(3)“非”“非”运算是实现“求反”这种逻辑的一种运算,如变量A的“非”运算记作。其运算规则如下:A10,01汽车学院电子设计大赛培训系列之二16/23(4)“异或”“异或”运算是实现“必须不同,否则就没有”这种逻辑的一种运算,运算符为“”。其运算规则是:011,101,110,000汽车学院电子设计大赛培训系列之二17/23四、80C51系列介绍﹡Intel的:80C31、80C51、87C51,80C32、80C52、87C52等;﹡ATMEL的:89C51、89C52、89C2051等;﹡Philips、华邦、Dallas、STC等公司的许多产品。80C51是MCS-51系列中的一个典型品种;其它厂商以8051为基核开发出的CMOS工艺单片机产品统称为80C51系列。当前常用的80C51系列单片机主要产品有:汽车学院电子设计大赛培训系列之二18/2380C51的引脚封装123456789101112131415161718192040393837363534333231302928272625242322211234567891020191817161514131211P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDP3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDXTAL2XTAL1VSSVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0RSTP3.0/RXDP3.1/TXDXTAL2XTAL1P3.2/INT0P3.3/INT1P3.4/T0P3.5/T1GNDVCCP1.7P1.6P1.5P1.4P1.3P1.2P1.1/AIN1P1.0/AIN0P3.7注:类似的还有Philips公司的87LPC64,20引脚8XC748/750/(751),24引脚8X749(752),28引脚8XC754,28引脚等等80C51/89C5189C2051总线型非总线型汽车学院电子设计大赛培训系列之二19/23汽车学院电子设计大赛培训系列之二20/23总线(BUS)是计算机各部件之间传送信息的公共通道。微机中有内部总线和外部总线两类。内部总线是CPU内部之间的连线。外部总线是指CPU与其它部件之间的连线。外部总线有三种:数据总线DB(DataBus),地址总线AB(AddressBus)和控制总线CB(ControlBus)。汽车学院电子设计大赛培训系列之二21/23CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;ROM:用以存放程序、一些原始数据和表格;I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;T/C:两个定时/计数器,既可以工作在定时模式,也可以工作在计数模式;汽车学院电子设计大赛培训系列之二22/23五个中断源的中断控制系统;一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率取决于单片机型号及性能。汽车学院电子设计大赛培训系列之二23/23五、C51知识C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。目前,使用C语言进行程序设计已经成为软件开发的一个主流。汽车学院电子设计大赛培训系列之二24/23C-51的数据类型基本数据类型类型符号关键字数的表示范围所占位数整型字符型实型有无(signed)int16-32768~32767(signed)short16-32768~32767(signed)long32-2147483648~214748364716unsignedint0~65535320~4294967295unsignedlongintunsignedshortint160~65535有float323.4e-38~3.4e38有double641.7e-308~1.7e308有char8-128~127无unsignedchar80~255汽车学院电子设计大赛培训系列之二25/23C语言中的基本数据类型类型符号关键字数的表示范围所占位数整型字符型实型有无(signed)int16-32768~32767(signed)short16-32768~32767(signed)long32-2147483648~214748364716unsignedint0~65535320~4294967295unsignedlongintunsignedshortint160~65535有float323.4e-38~3.4e38有double641.7e-308~1.7e308有char8-128~127无unsignedchar80~255汽车学院电子设计大赛培训系列之二26/23C-51的数据类型扩充定义sfr:特殊功能寄存器声明sfr16:sfr的16位数据声明sbit:特殊功能位声明bit:位变量声明例:sfrSCON=0X98;sfr16T2=0xCC;sbitOV=PSW^2;汽车学院电子设计大赛培训系列之二27/23例:数据类型变量名charvar1;bitflags;unsignedcharvextor[10];intwwww;注意:变量名不能用C语言中的关键字表示。C-51数据的存储类型汽车学院电子设计大赛培训系列之二28/23C-51的头文件通常有:reg51.hreg52.hmath.hctype.hstdio.hstdlib.habsacc.h常用有:reg51.hreg52.h(定义特殊功能寄存器和位寄存器);math.h(定义常用数学运算);信息学院电子设计大赛培训系列之二29与C语言基本相同:+-*/(加减乘除)==(大于大于等于小于小于等于)==!=(等于不等于)&&||!(逻辑与逻辑或逻辑非)(位右移位左移)&|(按位与按位或)^~(按位异或按位取反)C-51的运算符信息学院电子设计大赛培训系列之二30C-51的基本语句与标准C语言基本相同:if选择语句while循环语句for循环语句switch/case多分支选择语句do-while循环语句汽车学院电子设计大赛培训系列之二31/23中断服务程序函数名()interruptnusingm{函数内部实现….}I/O口定义sbitbeep=P2^3;汽车学院电子设计大赛培训系列之二32/23单片机主要掌握以下几点最小系统能够运行起来的必要条件。1.电源2.晶振3.复位电路对单片机任意I/O口的随意操作1.输出控制电平高低2.输出检测电平高低。定时器:重点掌握最常用的方式2中断:外部中断、定时器中断、串口中断串口通信:单片机之间、单片机与计算机间汽车学院电子设计大赛培训系列之二33/23单片机工作的基本时序机器周期和指令周期(1)振荡周期:也称时钟周期,是指为单片机提供时钟脉冲信号的振荡源的周期,TX实验板上为11.0592MHZ。(2)状态周期:每个状态周期为时钟周期的2倍,是振荡周期经二分频后得到的。(3)机器周期:一个机器周期包含6个状态周期S1~S6,也就是12个时钟周期。在一个机器周期内,CPU可以完成一个独立的操作。(4)指令周期:它是指CPU完成一条操作所需的全部时间。每条指令执行时间都是有一个或几个机器周期组成。MCS-51系统中,有单周期指令、双周期指令和四周期指令。汽车学院电子设计大赛培训系列之二34/23Main函数格式:voidmain()特点:无返回值,无参。任何一个C程序有且仅有一个main函数,它是整个程序开始执行的入口。例:voidmain(){总程

1 / 39
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功