单片机课程设计(简易波形发生器设计)

合集下载

波形发生器设计单片机课程设计

波形发生器设计单片机课程设计

广东石油化工学院单片机原理及应用技术课程设计题目:波形发生器的设计班级:505团队团队成员:学号:目录一、设计任务及团队分工说明 (1)二、总体设计及需求分析 (3)三、硬件选型及电路设计 ................................. 错误!未定义书签。

四、软件设计 ..................................................... 错误!未定义书签。

五、结论.................................................................. 错误!未定义书签。

六、设计心得.......................................................... 错误!未定义书签。

七、致谢.................................................................. 错误!未定义书签。

参考文献.................................................................. 错误!未定义书签。

二、总体设计及需求分析1.实验目的:①掌握数/模转换的基本原理及编程方法;②掌握D/A转换芯片DAC0832的结构特点、工作原理及使用方法;③掌握利用串行口扩展I/O口的方法;2.实验要求:实验目的①. 设计一款能够产生3种以上波形的波形发生器;②. 设计波形选择按钮;③.LED或LCD显示波形代号(如 1为正弦波,2为方波……);④.能够同时输出两种波形⑤.能够记录一段时间的波形3.程序流程图程序的主流程图如下:主流程图三:硬件选型及电路设计1.单片机AT89C51介绍:AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。

简易波形发生器的设计

简易波形发生器的设计

XXXX学院课程设计报告课程名称:单片机课程设计院系:电气与信息工程学院专业班级:自动化09102班学生姓名: X X指导教师: X X X完成时间: 2012年6月10日报告成绩:简易波形发生器简易波形发生器是一种常用的信号源,它广泛地应用在电子技术实验、自动控制系统和其他科研领域。

本系统能够准确产生方波、正弦波、锯齿波及三角波。

基于数模转换芯片DAC0832技术的简易波形发生器由六个部分组成:MCU模块、波形发生模块、静态LED 数码管显示模块、键盘输入模块、在线下载模块以及电源模块。

MCU模块采用STC89C51RC 单片机进行数据处理,波形发生模块采用DAC0832及LM324进行波形发生及变换,静态LED数码管显示模块利用3位八段共阳极数码管及3个74LS164显示当前波形频率,键盘模块采取外部中断方式扫描键值,在线下载模块选用MAX232芯片进行单片机程序下载,电源模块使用三端稳压器为系统提供能源。

运用Altium Designer软件绘制了单元电路以及总体电路图,借助Proteus仿真软件对电路进行了虚拟实验,通过仿真分析,满足了课题性能指标的要求,成功地实现了简易波形发生器的设计。

