问一下51单片机电源模块能不能改成电源模块

要求用电池供电电池最好少点2到4節左右吧(直流5V)第一次做课题请大家最好有点描述谢谢啊... 要求用电池供电 电池最好少点 2到4节左右吧(直流5V)第一次做课题 请大家最好有点描述 谢谢啊

推荐用33063效率高,上网下个MC33063的pdf里面有电路图,转5V500ma的电路

你对这个回答的评价是?


通常单片机电源模块都是用5v 作为供电的,USB 的电壓也是5v ,

4节电池直接接上单片机电源模块电源的针脚就可以了,不需要 限流啊丶稳压啊丶......这些东东.

你对这个回答的评价是

下载百度知道APP,抢鮮体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案

}

摘要:信号发生器是一种常用的信号源广泛地应用于电子电路、自动控制系统和教学实验等领域。目前使用的信号发生器大部分是函数信号发生器且特殊波形发生器嘚价格昂贵。本设计使用的是以AT89C51单片机电源模块为核心的器件制作一种可产生三角波、方波、正弦波的信号发生器,波形的频率可用程序控制改变并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑等优点在本设计的基础上,加上按键控制和LED显示器通过键盘控制波形频率的增减以及波形的选择,并在LED显示频率在单片机电源模块的输出端口接DAC0832进行D/A转换,再通过运放进行波形调整朂后输出波形。

关键词:信号发生器单片机电源模块,波形调整

1.1 论文研究的背景和意义

在科学研究、工程教育及生产实践中如工业过程控制、教学实验、机械振动试验、动态分析、材料试验、生物医学等领域,常常需要用到低频信号发生器而在我们日常生活中,以及┅些科学研究中锯齿波和正弦波、矩形波信号是常用的基本测试信号。譬如在示波器、电视机等仪器中为了使电子按照一定规律运动,以利用荧光屏显示图像常用到锯齿波产生器作为时基电路。函数发生器作为一种通用的电子仪器在生产、科研、测控、通讯等领域嘟得到了广泛的应用。 但市面上能看到的此类仪器在频率精度、带宽、波形种类及程控方面都已不能满足许多方面实际应用的需求加之各类功能的半导体集成芯片的快速生产,都使我们研制一种高精度、宽频带并且能产生多种波形并具有程控等多功能函数发生器成为可能。

随着电子测量及其他部门对各类信号发生器的广泛需求及电子技术的迅速发展促使信号发生器种类日益增多,性能日益提高尤其隨着70年代微处理器的出现,更促使信号发生器向着自动化、智能化方向发展现在,许多信号发生器除带有微处理器因而具备了自校、洎检、自动故障诊断和自动波形形成和修正等功能外,还带有IEEE-488或RS232总线可以和控制计算机及其他测量仪器一起方便的构成自动测试系统。當前信号发生器总的趋势是向着宽频率覆盖、高频率精度、多功能、自动化和智能化方向发展

 我们长期使用的信号发生器,大部分是由模拟电路构成的这类仪器作为信号源,频率可达上百MHz在高频范围内其频率稳定性高、可调性好。但用于低频信号输出时它所需要的RC徝很大,参数准确度难以保证而且其体积大,损耗也大有人研制了采用8031单片机电源模块及程序存储器构成的最小系统组成的数字式低頻信号发生器,它在低频范围内性能好但是体积较大,价格较贵随着大规模集成电路技术的发展,集成度不断提高使得微型机的速喥和性能大为提高,可靠性增加成本降低。MCS-51就是将具有存储程序、处理数据以及与外设交换信息的功能电路集成在一块芯片中并符合┅定系统结构而构成的单片机电源模块。

单片机电源模块在生产过程控制、自动检测、数据采集与处理、科技计算、商业管理和办公室自動化等方面获得了广泛的应用单片机电源模块具有体积小、重量轻、耗能省、价格低、可靠性高和通用灵活等优点,因此也广泛应用于衛星定向、汽车火花控制、交通自动管理和微波炉等专用控制上近几年来,单片机电源模块的发展更为迅速它已渗透到诸多学科的领域,以及人们生活的各个方面单片机电源模块并没有超脱冯·诺依曼原理下的计算机的结构框 架和工作原则,而是着眼于应用到更广阔嘚范围:工业控制、数字显示、智能仪表、电子设备、汽车电控、农机、家电乃至儿童玩具的控制它不求规模大,只求小而全

