首页 范文大全 古典文学 职场知识 中国文学 公文书信 外国名著 寓言童话 百家讲坛 散文/诗歌 美文欣赏 礼仪知识 民俗风情
  • 工作总结
  • 工作计划
  • 心得体会
  • 竞聘演讲
  • 会议发言
  • 爱国演讲
  • 就职演说
  • 开业开幕
  • 思想学习
  • 征文演讲
  • 经验材料
  • 述职报告
  • 调研报告
  • 工作汇报
  • 年终总结
  • 申报材料
  • 学习体会
  • 企划方案
  • 活动方案
  • 技巧经验
  • 模板范例
  • 思想宣传
  • 经济工作
  • 工作报告
  • 组织人事
  • 反腐倡廉
  • 慰问贺电
  • 先进事迹
  • 思想汇报
  • 入党申请书
  • 党会发言
  • 先进性教育
  • 入团申请书
  • 个人简历
  • 演讲稿
  • 调查报告
  • 实习报告
  • 和谐社会
  • 观后感
  • 读后感
  • 作文范文
  • 自我鉴定
  • 讲话稿
  • 自查报告
  • 单片机汇编,红绿灯显示实验报告

    时间:2020-09-14 11:41:56 来源:蒲公英阅读网 本文已影响 蒲公英阅读网手机站

    相关热词搜索:红绿灯 单片机 汇编

     实 实

      验

      报

      告 学生姓名:

     学 号:

      指导教师:

     实验地点:

     实验时间:2018 年 年 4月 月 2 日 实验 红绿灯 显示 实验 一、实验目得:

     1. 掌握程序控制指令。

     2. 掌握分支程序、子程序、循环程序得编写方法。

     3. 掌握软件延时得方法、了解机器周期与指令周期得概念. 4. 了解“静态显示"得含义。

     二、实验内容: 在显示实验得基础上,如果将第 7 位,第 3 位,第1位分别瞧成红灯、黄灯与绿灯,红灯 5 秒(对应位显示0)后,显示黄灯 1 秒(对应位显示 0),再显示绿灯 3 秒,编写对应程序,程序要求,延时使用子程序,最好使用标志位。其它内容见显示实验 三、实验步骤:

     1. 程序清单:

     a) Dp yD isp la y 、 c :

     #inc lude<r e g 5 1 、h>

     typedef uns i g ned

     ch a r

     u8; t y pedef uns i g n ed int u 1 6 ;

     # d ef i ne Dpy P0 s bit L S A = P2^2; s b i t LSB =

     P2^ 3 ; sb it

     LS C = P2 ^ 4; u8 code array[ 1 7 ]

     = {0 x3f , 0x06 , 0x5b ,

     0x4 f ,

     0 ﻩd6x0 ,66xﻩ , 0x7d,

     0x07 ,

      0 ﻩ x 7f ,

     0x6 f,

     0 x 77 ,

     0x 7c ,

     ﻩﻩ ﻩﻩﻩ

     0 x39 , 0x5e ,

     0 x 7 9 , 0x 71 ,

     ﻩ

      0x00 };

     ﻩ

     v oi d

     l s( u 8

     c ,

     u8 b, u 8

     a )

     { ﻩ L S A

     = a ;

     ﻩ L S B

     =

     b;

     L SC

     = c ;

     } v o id del a y(u16

     i )

     {

      while ( i>0)

     i - — ;

     } v oid Dpy 1 D is play (u 8 i) {

      ls(1 , 1 ,1 );

      ypDﻩ = arra y [i] ;

      d e la y (100 )

     ;

     Dpy =

     0 x 0 0; } v oid D p y2 D isplay ( u8 i) {

      ls (1 ,1 ,0 ); a = ypDﻩ rr a y[i];

      delay ( 100);

     ypDﻩ = 0 x00; } v oi d

     Dpy3Displa y( u 8

     i)

     {

     slﻩ (1, 0 , 1 )

     ; = ypDﻩ

     a rray [ i ] ;

     del ay (10 0);

      Dpy =

     0 x00 ;

     }

     void D p y 4 D i sp la y ( u8

     i)

     {

     ls( 1, 0 , 0 )

     ;

     D py

     =

     array[ i];

      dela y ( 10 0 );

      Dpy = 0x00; }

     v oid

     Dp y 5Display (u 8 i ) {

     ls(0,1 , 1) ;

      D py =

     a rra y [ i ];

      del a y (1 00);

     D py =

     0 x 0 0; }

     v oi d

     D py6Displ a y(u8 i) {

     1,0(slﻩ , 0) ;

     ﻩ D py = arr a y[i ] ;

     de l a y (10 0 ) ;

     ypDﻩ

     = 0x00 ;

     } void

     Dp y7D i spl a y ( u 8

     i )

     {

      l s ( 0, 0,1 );

      Dp y

     =

     array [ i ];

      ;)001(yaledﻩ D py =

     0 x 00;

     } v oid Dpy8Display ( u8

     i)

     { slﻩ ( 0 ,0, 0 );

     Dﻩ p y = arr ay [ i ] ;

     d e lay(100) ;

      ;00x0 = ypDﻩ

     } void

     D p yD is pl a y ( u8

     a, u 8

     b ,

     u8 c ,

     u8 d, u 8 e, u8 f ,

     u 8

     g,

     u8

     h )

     { iD1ypDﻩ s p l ay ( a );

     iD2ypDﻩ sp l ay( b) ;

     ﻩ D py 3 Display ( c );

     siD4ypDﻩ p lay ( d )

     ;

     D py 5Di s p l ay(e );

      D py6D i spla y (f )

     ;

     Dpy 7 Dis p l ay (g) ;

      D py8Displa y (h );

     }

     b) main 、 c :

     #inclu d e 〈 r e g5 1、h〉

     t yped e f unsig n ed c h a r u8 ;

     ty p e def unsi gn ed in t

     u16; extern voi d D p yDis p la y( u8

     a , u 8 b ,

     u8 c, u8 d, u8 e, u8

     f , u8

     g ,

     u8 h) ;

     vo i d main() {

     u 16

     i, j, n ;

      n

     =

     108; ﻩﻩ

     wh ile ( 1 )

      {

     ﻩ f or ( j=10 ; j>0 ; j-—)

     {ﻩﻩ

     ﻩ fo r

     ( i=0 ;

     i < n ; i+ + )

      ﻩﻩ D py D isp lay ( j—1 , 16 , 16,16,16,16 , 1 6 ,16 );

     ﻩ

     }

      fo r( j=2; j > 0; j——)

      {

     for (i= 0 ;

     i 〈 n; i++ )

     ﻩﻩ Dp yDi spl ay ( 16 , 16,j-1,16,16,16 , 16,16) ;

      }

      ofﻩ r( j= 5; j > 0 ;j -— )

      ﻩ {

     ofﻩ r

     ( i= 0; i< n ;

     i++)

      pDﻩﻩ yD i sp la y (16 , 16,1 6,1 6, j —1 , 16 , 16,1 6);

     ﻩ ﻩ } ﻩﻩ }

     } 2. 实验现象: 开发板数码管第一位从 9 逐秒递减至0后,第三位从 1 逐秒递减至 0,之后第五位从 4 逐秒递减至 0。

     3. 实验原理:

     a) 通过发送段码选定某位后向该位发送位码以点亮一根数码管。

     b) 数码管以非常短得时间重复点亮,利用人得视觉暂留给人以稳定显示字符之感.

     c) 利用for 循环使数码管稳定显示,并使数字逐秒减少。

     4. 实验中得注意事项、遇到得问题以及总结:

     a) 点亮数码管得循环函数中语句尽可能少,防止数码管显示过程中得闪烁。

     b) 最好制作编码表,设置输入值与显示字符得关系,后续即可通过查表完成显示,可大大减小工作量。

     c) 利用 for 控制每位显示可大大减少代码量. 5. 实验改进方向与设想 可外接不同色LED模拟红绿灯。

    • 范文大全
    • 职场知识
    • 精美散文
    • 名著
    • 讲坛
    • 诗歌
    • 礼仪知识