关键词波形发生器;DAC0832;STC89C51RC;静态显示Simple waveform generator is a common source, it is widely used in the experiment of electronic technology, automatic control system and other scientific fields. The system can accurately produce a square wave, sine wave, sawtooth wave and triangle wave. Based on the digital-analog conversion chip DAC0832 simple waveform generator consists of six parts: MCU module, waveform generator module, static LED digital display module, keyboard input module, the download module and power supply. The MCU STC89C51RC microcontroller is for data processing. The waveform generation module which made of DAC0832 and LM324 is used to generate waveform and transform. The static LED digital display module uses three eight out common anode digital and three 74LS164 to show the current waveform frequency. The keyboard module to take external interrupt the scan key. Download module use a MAX232 chip microcontroller program download. The power supply uses three-terminal regulator to provide energy for the system. Altium Designer were used to draw a unit circuit as well as the overall circuit. With Proteus simulation software to conduct virtual experiments on the circuit, simulation analysis, to meet the requirements of the subject of performance indicators, the successful implementation of a simple waveform generator design.Keywords waveform generator ;DAC0832;STC89C51RC; static LED digital display目录摘要 (I)Abstract (II)第一章简易波形发生器的方案设计 (1)1.1简易波形发生器的方案分析与比较 (1)1.1.1 基于数模转换芯片DAC0832的简易波形发生器的设计 (1)1.1.2 基于MAX038函数发生器的简易波形发生器的设计 (1)1.1.3 基于DDS波形发生技术的简易波形发生器的设计 (2)1.2 简易波形发生器的总体结构说明 (2)第二章简易波形发生器的电路设计 (3)2.1 MCU模块 (3)2.1.1 STC89C51RC单片机 (3)2.1.2 复位电路 (5)2.1.3 时钟电路 (5)2.2 DAC0832模块 (5)2.2.1 DAC0832芯片基本介绍 (6)2.2.2 DAC0832波形发生电路 (7)2.3 静态LED数码管显示模块 (7)2.3.1 移位寄存器74LS164 (7)2.3.2 静态显示电路 (8)2.4 键盘输入模块 (8)2.5 在线下载模块 (9)2.6 电源模块 (9)2.7 总体电路说明 (9)第三章简易波形发生器的程序设计 (10)3.1系统接口定义 (10)3.2 主程序 (10)3.3 外部总中断1中断服务程序 (11)第四章简易波形发生器仿真分析 (13)4.1初始界面 (13)4.2 波形发生仿真 (13)4.2.1 正弦波的仿真分析 (13)4.2.2 锯齿波发生仿真分析 (14)4.2.3 三角波发生仿真分析 (15)4.2.4 方波发生仿真分析 (17)总结 (19)参考文献 (20)致谢 (21)附录1:简易波形发生器原理图 (22)附录2:简易波形发生器Protues仿真图 (23)附录3:简易波形发生器元器件明细表 (24)附录4:简易波形发生器源程序 (25)第一章 简易波形发生器的方案设计简易波形发生器是一种常用的信号源,它广泛地应用在电子技术实验、自动控制系统和其他科研领域。

单片机波形发生器课程设计

单片机波形发生器课程设计

单片机波形发生器课程设计一、课程目标知识目标:1. 理解单片机的基本原理,掌握单片机波形发生器的硬件组成及工作原理;2. 学会使用相关编程语言(如C语言)编写程序,实现对单片机波形发生器的控制;3. 掌握单片机波形发生器在不同波形(如正弦波、方波、三角波等)下的参数设置及其调整方法。

技能目标:1. 能够独立完成单片机波形发生器的硬件连接与调试;2. 能够运用所学编程知识,编写出实现不同波形的程序,并成功运行在单片机上;3. 学会分析并解决在单片机波形发生器使用过程中遇到的问题。

情感态度价值观目标:1. 培养学生对电子技术的兴趣和热情,提高学生对单片机及其应用的重视程度;2. 培养学生的团队协作意识,学会在团队中发挥个人作用,共同完成项目任务;3. 培养学生勇于创新、敢于实践的精神,提高学生面对挫折和困难时的坚持与克服能力。

课程性质:本课程为实践性较强的课程,结合理论教学,注重培养学生的实际操作能力。

学生特点:学生具备一定的电子基础和编程知识,对单片机有一定了解,但实践经验不足。

教学要求:教师应结合课程特点和学生实际情况,采用理论教学与实践操作相结合的方式进行教学,注重培养学生的动手能力和创新能力。

在教学过程中,分解课程目标为具体的学习成果,以便进行有效的教学设计和评估。

二、教学内容1. 理论部分:a. 单片机原理概述:讲解单片机的基本结构、工作原理及性能特点;b. 波形发生器原理:介绍波形发生器的功能、分类及其在电子技术中的应用;c. 编程语言基础:回顾C语言基础知识,重点讲解与单片机编程相关的语法和技巧。

2. 实践部分:a. 硬件连接与调试:指导学生完成单片机波形发生器的硬件连接,学习使用调试工具;b. 程序编写与烧录:教授学生编写控制单片机波形发生器的程序,并进行烧录;c. 波形参数调整:学习如何调整单片机波形发生器的参数,实现不同波形输出。

3. 教学大纲与进度安排:a. 第一周:单片机原理概述,波形发生器原理;b. 第二周:C语言回顾,编程语言基础;c. 第三周:硬件连接与调试;d. 第四周:程序编写与烧录;e. 第五周:波形参数调整,实践操作与总结。