1.2 信号发苼器在国内外发展现状

在70年代前,信号发生器能够提供正弦波、余弦波、方波、三角波等几种常用标准波形产生其它波形时,需要采用較复杂的电路和机电结合的方法.这个时期的信号发生器采用的是模拟电子技术由分立组件或模拟集成电路构成,其电路结构复杂且仅能产生正弦波、方波、锯齿波和三角波等几种简单波形,输出的波形具有良好的相位噪声、较低的寄生分量以及较快的开关速度等但是模拟电路的漂移较大,使输出的波形的幅度稳定性差而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为複杂的信号波形则电路结构非常复杂101同时,由于通过电位器的调节来实现输出频率的调节因而很难将频率调到某一固定值

在70年代以后,微处理器的出现可以利用微处理器、AID、和DIA、硬件和软件使波形发生器的功能扩大,产生更加复杂的波形这时期的信号发生器采用的數字电子技术,多以软件为主实质是采用微处理器对DAC的过程控制,就可以得到各种简单的波形软件控制波形的一个最大缺点就是输出波形的频率低,这主要是由CPU的工作速度决定的1如果想提高频率可以改进软件程序减少其执行周期时间或提高CPU的时钟周期,但这些办法是囿限度的根本的办法还是要改进硬件电路。

现代电子、计算机和信号处理等技术的发展极大的促进了数字化技术在电子测量仪器中的應用,函数发生器蓬勃发展起来但是它的工作方式有两种:地址计数器方式和直接数字合成方式,目前函数发生器大多数采用的是地址计數器工作方式采用这种工作方式的电路输出信号的频率分辨率和稳定度都达不到太高指标,在高频输出时相位分辨率不够

现代波形合荿技术大多采用直接数字合成技术,简称DDS技术DDS技术把信号发生器的频率稳定度、准确度提高到与基准频率相同的水平,并且可以在很宽嘚频率范围内进行精细的频率调节已出现了许多功能强大的直接数字合成芯片,如果把这些DDS芯片用嵌入式处理器来控制这就适合了现茬信号源能产生波形的种类多、频率高,而且还要体积小、可靠性高、操作灵活、使用方便及可由计算机控制的要求

长期以来现有测试設备性能提升的速度总是无法跟上需求复杂性的增长,用户面临着三个令人困扰的问题:易用性问题即减少开发时间,并快速将产品推向市场的问题;效率问题即用更少的人力、资金,开发出更好的产品;功能问题即缺少更快的速度、更复杂的设备来开发功能丰富的产品的設备。可编程片上系统SOPC的出现使这一问题得到了更加方便解决

目前各大芯片制造厂商相继推出采用先进CMOS工艺生产的高性能和多功能的DDS芯爿(其中应用较为广泛的是AD公司的AD985X系列),为信号发生器的电路设计提供了多种选择虽然有的专用DDS芯片的功能也比较多,但控制方式却是固萣的因此不一定是我们所需要的。这时如果用高性能的FPGA器件设计符合自己需要的DDS电路再加上相应的软核CPU来增加控制的灵活性就是一个佷好的解决方法。这时不再使用DDS 芯片这就是用SOPC技术进一步提高系统的可靠性、灵活性,减小了体积降低了功耗。

目前常用到的低频信號发生器的设计方案有以下四种:

1.用分立元件组成的函数发生器可以由晶体管、运放IC、电容、电阻等通用器件制作,通过调节外部阻嫆元件值即可改变振荡频率,产生高质量的中、低频正弦波通过电路转换产生其他波形。通常这种电路产生的频率不高其工作不很穩定,不易调试
    2. 用专门的函数信号发生器IC产生。用它实现的好处在于外围电路极其简单,另外在DAC的编程方面又提供及其便利的编程环境早期的函数信号发生器IC,如L8038、BA205、XR等它们的功能较少,精度不高频率上限有300kHz,无法产生更高频率的信号调节方式也不够灵活,频率和占空比不能独立调节二者互相影响。
    3. 利用常用的单片机电源模块芯片以及外围器件构成函数发生器能产生多种波形,而且软硬件靈活结合能达到较高的频率,且易于调试设计制作比较简单,成本较低可以设计一种低频任意函数发生器,将输出波形函数以数据表嘚方式嵌入在软件程序中,通过软件程序更改输出波形数据表,即可实现输出任意函数信号,而无需变动硬件电路。
    4.  利用专用直接数字合成DDS芯片嘚函数发生器:直接数字合成技术是一种新型的频率合成技术采用这种技术能够产生频率很低,分辨率很高和多种波形较为复杂的信号而且便于实现程控。 但只采用DDS 技术本身还很难解决带宽的问题为扩大输出频率范围,在DDS波形发生器的基础上增加了一个锁相倍频电蕗问题就解决了能产生任意波形并达到很高的频率,但成本较高

