




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、AVR单片机软硬件设计教程(入门篇)全面培训,培训内容:,第一节单片机及其开发工具简介 第二讲 AVR硬件电路设计教程 第三讲AVR开发基础知识 第四讲 C语言的流水灯验证 第五讲按键与数码管的程序设计,培训内容:,第六讲中断与定时器 第七讲异步串行口UART 第八讲SPI串行口与DS1302 第九讲IIC(TWI)接口与AT24C02,培训内容:,第十讲ATmega16的ADC 第十一讲液晶显示模块的使用 第十二讲项目实例:多功能电子钟,AVR单片机软硬件设计教程-入门篇第一节单片机及其开发工具简介,第一讲单片机及其开发工具简介,培训内容: 单片机发展史 单片机是什么 单片机能做什么 单片机
2、开发工具 AVR单片机简介:学单片机就要学AVR! 新手入门的第一个例子:闪烁灯,单片机发展史,1971年intel公司研制出世界上第一个4位的微处理器;Intel公司的霍夫研制成功世界上第一块4位微处理器芯片Intel 4004,标志着第一代微处理器问世,微处理器和微机时代从此开始。因发明微处理器,霍夫被英国经济学家杂志列为“二战以来最有影响力的7位科学家”之一 。 1971年11月,Intel推出MCS-4微型计算机系统(包括4001 ROM芯片、4002 RAM芯片、4003移位寄存器芯片和4004微处理器 )其中4004(下图)包含2300个晶体管,尺寸规格为3mm4mm,计算性能远远
3、超过当年的ENIAC,最初售价为200美元。 1972年4月,霍夫等人开发出第一个8位微处理器Intel 8008。由于8008采用的是P沟道MOS微处理器,因此仍属第一代微处理器。,单片机发展史,1973年intel公司研制出8位的微处理器8080;1973年8月,霍夫等人研制出8位微处理器Intel 8080,以N沟道MOS电路取代了P沟道,第二代微处理器就此诞生。 主频2MHz的8080芯片运算速度比8008快10倍,可存取64KB存储器,使用了基于6微米技术的6000个晶体管,处理速度为0.64MIPS(Million Instructions Per Second )。 1975年4
4、月,MITS发布第一个通用型Altair 8800,售价375美元,带有1KB存储器。这是世界上第一台微型计算机。,单片机发展史,1976年intel公司研制出MCS-48系列8位的单片机,这也是单片机的问世。 Zilog公司于1976年开发的Z80微处理器,广泛用于微型计算机和工业自动控制设备。当时,Zilog、Motorola和Intel在微处理器领域三足鼎立。 20世纪80年代初,Intel公司在MCS-48系列单片机的基础上,推出了MCS-51系列8位高档单片机。MCS-51系列单片机无论是片内RAM容量,I/O口功能,系统扩展方面都有了很大的提高。,单片机是什么,单片机是一种集成在电
5、路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。,构成单片机的基本要素:,CPU核 ROM RAM 片上外设 总线,CPU核,相当于电脑的CPU,执行从ROM中取出指令 性能指标: 主频:CPU时钟的频率,类似于电脑的主频。 指令集:复杂指令集CISC与精简指令集RISC,后者比前者执行效率高很多。 字长:一次处理的二进制数据位数。,ROM(只读存储器),目标代码存储器,
6、相当于硬盘,用于存储运行在单片机上的程序代码 目前大多数单片机为Flash结构 基本性能指标:容量,单位一般为KB(千字节) 高级的指标:自编程能力,RAM(随机存储器),数据存储器,相当于内存,ROM中的程序在运行时快速的存取数据 目前大多数单片机为SRAM结构 性能指标:容量,单位一般为B(字节)或KB(千字节),片上外设,相当于电脑的键盘鼠标接口、显示器接口等 常见的片上外设模块有外部中断、定时/计数器、UART、SPI、IIC、ADC、模拟比较器等,总线,用于在以上四部分之间传输数据的通道,相当于硬盘IDE线、光驱线等,单片机能做什么,单片机无所不能! 所谓“微电脑控制”场合的核心就是
7、单片机 涵盖工业生产、日常生活、军事设备、科研仪表仪器等所有智能化应用场合,智能洗衣机,定时完成洗衣、脱水等功能 可以判断衣服的干净程度,实现“洗净即停”的功能 蒸汽熨烫的功能 刷卡、投币洗衣 更加智能:LG公司的“iPod洗衣机”一边洗衣一边听歌,LED显示屏,LED发光二极管构成显示屏的像素点 单片机负责逐点或逐行扫描,并与电脑通信获取图片信息,PH/ORP仪表,用于环境监测、工矿企业、科学研究、水产养殖场等场合的pH值的测定 读取pH传感器的模拟信号,内部处理后显示在LCD上,各种数码产品,智能小车,巡线 避障 电视机遥控器遥控 LCD显示,单片机的开发工具,编程器(烧写器):将编译出来
8、的目标代码固化到单片机的ROM内 下载线:作用与编程器相同,但可以在线下载 仿真器:对单片机的程序进行单步调试、设置断点等,便于查找程序中的错误。其中Jtag仿真器可以在线仿真调试。,AVR单片机简介,AVR的性价比远高于51: 高速、RISC:主频最高达20MHz 低功耗,宽电压:1.8V5.5V,最低全速运行功耗300uA IO口驱动能力强:推拉电流能力均达30mA,可以直接驱动蜂鸣器、继电器等 片内资源丰富:外部中断、定时/计数器、UART、SPI、IIC、ADC、模拟比较器 型号齐全,而且40脚以下的AVR均具有DIP的封装形式,精彩的AVR世界,8脚系列:ATtiny13、25、45
9、、85; 14脚系列:ATtiny24 20脚系列:AtTiny26,2313 ; 28脚系列:ATmega8,48,88,168 ; 32脚系列:AT90PWM3 ; 40脚系列:ATmega16,32,162,163,169,8515,8535 ; 以上几个系列均有DIP双列直插封装 64脚系列:ATmega64,128 ; 100脚系列:ATmega1280,2560 ;,精彩的AVR世界,AVR单片机的开发工具,软件开发环境 编辑与编译软件:WinAVR 仿真调试软件: AVR Studio 下载软件:MuCodeISP 硬件开发环境 仿真调试工具:JtagICE 下载线工具:STK2
10、00/300 学习板一块: LT-Mini-M16 技术手册 AVR官方中文版技术手册 AVR 单片机与GCC 编程,从零开始学习AVR:学单片机就要学AVR!,选择AVR作为单片机入门的几点理由: 最小系统设计容易:只需要连接电源、焊接晶振就可以工作 很多概念初学者理解起来更容易:例如AVR的时钟源(晶振、内部RC等)不经过分频直接提供给CPU使用,而51的CPU主频等于晶振的12分频 AVR既具有简单的、可以自制的ISP下载线和Jtag仿真器,又有DIP直插的封装形式 AVR的C语言编程与C语言教科书上学习的标准C语言语法是几乎一样的,不像51的C语言,一些bit、srf之类的变量定义在教
11、科书中是找不到的,有利于后续嵌入式系统的学习,新手入门入门第一个例子闪烁的灯,请观看视频演示,新手入门入门第一个例子闪烁的灯,例程源代码 #include int main(void) int i = 0,j = 0; DDRD = 0 xff; while(1) PORTD = 0b11100110; for(j = 0;j 10;j +) for(i = 0;i 10000;i +); PORTD = 0b00011001; for(j = 0;j 10;j +) for(i = 0;i 10000;i +); ,AVR单片机软硬件设计教程-入门篇第二讲 AVR硬件电路设计教程,培训内容:
12、,ATmega16简介 构建ATmega16最小系统 构建LT-Mini-M16学习板 单片机常用外围器件简介 PCB技术与Protel Altium Designer 6简介 实战:用AD6.7设计AVR学习板,ATmega16简介,高速(16MHz)、RISC AVR内核 1KB SRAM,16KB Flash ROM 512字节EEPROM,方便数据存储 4个8位并行IO口,驱动能力强 具有Jtag仿真接口与ISP下载接口 低功耗、宽电压(2.7V5.5V) 丰富的片上外设:3个外部中断,3个定时器,USART,SPI,IIC,ADC 片内上电复位电路 片内RC振荡器,可以省去外部晶振,
13、构建最小系统,电源: 数字电源VCC:任何场合必选 模拟电源AVCC:使用片上ADC或模拟比较器时必选 晶振:对时钟要求严格的场合,如使用USART时必选 复位按键:需要手动复位时必选 ISP下载线接口:需要进行ISP下载时必选 Jtag仿真器接口:需要进行Jtag仿真调试时必选,ISP下载线,构建最小系统全功能的最小系统,Jtag仿真器,电源座,晶振与 稳频电容,数字电源,数字地,模拟电源,模拟地,参考电压源 退偶电容,ATmega16 单片机,构建最小系统Mega16最小系统1,此最小系统适合于对时钟要求不严格,不使用片上ADC与模拟比较器而且不需要ISP下载与Jtag仿真的场合。只需要接
14、通电源,构建最小系统Mega16最小系统2,此最小系统适合于对时钟要求不严格,不使用片上ADC与模拟比较器,需要ISP下载但不需要Jtag仿真的场合。,构建最小系统Mega16最小系统3,此最小系统适合于对时钟要求不严格,不使用片上ADC与模拟比较器,需要ISP下载与Jtag仿真的场合。,构建LT-Mini-M16学习板,初学者应该学习的内容 IO口输出操作:流水灯,蜂鸣器,数码管 IO口输入操作:普通按键,4X4矩阵键盘 外部中断:按键触发中断 定时器溢出功能的操作:闪烁灯 初学者进阶内容 USART:与PC机通讯 SPI:时钟芯片DS1302 ADC:电位器调整电压,单次采样 IIC:EE
15、PROM芯片AT24C02 LCD1602,LCD12864:相当于普通IO口的输出操作,单片机常用外围器件简介学习板元件逐个数,40脚IC座 排针 电阻 电容 排阻 电位器 晶振 按键 电源开关 BD9串口座,LED发光二极管 4位数码管 蜂鸣器 稳压芯片ASM1117-3.3 MAX232 DS1302 DS18B20 AT24C02,PCB技术与Protel简介,PCB是印刷电路板(Printed Circuit Board )的缩写,顾名思义,就是把导线印刷在板子上。 覆铜板印刷感光胶曝光钻孔化学腐蚀金属化过孔喷绝缘漆印刷丝印层切割 Protel软件是最流行的PCB设计软件,可以在电脑
16、上完成PCB的设计,然后送到PCB加工厂出板。 常用版本:Protel99SE,Protel DXP 2004,Altium Designer 6(AD6) AD6是最新版本,风格与Protel DXP 2004区别不大。本教程采用AD6环境进行演示。,实战:用AD6.7设计AVR学习板,Protel设计PCB步骤如下: 1.绘制元件的PCB封装库(.pcblib) 2.绘制元件的原理图库(.schlib) 3.绘制原理图(.schdoc) 4.将原理图导入PCB文件(.pcbdoc) 5.元件布局 6.布线 7.敷铜,AVR单片机软硬件设计教程-入门篇第三讲AVR开发基础知识,第三讲AVR开
17、发基础知识,本讲内容: AVR开发工具简介及开发环境的建立 计算机原理基础知识讲解 C语言基础知识讲解,AVR开发工具简介,软件开发工具 编译环境:WinAVR 下载软件:MuCodeISP 仿真环境:AVR Studio 集成环境:AVR Studio,可以内联WinAVR成为一个具有编译、仿真、下载功能的集成环境 硬件开发工具: 下载线 仿真器 学习板(或手工焊接的系统板) 工具手册: WinAVR技术手册 ATmega16官方中文版技术手册,WinAVR,Linux系统的GCC工具链在Windows环境的移植 请观看安装与使用过程,下载软件MuCodeISP下载线,下载线的作用: 修改熔
18、丝位 向单片机Flash中下载程序代码 下载软件MuCodeISP 下载软件有很多,但推荐初学者使用MuCodeISP,优点是熔丝位设置很清晰,不至于设错而锁死芯片 下载线有很多种,最常用的是插在计算机并口上的STK200/300 可以使用力天电子出品的STK200/300下载线 请观看使用方法,AVR Studio仿真器JtagICE,AVR Studio是Atmel公司官方的汇编、下载与仿真软件可以内联WinAVR获得C语言编译能力 JtagICE是Atmel公司官方的仿真调试器,但已经被仿制,价格比官方版本要便宜十倍 可以使用力天电子出品的JtagICE 请观看安装过程与使用方法,计算机
19、原理基础知识,数制 存储器:RAM与ROM CPU,数制,数制就是一位数字能够表示的数的数量,N进制数的进位规则是“冯N进1” 常用的数制有十进制、二进制、十六进制 人类有十个指头,所以习惯采用十进制 计算机只能识别0和1,采用二进制 为了计算机学中的数据书写方便,采用十六进制 位与字节的概念: 位(bit):简写为b,表示二进制数的一位。 字节(Byte):简写为B,8位为一字节。 数制转换工具:Windows自带的计算器,三种数制的转换表,十进制: 冯十进一 二进制: 冯二进一 十六进制: 冯十六进一,位和字节,1Byte=8bit 1字节=2位十六进制数 例: 0 x55 = 0b010
20、10101 = 85 0 xA3 = 0b10100011 = 163,存储器:RAM与ROM,对于8位单片机,其内部存储器均为8位。 RAM与ROM的模型,CPU,CPU即为中央处理器 取指令-执行,C语言基础知识讲解,变量 运算符 语句 函数 顺序语句 选择语句 循环语句 数组和指针,变量、运算符、语句,变量:变量就是存储于RAM或ROM中的数据 变量的分类: 单片机中比较常用的是字符型(char)和整型(int) 实型(float)变量在单片机C语言中一般用不到 运算符:类似于数学运算中的运算符号 语句:C语言中以分号作为一条语句的结束 习惯上每条语句单独占用一行,但也可以每行有多条语句
21、,用分号隔开即可,字符型变量,占用存储器中的1个字节空间,即8位二进制数 取值范围:0(28-1)即 0255 可以赋值为整数或ASCII码 char zifu = 97; char zifu = a; 举例: 请观看演示,整型变量,占用存储器中的2个字节,即16位二进制数 有无符号子类型: unsigned int:无符号整型。 取值范围 0(216-1)即 065535 signed int:有符号整型,signed可以省略. 取值范围-215(215-1)即-3276832767 举例: 请观看演示,长整型,取值范围更大的int子类型: long int:长整形,长度为32位,即4个字节
22、 long long int:长度为64位,即8个字节 举例: 请观看演示,常用的运算符,赋值= 加+ 减 乘* 除/ 括号() 求余% 与 DDRB |= (1 5);/第五位设为输出 第二步:对应位输出数据 输出1: PORTB |= (1 5);/第五位输出高电平 输出0: PORTB /第五位取反,AVR单片机软硬件设计教程-入门篇第五讲按键与数码管的程序设计,本讲内容:,AVR IO口的输入模式与上拉电阻 选择结构语句与按键的查询方式程序设计 数码管基本原理 扫描方式显示多位数码管,输入状态IO寄存器设置,输入状态IO寄存器设置 DDRx某一位置0,相应位的IO口被设置为输入 POR
23、Tx某一位置1,使能对应IO口相应位的上拉电阻 PINx的对应位是输入的数据,0或1,选择结构语句,关系运算符和关系表达式 小于大于或等于=等于=不等于!= 逻辑运算符和逻辑表达式 逻辑与 下降沿触发:MCUCR |= (1 ISC10)|(1 ISC11); 上升沿触发:MCUCR |= (1 ISC11); 第3步:使能响应相应外部中断 GICR |= (1 INT0); 第4步:使能全局中断 sei(); 第5步:编写中断服务程序 SIGNAL(SIG_INTERRUPT0),定时器的概念,8位定时/计数器的模型 1个8位长度计数寄存器,可以对其进行读写 1个时钟输入端口,计数寄存器对时
24、钟输入端口的时钟脉冲个数进行加1计数,即每来一个时钟脉冲,寄存器的数值自加1 如何实现精确定时? 给计数寄存器设定初值n0 给时钟输入端口输入一个频率精确的方波方波周期为t0 计数器计数到256时定时器溢出,时间间隔为: T = (256 n0) t0 定时器溢出时可以产生中断,定时器溢出方式的应用,M16的定时器0 8位定时器 具有PWM功能 定时器0相关寄存器 T/C 控制寄存器 TCCR0 设置时钟源频率 T/C 寄存器 TCNT0 计数寄存器 T/C 中断屏蔽寄存器 TIMSK 需要使用溢出中断时 T/C 中断标志寄存器 TIFR 查询是否溢出,定时器0溢出方式查询模式使用步骤,第1步
25、:设置TC寄存器初值 TCNT0 = 55; 第2步:开启时钟,同时TC0启动 TCCR0 |= (1 CS01); 第3步:查询TIFR寄存器的TOV0位 while(!(TIFR ,定时器0溢出方式中断模式使用步骤,第1步:包含中断函数头文件 #include 第2步:设置TC寄存器初值 TCNT0 = 55; 第3步:使能TC0溢出中断 TIMSK |= (1 TOIE0); 第4步:编写TC0溢出中断服务程序 SIGNAL(SIG_SIG_OVERFLOW0) /此处添加中断服务程序代码 第5步:开启时钟,同时TC0启动 TCCR0 |= (1 CS01); 第6步:使能全局中断 se
26、i();,AVR单片机软硬件设计教程-入门篇第七讲异步串行口UART,本讲内容:,串行通讯技术概述 异步串行通讯原理 UART与电脑的通讯 M16的USART 中断方式使用USART步骤,串行通讯技术概述,串行通讯的通俗定义: 一次发送一位 串行通讯的分类: 同步串行通讯 时钟线、数据线,通过时钟保持数据同步 SPI,IIC 异步串行通讯 只有一根数据线,通过波特率保证数据同步 UART 无线通信一般均为异步串行通信,异步串行通讯原理,波特率 每秒发送码元的位数,单位bps 9600bps:每个码元时间宽度为(1/9600)S 发送方按照波特率发出数据 接收方按照波特率确定的码元时间宽度对数据
27、进行采样 帧格式 8位数据格式 接线图 发送端:TXD 接收端:RXD 交叉连接,串口与PC机的通讯,RS232电平标准 逻辑1:-15V 逻辑0:+15V DB9接口定义 TXD、RXD、GND三根线即可满足绝大多数应用场合,M16的USART,特点 全双工操作( 独立的串行接收和发送寄存器) 异步或同步操作 支持5,6,7,8,或9个数据位和1个或2个停止位 硬件支持的奇偶校验操作 三个独立的中断源 噪声滤波,包括错误的起始位检测,以及数字低通滤波器,USART寄存器 UDR UCSRA UCSRB UCSRC UBRRL与 UBRRH,中断方式使用USART步骤,第1步:设置波特率 #d
28、efine F_CPU 16000000 #define BAUD 9600 UBRRH = (F_CPU /BAUD/16-1)/256; UBRRL = (F_CPU /BAUD/16-1)%256; 第2步:使能发送、接收、接收完成中断 UCSRB |= (1 RXEN )|(1 TXEN)|(1 RXCIE); 第3步: 使能全局中断 sei(); 第4步:查询方式发送、中断方式接收 发送:while( !(UCSRA ,AVR单片机软硬件设计教程-入门篇第八讲SPI串行口与DS1302,本讲内容:,同步串行口SPI的基本原理 DS1302的接口时序图 DS1302的使用 M16的SP
29、I的使用,SPI基本原理,同步串行口 利用时钟线对串行数据进行同步 上升沿或者下降沿锁存数据 4线SPI:全双工 SS,SCLK,MOSI,MISO 3线SPI:半双工 SS,SCLK,DIO SPI时序图,按照时序图编写IO程序 上升沿: PORTB ,DS1302的接口时序图与AVR的接线图,时序图 见DS1302的官方技术文档 与AVR之间的接线图 3线SPI与4线SPI的互联,DS1302的使用,等效于一部电子万年历 可以读出年月日时分秒星期等时间信息 可以对上述信息进行设置,“校表” 外围元器件 32768Hz晶振 备份电池 数据传输模式 单字节传输模式 突发传输模式 IO口模拟SP
30、I时序,M16的SPI,功能强大的AVR SPI 全双工 支持全部四种SPI模式 主机或从机模式 可配置的SPI位速率,最高达8MHz SPI寄存器设置 SPI 控制寄存器-SPCR SPI 状态寄存器-SPSR SPI 数据寄存器-SPDR SPI初始化函数与读写1字节函数,AVR单片机软硬件设计教程-入门篇第九讲IIC(TWI)接口与AT24C02,本讲内容:,IIC总线定义与特点 I2C总线的工作原理 AVR的TWI模块的使用方法 AT24C02,I2C总线定义,I2C(InterIntegrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及
31、其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。 TWI: ATMega 系列单片机片内集成两线制串行接口模块,Atmel 文档称它为TWI 接口。事实上TWI 与PHILIPS 的I2C 总线是同一回事,之所以叫它TWI 是因为这样的命名可使Atmel 避免交术语版税。所以,TWI 是兼容I2C 的一种说法。,I2C总线的特点,I2C总线最主要的优点是其
32、简单性和有效性。由于接口直接在组件之上,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。I2C总线的另一个优点是,它支持多主控(multimastering), 其中任何能够进行发送和接收的设备都可以成为主总线。一个主控能够控制信号的传输和时钟频率。当然,在任何时间点上只能有一个主控。,I2C总线多机通讯,I2C总线的工作原理,I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种
33、被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。,I2C总线的工作原理,I2C总线在传送数据过程中共有三种类型信号, 它们分别是:开始信号、结束信号和应答信号。 开始信号:SCL为高电平时,SDA由
34、高电平向低电平跳变,开始传送数据。 结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。 应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。 这些信号中,起始信号是必需的,结束信号和应答信号,都可以不要。,I2C总线的时序图,AVR的TWI模块,本部分结合ATmega16的技术文档讲解,AT24C02,AT24C02是由ATMEL公司提供的,I2C总线串行E
35、EPROM,其容量为2Kbit(256B),工作电压在2.7V5.5V之间,生产工艺是CMOS工艺。,各引脚功能如下。 A2A0:器件地址选择引脚。将这3个引脚配置成不同的编码值,在同一串行总线上最多可扩充8片同一容量或不同容量的24系列串行EEPROM芯片。 SDA:串行数据输入输出口,是一个双向的漏极开路结构的引脚,容量扩展时可以将多片24系列的SDA引脚直接相连。 SCL:串行移位时钟控制端。写入时上升沿起作用,读出时下降沿起作用。 WP:硬件写保护控制引脚。当其为低电平时,正常写操作,高电平时,对EEPROM部分存储区域提供硬件写保护功能,即对被保护区域只能读不能写。 GND:接地。
36、VCC:接+5V电压,电路设计,程序流程,容量计算方法 AT24Cxx:011024 容量=xx X 1Kbit 型号系列列表 AT24C011K(128X8) AT24C022K(256X8) AT24C044K(512X8) AT24C088K(1KX8) AT24C1616K(2KX8) AT24C512512K(64KX8) AT24C10241M(128KX8),AVR单片机软硬件设计教程-入门篇第十讲ATmega16的ADC,本讲内容:,模数转换技术概述 性能指标:速度与精度 AVR的模数转换器,模数转换技术概述,所谓模数转换,就是将模拟信号(电压或电流)通过模数转换器(ADC)转
37、换成数字电路(例如单片机)可以处理的数字量 形象的说,ADC就是一个单片机可以对其进行读取的数字电压表(电流表),性能指标:速度与精度,转换速率:每秒钟采样的次数。常用单位: SPS(每秒次) KSPS(每秒千次) MSPS(每秒百万次)。越快越好。 转换精度:转换结果的有效位数(二进制)。单位:位 AVR的片上ADC: 最高转换速率:15kSPS 最高转换精度:10位,AVR的模数转换器,AVR片上ADC的特点: 10 位 精度 0.5 LSB 的非线性度 2 LSB 的绝对精度 65 - 260 s 的转换时间 最高分辨率时采样率高达15 kSPS 8 路复用的单端输入通道 7 路差分输入
38、通道 2 路可选增益为10 x 与200 x 的差分输入通道 可选的左对齐ADC 读数 0 - VCC 的 ADC 输入电压范围 可选的2.56V ADC 参考电压 连续转换或单次转换模式 通过自动触发中断源启动ADC 转换 ADC 转换结束中断 基于睡眠模式的噪声抑制器,使用流程: 1.初始化相关寄存器 2.读取转换结果 3.平滑滤波 4.进行单位制变换,AVR单片机软硬件设计教程-入门篇第十一讲液晶显示模块的使用,本讲内容:,液晶显示技术概述 LCD显示的原理 LCD控制器与LCD模块 LCD模块使用方法,液晶显示技术概述,液晶(Liquid Crystal)是一种高分子材料,因为其特殊的
39、物理、化学、光学特性,20世纪中叶开始被广泛应用在轻薄型的显示技术上。 人们熟悉的物质状态(又称相)为气、液、固,较为生疏的是电浆和液晶(Liquid Crystal,简称LC)。液晶相要具有特殊形状分子组合始会产生,它们可以流动,又拥有结晶的光学性质。液晶的定义,现在以放宽而囊括了在某一温度范围可以是现液晶相,在较低温度为正常结晶之物质。而液晶的组成物质是一种有机化合物,也就是以碳为中心所构成的化合物。 同时具有两种物质的液晶,是以分子间力量组合的,它们的特殊光学性质,又对电磁场敏感,极有实用价值。 特点: 轻薄 低功耗,LCD显示的原理,液晶显示材料最常见的用途是电子表和计算器的显示板,这
40、种液态光电显示材料,利用液晶的电光效应把电信号转换成字符、图像等可见信号。液晶在正常情况下,其分子排列很有秩序,显得清澈透明,一旦加上直流电场后,分子的排列被打乱,一部分液晶变得不透明,颜色加深,因而能显示数字和图象。液晶显示器的英文缩写为LCD。 LCD显示的原理: 两片玻璃片分别镀有透明的导电铝箔,上下表面两条铝条加电压,其交叉点上的液晶会变得浑浊,LCD控制器与LCD模块,LCD控制芯片专门用于LCD的驱动与控制,在单片机与LCD屏之间提供一个良好的接口 LCD模块:将LCD控制芯片与LCD屏集成在一起,方便单片机等可编程芯片对其进行控制 LCD模块的种类: 笔段型 字符型:显示字符位数
41、,常见的有1602(16字符X2行) 点阵型(图形液晶):点数(X*Y),常见的有12864(128点X64点),AVR单片机软硬件设计教程-入门篇第十二讲项目实例:多功能电子钟,本讲内容:,项目设计要求 项目规划 DS18B20的使用方法 程序流程,项目设计要求,设计要求: 设计制作一个多功能电子钟,具备年月日时分秒显示功能,掉电后时钟信息不会丢失。 具备显示当前环境温度功能。 显示器可以在字符液晶与数码管之间切换选择。 电子钟通过USART与PC机通讯,通过串口调试助手设置时间。 通过四个按键切换显示模式与数码管显示内容。 具有数字电压表功能,能够测量02.5V范围内的电压并在字符型液晶上
42、显示。 采用AVR单片机ATmega16。,项目规划,时钟功能的实现: AVR单片机自带RTC功能,但C语言实现日历功能比较复杂, 且ATmega16的功耗不够低(ATmega48V是典型的低功耗AVR),而时钟芯片DS1302掉电功耗很低,操作方便,因此时钟功能选择DS1302+备份电池实现。 字符液晶的选择: 选择最常用的字符型液晶1602。 上位机通讯: 采用TTL-232电平转换芯片MAX232A,DB9接口。 温度测量功能: 采用常用的温度测量芯片DS18B20 电压表功能: 片上自带的10位ADC,片内2.56V参考电压源,测量电压直接输入。,DS18B20简介,DS18B20简介 美国美信(Maxim)公司生产的单线数字温度传感器DS1820,可把温度信号直接转换成串行数字信号供微机处理。 DS18B20的主要特性 适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数据线供电 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯 支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温 在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内 温范围55125,在-10+85时精
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论