基于51单片机的波形发生器的设计

基于51单片机的波形发生器的设计

基于51单片机的波形发生器的设计引言:波形发生器是一种可以生成特定频率、特定波形的电子设备。

它广泛应用于科研、教学和产业生产等领域,可以用于信号发生、信号测试、信号仿真等各种任务。

本文将介绍一个基于51单片机的波形发生器的设计方案。

一、系统硬件设计1.系统框架该波形发生器系统采用51单片机作为主控芯片,主要包括三个部分:信号生成模块、显示模块和控制模块。

其中,信号生成模块负责产生各种特定频率、特定波形的信号;显示模块用于展示信号参数等相关信息;控制模块负责接收用户输入并对波形发生器进行控制。

2.硬件连接信号生成模块与主控芯片之间通过I/O接口相连,用于传输数据和控制信号。

显示模块通过串口与主控芯片相连,用于显示相关信息。

控制模块通过按键、旋钮等输入设备与主控芯片相连,用于接收用户输入。

二、系统软件设计1.系统初始化在系统初始化阶段,主控芯片需要完成引脚、定时器、串口等相关资源的初始化工作。

同时,还需要设置一些全局变量和参数的初始值。

2.信号生成模块信号生成模块通过定时器产生特定频率的时钟信号,并根据用户输入的参数生成相应的信号波形。

主控芯片利用定时器中断函数进行波形生成,并将生成的信号数据存放在缓冲区中。

3.显示模块显示模块负责将信号波形显示在液晶屏上,并显示相关参数,如频率、幅度等。

主控芯片将信号数据从缓冲区中读取,并通过串口发送给显示模块进行显示。

4.控制模块控制模块负责接收用户输入的控制指令,并通过按键、旋钮等输入设备完成用户交互。

主控芯片通过中断函数实时读取用户输入并进行相应的控制操作。

三、系统功能设计1.频率设置功能用户可以通过控制模块设置波形发生器的频率,可以选择固定频率或者可调频率。

利用定时器时钟频率与定时器中断的时间间隔来控制波形的频率。

2.波形选择功能用户可以通过控制模块选择不同的波形类型,如正弦波、方波、三角波、脉冲波等。

主控芯片根据用户指令设置波形参数,并生成相应的波形信号。

波形发生器单片机课程设计

波形发生器单片机课程设计

波形发生器单片机课程设计一、课程目标知识目标:1. 让学生理解波形发生器的基本原理,掌握单片机在波形发生器中的应用;2. 学会使用编程软件进行单片机程序设计,实现常见波形的生成;3. 了解波形发生器的性能指标,如频率、幅度、相位等,并能进行简单计算。

技能目标:1. 培养学生运用所学知识,设计并实现波形发生器单片机程序的能力;2. 提高学生动手实践能力,能够独立完成波形发生器的硬件连接与调试;3. 培养学生团队协作能力,通过小组合作完成课程设计。

情感态度价值观目标:1. 培养学生对单片机及电子技术的兴趣,激发学生的学习热情;2. 培养学生严谨的科学态度,注重实验数据的真实性,遵循实验操作规范;3. 培养学生的创新意识,鼓励学生勇于尝试,不断优化波形发生器设计。

分析课程性质、学生特点和教学要求:1. 课程性质:本课程属于电子技术领域,涉及单片机原理、编程及硬件设计;2. 学生特点:学生已具备一定的电子技术基础,熟悉单片机的基本操作,具有一定的编程能力;3. 教学要求:注重理论与实践相结合,强调动手实践,培养学生解决实际问题的能力。

二、教学内容1. 波形发生器原理:介绍波形发生器的功能、分类及其在电子技术中的应用,重点讲解单片机波形发生器的原理及组成。

教材章节:《单片机原理与应用》第四章第三节2. 单片机程序设计:讲解如何使用编程软件(如Keil)进行单片机程序设计,实现常见波形(如正弦波、方波、三角波等)的生成。

教材章节:《单片机原理与应用》第五章3. 硬件设计与连接:介绍波形发生器硬件电路的设计方法,包括单片机、晶振、滤波器等元件的选型与连接。