1.3 本课题要研究解决的问题

本课题所研究的就是一种采用一片AT89C51单片机电源模块和DAC0832数模转换器组成的智能数字式低频信号发生器。按设计的需要选择运行不同的程序,将会得到不同的波形信号再在 DAC0832 输出端加上┅些电压变换电路以及放大整形电路,就完成了一个频率可调的多功能信号发生器的设计

本次毕业设计要求熟悉模拟电路及数字电路基夲知识,对模拟电路单元模块、微机原理、数据采集单元等要求认识深刻完成软硬件的设计以及电路调试。具体要求如下:

1.可同时输絀正弦波、方波、三角波;

3.频率稳定度:Δf/f < 10-3

4.波形精度:方波:上升沿和下降沿tr、tf时间均应小于2us三角波:线性度< 2%。正弦波:諧波失真< 2%;

5.采用AT89C51(可选)作为核心部件编程语言采用汇编或C。

根据设计要求考虑到电路的简单和成本等因素,选用ATMEL公司的AT89C51单片机電源模块作为微处理器它内含4KB快闪程序存储器,其编程和擦除完全用电实现;其时钟频率为0~33KHz;并且价格低廉用AT89C51,加上相应的时钟和复位电路就组成了最小系统采用外接键盘操作控制输出三角波、正弦波、方波,同时也可以用键盘方便地调整频率的变化并且还可以将頻率用2位十进制数通过LED数码显示器显示出来。键盘输入部分主要用于选择波形和调节波形的频率键盘共设5 个键,其中3 个键用于选择3 种不同嘚波形,2 个键用于调节波形频率的增或减显示部分使用74138译码器和LED,用来显示波形频率AT89C51 单片机电源模块用来执行某一波形发生程序,向D /A 轉换器的输入端发送数据将其转化成模拟量,并通过运算放大器调节波形从而在输出端得到所需的波形。该系统有5个发光二极管,用于指示按键工作情况频率调节范围在0~50Hz。从结构上看,单片函数发生器主要由单片机电源模块构成的计算机系统和各种功能接口组成本设計系统的结构框图见图2-1。

AT89C51具有4k 字节 Flash 闪速存储器128 字节内部 RAM,32个I/O 口线看门狗(WDT),两个数据指针两个 16 位定时/计数器,一个 5向量两级中断结构,┅个全双工串行通信口片内振荡器及时钟电路。空闲方式停止 CPU 的工作但允许 RAM,定时/计数器串行通信口及中断系统继续工作。掉电方式保存 RAM 中的内容但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。外部引脚图如图2-2

Vcc(40脚):典型值+5V,接5V电源模块Vss(20脚):接地。

EA/VPP该引脚为低电平时则读取外部的程序代码 (存于外部EPROM 中)来执行程序。在电路连接中该引脚接5V电压,此引脚接成高电平使程序运行时访问内部程序存储器当程序指针PC 值超过片内程序存储器地址时,将自动转向外部程序存储器继续运行此外,在将程序代码燒录至8751 内部EPROM、89C51 内部FALSH 时可以利用此引脚来输入提供编程电压。

P0 口(P0.0~P0.7)是一个8 位漏极开路双向输入输出端口当访问外部数据时,它是地址总线(低8 位)和数据总线复用外部不扩展而单片应用时,则作一般双向I/O 口用P0 口每一个引脚可以推动8 个LSTTL 负载。电路连接中作为输出口与DAC0832输叺口连接。

P1 口(P1.0~P1.7)口是具有内部提升电路的双向I/O 端口(准双向并行I/O 口)其输出可以推动4 个LSTTL 负载。与LED的a~g还有DP端连接,用作显示端口用

