单片机技术应用项目化教程(C语言版)(第2版) 课件 任务3.2_第1页
单片机技术应用项目化教程(C语言版)(第2版) 课件 任务3.2_第2页
单片机技术应用项目化教程(C语言版)(第2版) 课件 任务3.2_第3页
单片机技术应用项目化教程(C语言版)(第2版) 课件 任务3.2_第4页
单片机技术应用项目化教程(C语言版)(第2版) 课件 任务3.2_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目3交通灯控制系统任务3.2数码管静态显示00-99(IO扩展)明确任务任务:采用I/O扩展技术实现数码管静态驱动显示2位数据,循环显示00-99。

本任务要求静态显示2位数据,显然需要2个数码管。如果按照任务3.1单片机直接驱动数码管静态显示方式,那么需要16个口,是对单片机资源的浪费。知识链接

一、74HC164简介74HC164是高速硅门CMOS器件,与低功耗肖特基型TTL器件的引脚兼容。8位边沿触发式移位寄存器,串行输入数据,并行输出。74HC164主要用于数字电路和LED显示控制电路中。

数据通过两个输入端(A或B)之一串行输入。任何一输入端都可以用作高电平使能端,控制另一输入端的数据输入。两个输入端或者连接在一起,或者把不用的输入端接高电平,一定不要悬空。74HC164为高位先输入低位最后输入的左移型串行输入方式。CLK上升沿传递数据,所以数据更新在CLK低电平时。二、74HC164驱动程序sbitDAT=P1^0;//可以更换其他端口sbitCLK=P1^1;//可以更换其他端口sbitCLR=P1^2;//可以更换其他端口1.定义端口输入输入端A和B连接在一起作为数据输入DAT。

voidsend_byte(unsignedchardat_byte)

{ unsignedchartemp,i;temp=dat_byte;for(i=0;i<8;i++)//传输8位

{

CLK=0; DAT=temp&0x80;

//取高位数据,低电平更新

CLK=1;//上升沿送出数据

temp<<=1;//

下一位数据

}}2.驱动编写三、硬件电路图四、软件设计与编程

(1)数码管显示一个00-99任意数字

利用取余“%”,取整“/”运算符号进行计算,个位数和十位需要显示数字。找到相对的显示编码,通过send_byte驱动函数,进行输出显示。send_byte(SMG[shi]);send_byte(SMG[ge]);//显示数据ge=count%10;//个位shi=count/10;//十位数据计算处理技巧count++;if(count>99)

count=0;

(2)循环显示00-99数字任务实施1.学生分组,制定方案。2.查阅资料,设计电路原理图,列出元件清单。3.准备元件及工具,搭接电路。4.注意安全。评价总结1.学生根据自己实施

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论