教材章节:《电子电路设计》第二章4. 波形发生器性能指标:讲解波形发生器的主要性能指标,如频率、幅度、相位等,并进行简单计算。

教材章节:《电子测量与仪器》第三章5. 实践操作与调试:指导学生进行波形发生器硬件连接、程序下载和调试,确保波形发生器正常工作。

教材章节:《单片机原理与应用》第六章6. 课程设计:要求学生以小组为单位,设计并实现一个具有特定功能的波形发生器,完成课程设计报告。

单片机波形发生器设计

单片机波形发生器设计

单片机波形发生器设计一、引言波形发生器是一种电子测试仪器,用于产生各种形状的波形信号。

在电子设计和测试中,波形发生器是非常重要的工具,可以用于测试电子元器件的响应特性、检测电子电路的特性,以及用于故障分析和调试等。

本文将介绍一种基于单片机的波形发生器设计方案。

二、设计方案1.系统硬件设计本设计方案采用基于单片机的数字波形发生器,利用单片机的高速计数器和定时器功能,生成各种频率和形状的波形信号。

系统硬件主要包括以下几个部分:(1)单片机:选择一款具备高速计数器和定时器功能的单片机,如ATmega328P。

(2)时钟电路:提供单片机工作所需的稳定时钟信号。

(3)按键/旋钮:用于设置波形的频率和形状。

(4)显示器:用于显示当前波形的频率和形状。

(5)输出接口:提供波形信号的输出接口,以便连接到外部电路进行测试。

2.系统软件设计本设计方案采用C语言进行单片机程序的编写,使用单片机的定时器来生成各种频率的波形信号。

(1)初始化:设置单片机的引脚方向和初始化定时器。

(2)按键/旋钮检测:检测按键/旋钮的状态变化,并根据用户的操作进行相应的波形设置。

(3)波形生成:根据用户设置的频率和形状,在单片机的定时器中设置相应的计数值和自动重载值,以产生所需的波形信号。

(4)输出:将生成的波形信号通过输出接口输出到外部电路进行测试或其他应用。

三、系统性能分析1.频率范围:由于采用了单片机的高速计数器和定时器功能,所以波形发生器的频率范围可以较广,通常可以覆盖几赫兹到几千兆赫兹的范围。

2.波形形状:由于使用了单片机的计时器功能,所以可以生成多种形状的波形信号,如正弦波、方波、三角波等。

3.稳定性:由于采用了稳定的时钟电路,所以波形发生器的频率稳定性较高,误差较小。

4.精确度:由于采用了单片机的高速计数器和定时器功能,所以波形发生器的频率和相位精度较高。

四、总结本文介绍了一种基于单片机的波形发生器设计方案。

该方案通过利用单片机的计数和定时器功能,可以生成各种形状和频率的波形信号,具备较高的稳定性和精确度。

基于单片机的波形发生器设计及实现

基于单片机的波形发生器设计及实现

基于单片机的波形发生器设计及实现一、设计方案波形发生器是一种能够产生不同频率、幅度和波形形式的信号的电路设备。

在本设计中,我们将采用单片机作为控制核心,利用其内部计时器和输出引脚来实现波形的产生。

具体的设计方案如下:1. 选择单片机:选用一款适合波形产生器设计的单片机,如ATmega328P等。

2.编程开发:利用单片机的C语言编程开发,在程序中实现波形发生器的控制逻辑,包括波形形状、频率、幅度等参数的设定和控制。

3.输出电路设计:设计适合单片机输出信号的电路,包括放大、滤波和隔离等功能,以确保输出信号的质量和稳定性。

4.外部控制接口:设计外部控制接口,包括旋钮、按键等,方便用户对波形发生器进行参数设定和调节。

5.功率供应:提供稳定的电源供应,确保波形发生器正常工作。

二、实现过程1.单片机编程:首先编写C语言程序,实现波形发生器的控制逻辑。

通过设置定时器的计数值和输出引脚的状态来产生不同形状的波形,如正弦波、方波、三角波等。