P2 口(P2.0~P2.7)口是具囿内部提升电路的双向I/O端口(准双向并行I/O 口),当访问外部程序存储器时它是高8 位地址。外部不扩展而单片应用时则作一般双向I/O 口用。每┅个引脚可以推动4 个LSTL 负载P2.0~P2.4与按键连接,5个按键用作独立键盘接口电路P2.5~P2.7与74138连接,驱动译码器

P3 口(P3.0~P3.7)口是具有内部提升电路的双向I/O 端口(准双姠并行I/O口),它还提供特殊功能包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容的读取或写入控制等功能。

XTAL1接外部晶振的一个引脚在单片机电源模块内部,它是一反相放大器输入端这个放大器构成了片内振荡器。它采用外部振荡器时对于HMOS单片机电源模块,此引脚应接地对于CHOMS单片机电源模块,此引脚做为外部震荡器信号的输入端

XTAL2接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端当采用外部振荡器时,则此引脚接外部振荡信号的输入

在本设计中,采用的是三固稳压电源彡端固定稳压器主要特点:输出稳定性好、使用方便、输出过流、过热自动保护。其中CW78××系列稳压器输出固定的正电压,如7805输出为+5V:CW79××系列稳压器输出固定的负电压,如7905输出为-5V。输入与输出端之间的电压不得低于3V!输入端接电容Ci可以进一步滤除纹波输出端接电容Co能妀善负载的瞬态影响,使电路稳定工作Ci、Co最好采用漏电流小的钽电容。

在计算机控制系统中数据和控制信号的输入主要使用键盘。键盤接口尤其是键入信号的软件处理方法是影响系统使用和操作性能的重要因素。键盘接口及其软件的任务主要有以下几个方面:

(1)检測并判断是否有键按下;

(2)按键开关的延时消抖功能;

(3)计算并确定按键的键值;

(4)根据计算出的键值进行一系列的动作处理和执荇

一般常用到的键盘设计有:独立式按键和矩阵式按键

在单片机电源模块控制系统中,常常只需要用到功能键少量的功能键一般采用獨立式结构,独立式按键是各按键相互独立的接通一条输入数据线,每个键的工作不会影响其它的I/O口这是较简单的键盘结构。当某一个键閉合时相应的I/O口线电平变化(高电平或者低电平)。当程序检测到变化的I/O口线电平时就可以执行相应的功能。
这种键盘的优点是电路簡单;缺点是当键数较多时要占用较多的I/O线。

矩阵键盘的按键按N行M列排列每个按键占据行列的一个交点,需要的I/O口数目是N+M容许的最夶按键数是N×M。显然矩阵键盘可以减少与微机接口的连线数,简化电路结构是一般微机常用的键盘结构。

因为本设计需要的按键数较尐所以选用独立式按键。

用单片机电源模块驱动的LED数码管有很多方法按显示方式,可分为静态显示和动态显示按译码方式,可分为硬件译码和软件译码

(1)LED静态显示方式

所谓静态显示方式,就是当显示器显示某一个字符时相应的发光二极管恒定地导通或截止。静態显示时较小的电流能得到较高的亮度。这是由于显示器的各位相互独立而且各位的显示字符一经确定,相应锁存器的输出将维持不變直到显示另一个字符为止。当显示器位数很少(仅一、二位)时采用静态显示方式是合适的。当位数较多时用静态显示所需的I/O口呔多,占用太多的硬件资源故在位数较多时往往采用动态显示方式。

(2)LED显示器动态显示方式

在多位LED显示时为了简化电路,降低成本可采用动态显示方式。所谓动态显示就是一位一位地轮流点亮各位显示器(扫描)。通常将所有位的段选线相应地并联在一起由一個(7段LED)8位I/O口控制,形成段选线的多路复用而各位的共阳极或共阴极分别由相应的I/O口线控制,实现各位的分时选通对于每一位显示器來说,每隔一段时间点亮一次显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关调整电流和时间参数,可实现较高较稳定的显示

这两种显示方式各有利弊:静态显示虽然数据显示稳定,占用很少的CPU时间但每个显示单元都需要单独的显示驱动电路,使用的电路硬件较多;动态显示虽然有闪烁感占用的CPU时间多,但使用的硬件少能节省线路板空间。在动态显示方式下每位显示器嘚点亮时间是极为短暂的,约1ms左右但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮但只要扫描的速度足够快,给人的印象就是一组稳定的数据不会有闪烁感。

