- 6
- 0
- 约1.76万字
- 约 32页
- 2016-08-02 发布于湖北
- 举报
目录概述单片机最小系统及编译、下载软件的使用2.1.1单片机最小系统2.1.2编译软件2.2.1下载软件Progisp的使用熟悉ATmega16的片上资源3.1.1会看芯片数据手册的重要性3.1.2中断3.1.3定时器/计数器的基本结构及工作原理3.1.4 PWM3.2外部中断3.3 USART3.4.1 A/D转换模块3.5 EEPROMATmega16实际应用4.1 外接按键4.2 驱动数码管4.3 液晶显示屏12864的使用4.4 基于DS18B20的温度测量4.5基于PWM的直流电机调速4.6步进电机的使用4.7舵机的使用4.8超声波测距及其应用倒车雷达4.9基于JZ863的无线串口通信4.10单片机与计算机间的通信第二章单片机最小系统及编译、下载软件的使用2.1.1单片机最小系统能让单片机工作的有最基本元器件构成的系统称为单片机最小系统。单片机最小系统通常包括:电源(+5V)复位电路:启动后让单片机从初始状态执行程序振荡电路:单片机是一种时序电路,必须施加脉冲信号才能工作。Mega16内部有RC震荡电路但相比外部的晶体震荡电路还是不够准确,另外它也可以使用外部晶振工作,两者之间的切换通过熔丝位(以后会讲)来选择在其内部有一个时钟产生电路只要接上两个电容和一个晶振即可正常工作。。。。。。。ATmega16 单片机最小系统的硬件电路图如下:如图所示为ATmega16最小系统电路图,图中标有相同代号的引脚表示连接在一起。图中ISP和JTAG为ATmega16的两种下载方式各自的引脚接口,ISP用于在线下载程序比较方便快捷,所用下载软件为progisp;JTAG是在线仿真接口通过仿真器连接单片机进行程序的下载和仿真,所用软件为AVR Studio ;通常我门使用ISP下载就已经足够了,并且方便快捷很稳定好用,下载器也便宜;JTAG在需要仿真的时候用,它可以看见单片机各个引脚的输出值和输入值等,但JTAG实际定使用中不稳定有时候很容易出错电脑不识别下不进去程序等问题,个人偏好使用ISP.说明:此最小系统电路图中只画出了最简单的应用电路——流水灯,和最基本的能让单片机正常工作的外围电路及下载程序所必须的ISP和JTAG接口,如果你想焊一个电路板出来自己使用,其他的外围电路可以在日后使用当中自己再往上焊。2.1.2编译软件AVR单片机的编译软件有GCC AVR和ICC AVR等,通常使用较多的是ICC AVR,也比较好用,本书以ICC AVR6.31版本为例介绍编译软件的使用。编译步骤如下:新建一个工程启动ICC AVR,界面如图2-1-1所示。然后新建一个项目,选择Project项再选则New菜单项,则打开界面如图2-1-2所示。图2-1-1 ICCAVR主界面图2-1-2注:新安装的软件由于为建立过工程和文件界面与图2-1-1中所示不完全相同为了自己使用方便在保存工程时最好单独新建一个文件夹。接下来”文件名(N):”文本框中输入项目名称,保存为.prj格式。本书中此处保存为ATmega16.然后点击如图2-1-1中的File选项再选择New,界面此时会变为如图2-1-3所示2.新建一个C程序图2-1-3此时编写一个最简单的和前面最小系统版配套的C程序,如图2-1-4所示,程序如下/////////////////////////////////////////////////////////////////// AVR ATmega16 流水灯C程序//// 环境:ICC AVR 6.31 //// 日期:2011/09/14 //////////////////////////////////////////////////////////////////#include iom16v.h//包含单片机型号头文件#include macros.h //包含位操作头文件void delay(void) //自定义延时函数{ unsigned char i,j; for(i=0;i255;i++) for(j=0;j10;j++) ;}void cpu_init(void) //单片机初始化函数{ PORTA = 0x00; //PA口输出值都定义为0 DDRA = 0x00; //PA口输出允许关 PORTB = 0x00; //PB口输出值都定义为0 DDRB = 0x00; //PB口输出允许关 PORTC = 0x00;
原创力文档

文档评论(0)