同时,通过按键和旋钮来实现频率和幅度的调节。

2.输出电路设计:设计一个简单的输出电路,将单片机的输出信号放大和滤波,以获得较为稳定和可靠的输出信号。

同时,通过隔离电路来防止单片机受到外部干扰。

3.外部控制接口:设计旋钮和按键的连接电路,将它们与单片机的GPIO引脚相连,实现参数的设定和调节。

通过旋钮来调节频率,通过按键来切换波形形状和设定幅度。

4.功率供应:设计一个合适的功率供应电路,为单片机和输出电路提供稳定的电源,以保证波形发生器的正常工作。

5.调试测试:将所有部件组装在一起,通过示波器等仪器对输出信号进行观测和测试,调节参数使得波形发生器产生符合要求的波形,并记录各种参数值,以便后续使用和改进。

三、实现效果经过上述步骤的设计和实现,我们成功地搭建了一个基于单片机的波形发生器。

该波形发生器可以产生多种波形形状,如正弦波、方波、三角波等,同时支持频率和幅度的调节。

通过外部控制接口,用户可以方便地对波形发生器进行参数的设定和调节,使得波形发生器具有较好的灵活性和易用性。

单片机课程设计--简易波形发生器

单片机课程设计--简易波形发生器

单片机课程设计--简易波形发生器电气与电子信息工程学院《单片机》课程设计报告题目:简易波形发生器专业班级:电气学号: 123456姓名:王刚指导教师:胡蔷、汤立刚设计时间:2013年12月9日—2013年12月13日设计地点: K2-407单片机、微机原理实验室2013年11月20日单片机课程设计成绩评定表答辩或质疑记录:1、该设计能产生几种波形?分别是哪几种?答:能产生4种波形,三角波,方波,锯齿波以及正弦波。

2、DAC0832有几种工作方式?哪几种?各有什么特点?该设计中DAC0832用的是哪一种方式?答:3种,单缓冲方式、双缓冲方式以及直通方式:(1)单缓冲方式此方式适用于只有一路模拟量输出或几路模拟量非同步输出的情形。

方法是控制输入寄存器同时接收数据,或者只用输入寄存器而把DAC寄存器接成直通方式。

(2)双缓冲方式此方式适用于多个DAC0832同时输出的情形。

方法是先分别使这些DAC0832的输入寄存器接收数据,再控制这些DAC0832同时传送数据到DAC寄存器以实现多个D/A转换同步输出。

〔3〕直通方式此方式适用于连续反馈控制线路中。

方法是:数据不通过缓冲器,即-WR1,-WR2, -XFER, -CS 均接地,ILE接高电平。

此时必须通过I/O接口与微处理器连接,以匹配微处理器与D/A的转换。

该设计中DAC0832用的是单缓冲方式。

成绩评定依据:课程设计考勤情况(5%):课程设计仿真测试情况(15%)课程设计答辩情况(30%):完成设计任务及报告规范性(50%):最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字:2013 年12 月日课程设计任务书2013~2014 学年第 1 学期专业班级:电气指导教师:胡蔷汤立刚工作部门:电气与电子信息工程学院电气自动化教研室一、课程设计题目单片机课程设计二、课程设计内容(含技术指标)1.设计目的及要求(1)根据具体设计课题的技术指标和给定条件,以单片机为核心器件,能独立而正确地进行方案论证和电路设计,完成仿真操作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