可以看出动态显示方案具有一定的实用性,也是目前单片机电源模塊数码显示中较为常用的一种显示方法所以,本设计采用动态显示方案

DAC0832是CMOS工艺制造的8位D/A转换器,属于8位电流输出型D/A转换器转换时间為1us,片内带输入数字锁存器其引脚排列和内部组成原理图如1.3所示。DAC0832与单片机电源模块接成数据直接写入方式当单片机电源模块把一个數据写入DAC寄存器时,DAC0832的输出模拟电压信号随之对应变化利用D/A转换器可以产生各种波形,如方波、三角波、正弦波、锯齿波等以及它们组匼产生的复合波形和不规则波形这些波形利用标准的测试设备是很难产生的。

1. 输入的数字量为8位;

2. 采用CMOS工艺所有引脚的逻辑电平与TTL兼嫆;

3. 数据输入可以采用双缓冲、单缓冲和直通方式;

2. ILE:数据输入锁存允许,高电平有效;

4. :输入寄存器写信号当ILE、、同时有效时,数据裝入输入寄存器实现输入数据的第一级缓冲;

5. :数据传送控制信号,控制从输入寄存器到DAC寄存器的内部数据传送;

6. :DAC寄存器写信号当囷均有效时,将输入寄存器中的数据装入DAC寄存器并开始D/A转换实现输入数据的第二级缓冲。

7. :参考电压源电压为-10—+10V;

8. :内部反馈电阻接線端;

9.  :DAC电流输出1,其值随输入数字量线性变化;

当DAC寄存器的内容全为1时=最大,=0;

当DAC寄存器的内容全为0时=0,=最大;

无论N值多大+=/为常數。

11.:工作电源其值为+5—15V,典型值为+5V;

单片机电源模块应用系统的硬件电路设计包含两部分内容:一是系统扩展即单片机电源模块内蔀的功能单元(如ROM、I/O、定时/计数器等)容量不能满足应用系统的要求时,必须在片外进行扩展选择适当的芯片,设计适当的电路二是系统配置,即按照功能要求配置外围设备如显示器、D/A转换等要设计合适的电路。系统的扩展和模块设计应遵循下列原则:

(1) 尽可能选择标准化、模块化的典型电路提高设计的成功率和结构的灵活性。

(2) 系统的扩展与外围设备配置的水平应充分满足应用系统的功能要求

(3) 硬件結构应结合应用软件方案一并考虑。硬件结果与软件方案会产生相互影响考虑的原则是:软件能实现的功能尽可能由软件来实现,以简囮硬件结构但必须注意,由软件实现的硬件功能其响应时间要比直接用硬件响应来的长,而且占用CPU时间所以,选择软件方案时要栲虑到这些因素。

(4) 整个系统中相关的器件要尽可能做到性能匹配例如选用的晶振频率较高时,存贮器的存取时间有限就该选择允许存取速度较高的芯片;选择CMOS芯片单片机电源模块构成低功耗系统时,系统中的所有芯片都应该选择低功耗的产品

(5) 可靠性及抗干扰性设计是硬件系统设计不可缺少的部分,它包括芯片、器件选择去耦滤波等。

(6) 单片机电源模块外接电路较多时必须考虑其驱动能力。驱动能力鈈足时系统工作不可靠,解决的办法是增加驱动能力增设线驱动器或减少芯片功耗,降低总线负载

(7) 系统的扩展及各功能模块的设计茬满足系统功能要求的基础上,应适当留有余地以备将来修改、扩展之需。

(8) 在考虑硬件总体结构的同时要注意通用性的问题

根据以上原则,进行硬件设计系统采用较为普及的AT89C51单片机电源模块作为系统的核心。它不但容易实现设计指标而且还有较好的性价比。由于是敎学用实验系统各元器件的选择较固定,电路设计方面也与教科书中内容相近从整体系统来看地址译码方法也只能采用地址译码法。泹在存贮器扩展、键盘接口、总线驱动器、可靠性设计等方面还应多考虑

3.2 系统各硬件电路

3.2.1 时钟电路及复位电路

单片机电源模块的复位是靠外电路实现的,在时钟电路工作后只要在单片机电源模块的RST引脚上出现24个时钟振荡脉冲(2个机器周期)以上的高电平,单片机电源模塊便实现初始化状态复位为了保证应用系统可靠地复位,通常是RST引脚保持10ms以上的高电平

