• 驱动继电器实验


                           


     

    学生实验报告

     

     

     

     

     

     

     

    课程名称:单片机原理与应用 

    专业班级:嵌入式14103班  __

    姓    名:_赵存档___________

    学    号:14160310317      

     

     

    2015--2016    学年第 1 学期

     

     


     

    实验项目( 三 ) — 预习报告

    项目

    名称

    驱动继电器实验

    实验

    目的

    要求

    目的:学会本次实验是如何进行实现的,以及对实验原理的理解。

    要求:认真完成本实验的keil代码的编写,proteus电路仿真图的设计。 小组内独立完成实验项目内容。

    实验

    内容

    原理

      驱动继电器的实验:

    实验内容:先在proteus仿真软件中画好电路图,然后在keil中编写驱动继电器的代码。进行调试代码是否正确,如果正确设置好晶振频率,生成hex文件,加载到proteus 51单片机中去。

    实验原理:继电器工作跟蜂鸣器类似,要加一个脉冲信号,输出高电平让继电器激磁,输出低电平让继电器消磁,最后加一个循环。For循环中,定义变量count

    来让继电器运行多少次。

        

    预习过程中的疑问以及疑问  解答

    关于驱动继电器的实验:

    疑问一:继电器电路中,给继电器并联一个二极管是什么意思?

    解答:防止直流继电器断开时产生的反电动势对元件照成损坏,消耗反电动势,续流的作用。

    疑问二:继电器串联一个电阻有啥作用?

    解答:保护电路,防止二极管被击穿。

    疑问三:让继电器激磁6s,消磁3s该怎么写?

    解答:void delay(int x){ int i,j; for(i=0;i<x;i++)for(j=0;j<1200;j++);}Void   count(int count.int High,int Low){ int i; for(i=0;i<count,i++);{   relay=1;delay(300);

    Relay=0;delay(600);}

    疑问四:delay延时函数是怎么计算的?

    解答:void delay(int x){ int i,j; for(i=0;i<x;i++)for(j=0;j<1200;j++);}   这里12MHZ的晶振,一个机器周期12*1/12=1us,一个for循环8us,这里8*1200约等于10ms

    总的延时 x*10ms

    实验项目( 三 ) — 实验报告

    项目

    名称

    驱动继电器实验

    指导教师

    高照玲

    实验室

    教室

    实验日期

    2015/10/14

    分组

    情况

    赵存档、

    成    绩

    实验步骤(算法、代码、方法)给出流程图

    驱动继电器的实验:

    流程图:

        

    主要实现代码:

    继电器激磁消磁代码:

    void   Relay(int count,int High,int Low)

            {

                   int i;

                   for(i=0;i<count;i++)

                   {

                          relay = 1;

                          delay(High);

                          relay = 0;

                          delay(Low);

                   }

            }

    延迟代码:

    void   delay(int x)

            {

                   int i,j;

                   for(i=0;i<x;i++)

                   for(j=0;j<60;j++);

            }

                 

    实验结果(结论及

    分析)

    通过实验,知道怎么样给单片机产生一个脉冲信号:一段高电平,一段低电平。

    编写代码的时候,知道怎么写一个延迟函数也就是for循环:先知道机器周期12MHZ的晶振是12*1/12=1us。X * 第2个for循环里面的数字约等于几ms;

    Delay()函数里面填写 X数字。

    画电路的时候注意一些要点:加不加电阻和二极管之类的。

    编写代码的时候:延时函数的第一个for后面没有分号的,不然会照成延时不对。

    成绩

  • 相关阅读:
    Intellijidea建javaWeb以及Servlet简单实现
    PHP关于文件与文件夹(1) 写入文件 文件权限 三、锁定文件
    mysql 时间戳格式化函数from_unixtime使用说明
    Ansible 2.0公布
    如何获取板子上独有的ID号EXYNOS4412/Imx6ul【转】
    2.7 xargs和exec详解【转】
    __setup 在内核中的作用【转】
    Linux __setup解析【转】
    c语言中 %p的含义【转】
    函数 devm_kzalloc()【转】
  • 原文地址:https://www.cnblogs.com/zhaocundang/p/4925747.html
Copyright © 2020-2023  润新知