参数见sheet2
1 1 23 1 2 1 1 2 1 1 1
电阻 阻值 1k 5.1k 1M 1.5K 68 10K 100
数量 11 4 1 1 2 3 1 23
网上资料与通知
校内ftp: 校内ftp: ftp://10.21.12.1/
考核时间
6月9号全天考核, 号全天考核, 晚上为白天不及格的同学补测时间。 晚上为白天不及格的同学补测时间。 在上机期间有分模块功能的考核。 在上机期间有分模块功能的考核。
左移<<: 左移<<: 左移n位相当于乘2 运算,左侧n 左移n位相当于乘2n运算,左侧n位丢弃,右 侧补n 侧补n个0 右移>> 右移>> 右移n位相当于乘2 运算,右侧n 右移n位相当于乘2-n运算,右侧n位丢弃, 左侧补n 左侧补n个0
IO口输出操作总结 IO口输出操作总结
第一步:IO设置为输出 第一步:IO设置为输出
C语言与硬件环境的映射
位运算
将某一位置1、置0 将某一位置1、置0、取反
置1: 相应位与1进行按位或| 相应位与1进行按位或|运算 置0: 相应位与0进行按位与& 相应位与0进行按位与&运算 取反: 相应位与1进行按位异或^ 相应位与1进行按位异或^ 运算
移位运算符:左边为最高位,右边为最低位
位运算
100k~200k R? InPut
InPut VinMAX
IO、寄存器与变量 IO、
IO口与IO寄存器的映射(x代表A~D) IO口与IO寄存器的映射(x代表A~D)
方向寄存器:DDRx 方向寄存器:DDRx 数据寄存器:PORTx 数据寄存器:PORTx 输入寄存器:PINx 输入寄存器:PINx
JTAG调试 JTAG调试
需要JTAG调试器硬件支持(在本次课程设计中 需要JTAG调试器硬件支持(在本次课程设计中 没有)
工作电压:5V 工作电压:5V 封装:P DIP40(本次课程设计使用) 封装:P DIP40(本次课程设计使用)
与标准51除了reset引脚外,兼容 与标准51除了reset引脚外,兼容
RS232串口 RS232串口
在板子上和原理图上有 但在这次课程设计中是没有焊接的
数码管电路
1602字符型LCD的接口 1602字符型LCD的接口 在本次课程设计没有使用LCD 在本次课程设计没有使用LCD
蜂鸣器电路
一个典型的蜂鸣器电路 给低电平发声
本课程设计板子,利用AVR的boot功能和可 本课程设计板子,利用AVR的boot功能和可 以IAP的特点,设计了一个USB Bootloader IAP的特点,设计了一个USB 可以通过USB Bootloader下载编译后代码 可以通过USB Bootloader下载编译后代码 具体使用请听下节课
#define CPU_F 1000000 #define delay_us (unsigned long) __delay_cycles((unsigned long )*CPU_F) #define delay_ms (unsigned long) __delay_cycles((unsigned long )*CPU_F/1000)
Mega16端口使用 Mega16端口使用
PORTA
PORTA 端口A输出寄存器 端口A DDRA 端口A方向寄存器 端口A PINA 端口A 端口A的输入引脚
PORTB PORTC PORTD
数码管显示
提供给大家的板子在 数码管段上与原理图 有差异 PA具体的对应关系为: PA具体的对应关系为:
考核要求
焊接 功能演示 答辩
硬件设计
主要元器件
单片机:mega16 单片机:mega16 4位数码管 蜂鸣器 按键
本次课程设计使用的单片机
ATmega16
Ateml公司的AVR 8位单片机系列 Ateml公司的AVR 8位单片机系列 RISC 16KB Flash 32个8 位通用工作寄存器 1KB SRAM 512B E2PROM 多数指令 单指令单周期 16MHz
课程设计时间安排( 课程设计时间安排(9月)
时间 教室 6.28 6#129 6.29 6.30 7.1 7.2
上午批次
1,2,3,4理论课 理论课
3,4
1
4
下午批次
1,2,3,4 理论课
1,2,3,4领元件 领元件 2中-127 中
1,2
2
1

1,2,3,4 交名单(19:00前给邵李焕 交名单 前给邵李焕 老师)2-127 老师
C语言变量与寄存器的映射
io.h这个文件中将所有寄存器映射为同名的变量, io.h这个文件中将所有寄存器映射为同名的变量, 对这些变量的读写相当于对寄存器的读写
输出状态IO寄存器设置 输出状态IO寄存器设置
DDRx某一位置1,相应位的IO口被设置为输出 DDRx某一位置1,相应位的IO口被设置为输出 PORTx某一位置1 ,对应IO口相应位的电平 PORTx某一位置1或0,对应IO口相应位的电平 高低
头文件
// Include I/O definition file #include <ioavr.h> 自动适合选择的器件
八段数码管
八段数码管
由八段LED构成 由八段LED构成 各LED阴极或阳极并在一起,称为“位选 LED阴极或阳极并在一起,称为“ 线”:共阴、共阳 10 1 a A 其余8个引脚各自引出,称为“段选线” 其余8个引脚各自引出,称为“段选线”, 9 6 b A 8 c 各段可以分别控制 5
3 S? 2 1 R? Imax OutPut
灌电流能力: 能够流入IO口的最大电 能够流入IO口的最大电 VCC VCC 流
1 S? 2 3 OutPut R? Imax
GND GND
GND
IO口的输入性能指标 IO口的输入性能指标
AVR的IO口输入状态时可配置上拉电阻,值为 AVR的IO口输入状态时可配置上拉电阻,值为 100k数量级 100k数量级 最大输入电压范围:最大输入电压范围:-0.5V~Vcc+0.5V 是否有上拉 能够承受的最大输入电 VCC 电阻 压范围
Mega16引脚图 Mega16引脚图
Mega16结构图 Mega16结构图
见数据手册
电路图
mega16板子 mega16板子
采用16MHz晶振 采用16MHz晶振 或 使用内部OSC 使用内部OSC ADC的电压电压是 ADC的电压电压是 5V 看看AVR的RESET时序 看看AVR的RESET时序
延时函数__delay_cycles 延时函数
需要加入 #include <intrinsics.h>
一个简单的显示程序
//在数码管上显示数字 0 1 2 3 //在数码管上显示数字 // Include I/O definition file #include <ioavr.h> #include <intrinsics.h> #define dseg PORTC int main( void ) { unsigned char dtab[]={0x28,0xee,0x32,0xa2}; DDRA = 0xf0;
输出口模型
VCC 3 S? 2 1 SW-SPDT OutPut
R? >10M
输入口模型
InPut
GND
GND
IO口的输出性能指标 IO口的输出性能指标
AVR的IO口灌电流能力与拉电流能力均达30mA AVR的IO口灌电流能力与拉电流能力均达30mA 51的拉电流能力<100uA,灌电流能力10mA 51的拉电流能力<100uA,灌电流能力10mA 拉电流能力: 能够从IO口流出的最大 能够从IO口流出的最大 VCC 电流
4 2 3 7 d e f g DP
GND
a
LED
b
LED
c
LED
d
LED
e
LED
f
L一的数码管
多位合一的数码管
将多个八段数码管的段选线分别并在一起,位选 线引出
数码管扫描原理
数码管扫描原理
多位数码管的各个位均可以单独显示不同的数据, 但一个时刻只能点亮一位 依次点亮多位数码管中的各个位,由于人眼的视 觉暂留效应,看起是来多位同时点亮 请观看程序演示
Mega16的外设资源 Mega16的外设资源
4通道PWM 通道PWM 8通道10位ADC 通道10位 两个具有独立预分频器和比较器功能的8 位定时 器/ 计数器 2 个具有可编程增益(1x, 10x, 或200x)的差分通 道 SPI USART 比较器 WDT
Mega16其他特性 Mega16其他特性
seg PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 b f a g c dp d e
延时函数__delay_cycles 延时函数
以周期为标准
__delay_cycles(unsigned long ); 如果处理器频率为1M,延时100us,如下: __delay_cycles(100 ); 当然你也可以对该函数进行修改:
DDRB = 0xff; DDRB |= (1 << 5);//第五位设为输出 5);//第五位设为输出
第二步:对应位输出数据
输出1 输出1: PORTB |= (1 << 5);//第五位输出高电平 5);//第五位输出高电平 输出0 输出0: PORTB &= ~(1 << 5);//第五位输出低电 5);//第五位输出低电 平 对应位取反:PORTB 对应位取反:PORTB ^= (1 << 5);//第五位取反 5);//第五位取反
相关文档
最新文档