本系统具有上电复位功能。电路连接如图3-1所示此电路仅用一个电容及一个电阻。系统上电时在RC电路充电过程中,由于电容两端电压不能跳变故使RESET端电平呈高电位,系统复位经過一段时间,电容充电使RESET端呈低电位,复位结束

图3-1时钟电路及复位电路

本次设计使用三种共地电源:+12V,-12V+5V,硬件设计中采用自带电源方式因为本次设计有AT89S51单片机电源模块与0832,这些芯片的工作电源电压为+5V单片机电源模块的正极接40引脚,负极(地)接20引脚0832 的19,20脚接囸极负极(地)接3脚。另外由于本机设计为小信号输出运放741采用±12V 电源。电路中在集成三端稳压器输入端、输出端与公共端之间分別接有小电容,电容值大小是查阅很多资料以及问实验室的同学得来的这里是为了更好地改变集成三端稳压片的瞬态响应,防止稳压块洎激振荡保证正常工作。原理图如图3-2所示

独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线每个按键的工作不会影响其它I/O口线的状态。

独立式按键电路配置灵活软件结构简单,但每个按键必须占用一根I/O口线因此,在按键较多时I/Oロ线浪费较大,不宜采用在本设计中可以选用,I/O接口选用P2.0~2.4 5个按键分别定义为波形选择键和频率增大减小键。按键直接与P2.0~2.4连接当键按丅时,二极管点亮指示键选通。具体电路如图3-3

在本设计中用一片74138译码器直接与单片机电源模块连接占用 P2.5~2.7接口。由译码器的输出端直接驅动七段数码管而数码管的数码端接单片机电源模块的P1.0~1.7端口。当前输出波形频率需要显示出来,因为频率范围是0HZ到50HZ所以只需要二位数码管。电路图如3-4

在D/A转换电路中,D0-D7 为数字信号输入端与单片机电源模块的P0 口(P0.0~P0.7)连接。ILE接+5V IOUT2 接地,IOUT1输出电流经运放(F007)输出一个单极性电压范围0~5V片选信号CS和转换控制信号XFER都连到P3.6,因为P3.6 WR 为外部随机存储器的写选通本设计中不用外部采集信号,所以可做0832的选通0832的“写”选通線WR1和WR2与单片机电源模块的P3.7连接,CPU对0832执行一次“写”操作把一个数据直接写入DAC寄存器,DAC0832的输出模拟信号随之对应变化这样,由CPU送来的数據PD0~PD7通过DAC0832转换成电流输出,由运放等将电流信号转换成电压信号得到了所需要的各种波形信号。

4.1 应用软件设计原则

    单片机电源模块应用系统中的应用软件是根据系统功能要求设计的应可靠地实现系统的各种功能。应用系统种类繁多应用软件各不相同,但一个优秀的应鼡系统的软件应具有下列特点:

    2、各种功能程序实现模块化、子程序化这样,既便于调试、链接又便于移植、修改。

    3、程序存储区、數据存储区规划合理既能节约内存容量,又使操作方便

    4、运行状态实现标志化管理。各个功能程序运行状态、运行结果以及运行要求嘟设置状态标志以便查询程序的转移、运行、控制都可状态标志条件来控制。

    5、经过调试修改后的程序应进行规范化除去修改“痕迹”。规范化的程序便于交流、借鉴也为今后的软件模块化、标准化打下基础。

    6、实现全面软件抗干扰设计软件抗干扰是计算机应用系統提高可靠性的有力措施。

    7、为了提高运行的可靠性在应用软件中设置自诊断程序,在系统工作运行前先运行自诊断程序用以检查系統各特征状态参数是否正常。

汇编语言的掌控系统硬件的能力强于C 语言设计出来的程序更加贴近硬件特性,往往能将硬件效能发挥到极致代码精练,效率高但是可读性差,不利于复杂算法的开发和实现可移植性差。容易产生流水线冲突排除冲突需要靠人来辅助完荿,这要求编程人员有较为丰富的开发经验和对硬件工作机制的深刻理解

由于用C 语言书写接近自然语言,其可读性强、利于理解在编淛、修改、实现算法方面比用汇编语言开发容易。易于开发和维护可移植性强。不容易发生流水线冲突编译器能提供完善的解决流水線冲突的结果。有大量现存的算法可利用适用于人机界面的开发。

综上所述由于C语言的可读性强,有利于理解编程灵活,所以本程序选用C语言

4.3 软件设计总流程图

本次设计中软件是非常重要的部分,可以说是整个设计的基础对于一个复杂的软件,一定要有一个软件總流程图以便反映各个软件子模块间的内在联系,表达各个子模块的功能根据对软件任务的讨论,得到波形发生器的软件总流程图如圖4-1

4.4 各软件模块设计

软件的整个程序在附录3。以下是按照波形发生器的功能其应用程序必须有系统复位初始化、键盘扫描与处理、定时器0中断服务程序、显示程序、波形发生程序、频率改变等几部分,现将各主要软件模块介绍如下

4.4.1 系统复位初始化

初始化程序模块主要进荇全局变量的定义、0832的选通。这部分程序如下:

4.4.2 键盘扫描与处理

在此次设计中键盘主要是用来控制波型转换、频率的增加及减少在设计鍵盘时,最关键的就是软件的设计

在检测到有按键按下时,执行一个10ms左右(具体时间应视所使用的按键进行调整)的延时程序后再确認该键电平是否仍保持闭合状态电平,若仍保持闭合状态电平则确认该键处于闭合状态。

独立式按键软件常采用查询式结构先逐位查詢每根I/O口线的输入状态,如某一根I/O口线输入为高电平则可确认该I/O口线所对应的按键已按下,然后再转向该键的功能处理程序。

键盘扫描与处理的流程图如图4-2P2.0~ P2.4分别为正弦波、三角波、方波、频率增、频率减按键。

图4-2 键盘扫描与处理流程图

本显示由2个7段LED组成L1~L2二位用于显礻频率值,显示范围是0-50满足本波形发生器的频率要求。个十位通过74138译码选通频率大小由程序计算。

以产生正弦波为例采用定点法来苼成波形,即将一个周期的正弦波按360等分为256计算出各点的正弦函数值,并转化相应的D/A转换器输入数值这样得到一个正弦函数表。通过程序将该表存于单片机电源模块的程序存储器中利用单片机电源模块的定时器来产生定时,每当定时时间到时查表得到该点对应的输絀值,然后通过D/A转换得到该点的对应电压值如此,周而复始地查表输出就得到所要的正弦波。

三角波的上升沿是从0以1为基数加到128然後下降沿从128降到0,两边对称方波的产生较简单,只要交替地将最大值和最小值输出给D/A进行转换即可它们的延续时间为周期的一半。波形的流程图如图4-3

图4-3 波形发生流程图

程序中频率改变由定时/计数器中断产生,与定时/计数器应用有关的控制寄存器有三个

1、定时控淛寄存器(TCON)

TR0和TR1:定时器运行控制位

TR0(TR1)=0 停止定时/计数器工作

TR0(TR1)=1 启动定时/计数器工作

该位根据需要以软件方法使其置“0”或“1”。

程序如下:TR0=1;//启动定时记数器工作

2、工作方式控制寄存器(TMOD)

TMOD寄存器是一个专用寄存器用于设定两个定时/计数器的工作方式,格式如下:

类别 定时/计数器1 定时/计数器2

当GATE=1 时由外中断请求信号INT0或INT1和TR的组合状态启动定时器。

若GATE=0由运行控制位TR启动定时器

当C/T=1 为计数器工作方式,C/T=0 为定时器工作方式

M1M0-工作方式选择位

M1M0=1 0 方式2 自动再装入的8位 定时/计数器

M1M0=1 1 方式3 定时/计时器1 无效,将定时/计数器0 分成两個8 位计数器

在程序中,选用方式一其定时时间计算公式见公式(4-1)

3、中断允许控制寄存器(IE)

  ET0和ET1-定时/计数器中断允许控制位。ET0(ET1)=0禁止定时/计数器中断;ET0(ET1)=1,允许定时/计数器中断

由于一个周期的点数固定,改变定时器的定时值就改变相邻两点的间隔时间,从而改变正弦波的频率正弦波和三角波的点数都是256,所以每个点数的延续时间为周期的1/256方波只有2个点,所以每个点数的延时为周期嘚1/2

程序中设置了频率初始值50HZ,按键增减1HZ其程序在键盘扫描程序段,在此不重复

   Proteus(海神)的ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC并支持单片机电源模块,元件库齐全使用方便,是不可多得的专业的单片机电源模块软件仿真系统

  ① 全部满足我们提出的单片机电源模块软件仿真系统的标准,并在同类产品中具有明显的优势

  ②具有模拟电路仿真、数字电路仿真、单片机电源模塊及其外围电路组成的系统的仿真、RS一232动态仿真、1 C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等

  ③ 目前支持的单片机电源模块类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。

   ④ 支持大量的存储器和外围芯片总之该软件是一款集单片机电源模块和SPICE分析于一身的仿真软件,功能极其强大 可仿真51、AVR、PIC。

软件的调試主要是各子程序的调试对于频率的增减按键,由于计数器为16位定时器最大值为65535,所以在加减是用255作为加减数这样频率的调节变化茭快些,但在接近最高频率时变化太快如果加减是用1作为加减数,那么在频率的高端变化平稳而在频率的低端则变化太慢。

在设计时每周期波形用了256个采样点合成,波形不是很光滑如果增加采样点,则输出的频率会变低

首先,选择目标芯片AT89C51设置开发工具命令选項,设置频率为12MHZ默认的是33MHZ。然后创建源文件把所编写的程序写入,把源文件加入工程接下来连接并编译工程,Output窗口显示错误和警告信息比如if else 不匹配,等常见错误经过修改后再进行汇编,若这时提示汇编成功保存目标文件,则说明源程序的指令使用没有错误但並不表示程序没有错误,还必须经过仿真调试仿真通过才说明程序设计正确。

综观整个设计设计涉及的内容比较多,但涉及的思路清晰各个部分都经过详细的考虑,通过这次设计我更加全面的了解到了信号发生器的实现原理。熟悉了Protel99软件的使用

在选择编程语言的時候,我觉得C语言的那种书写接近自然语言可读性强、利于理解,编制、修改、实现算法方面比用汇编语言开发容易对软件的仿真上,我选择的是Proteus软件这个以前比较陌生,但是在网上找了很多资料我觉得还是比较简单好用。对程序中问题不断修改调试最后顺利通過。

设计的整个过程我都在不断学习也遇到了不少问题,通过网上查阅资料还有老师同学的帮助我觉得还是学到了很多东西,使我更加系统的了解了电路设计和制作的全过程

另外,我也深刻了解了课外知识的重要如何能够快速的查阅对自己有用的知识,对于我们的學习和工作都起到了很大的帮助当我在设计过程中遇到一些没有学到的知识时,就需要有针对的查找资料然后对有用的资料加以吸收囷利用,不断的发展和壮大自己扩大自己的求知欲,阔宽自己的知识面这样对于自己的全面发展将会起到巨大的推动作用。

在整个设計的过程中我学会了如何分析问题,如何利用身边已有的条件去解决问题但在整个实验中仍可以看出自己无论在理论还是动手方面都存在着有些不足,这点仍需要在将来的学习中不断的进步,希望经过长期的锻炼自己将成为个优秀的电子制作者。

[3] 蔡美琴张为民等.MCS-51系列单片机电源模块系统及其应用[M]. 北京:高等教育出版社,1988:112-175.

[5] 康华光陈大钦.电子技术基础模拟部分(第四版)[M]. 北京:高等教育出版社,1998:394-467.

[6] 彭容修.数字电子技术基础[M]. 武汉:武汉理工大学出版社.

[10] 江明.单片机电源模块控制多功能信号发生器[J].西安电子科技大学学报,200416(4):19-17.

[11] 徐承忠.一个单片微型计算机超低频信号发生器[J].南京理工大学学报(自然科学版),1987,29(12A):72-80.

[12] 赵兴亮.一种数字式移相信号发生器的设计与实现[J].自动化仪表,20079

[13] 景国新.基于DDS技术的函数发生器设计与实现[J].实验科学与报告,2006,8

[18] 刘庆雄.低频信号发生器的设计[J].北京航空航天大学学报,19897(3):17-25.

}

如果你是对答案或其他答案精选點评或询问请使用“评论”功能。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载文章观点仅代表作者本人,不代表电子发烧友网立场文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题请联系本站作侵删。 

}

我要回帖

更多关于 单片机电源模块 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信