社区
下载资源悬赏专区
帖子详情
利用按键控制点阵进行十进制数字显示下载
weixin_39821620
2019-08-24 05:30:26
利用键盘控制点阵进行十进制数字显示,利用键盘控制点阵进行十进制数字显示
相关下载链接:
//download.csdn.net/download/wa78op2/5620685?utm_source=bbsseo
...全文
12
回复
打赏
收藏
利用按键控制点阵进行十进制数字显示下载
利用键盘控制点阵进行十进制数字显示,利用键盘控制点阵进行十进制数字显示 相关下载链接://download.csdn.net/download/wa78op2/5620685?utm_source=bbsseo
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
利用
按键控制
点阵
进行
十进制
数字
显示
利用
键盘控制
点阵
进行
十进制
数字
显示
,
利用
键盘控制
点阵
进行
十进制
数字
显示
jisuanqi.rar_16进制加减_jisuanqi_jisuanqi c飞思卡尔_单片机 计算器
用飞思卡尔GP32单片机实现普通
十进制
计算器的功能,按键采用4×4键盘,
显示
采用16×2
点阵
式字符LCD,键盘符号定义如下:左下角的“<-”表示退格,即删除键,按一次删除LCD的最后一个
数字
。 LCD的第一行
显示
运算式,第二行
显示
运算结果。其他功能同普通计算器相同(只实现加减乘除四则运算功能)。 扩展功能:负数、小数运算。复合运算。连续运算。2进制、8进制运算。
单片机系统课程设计16×16-LED
点阵
.doc
单片机系统课程设计报告 16*16
点阵
设计 专 业: 测控技术与仪器 学 生 姓 名: 刘宝琪 韦魏 学 号: 2009024211 2008050528 指 导 教 师: 张秀峰 完成日期:2011 年 12 月30日 目录 一 设计任务 2 二 设计方案 3 1 任务分析 3 2 方案设计 3 3 系统构图 4 三 系统硬件设计 4 1 硬件选择 4 2单片机的最小系统 5 3
点阵
驱动设计 5 4 led
点阵
的介绍 6 5 led
点阵
显示
模块的方法 7 四 系统软件设计 8 1主程序设计 8 2 主程序流程图 9 五、调试及性能分析 9 1 调试分析 9 2 性能分析 10 六、心得体会 10 七、参考文献 11 附录一:系统原理图 11 附录二:程序清单 12 一 设计任务 设计一个16×16的LED
点阵
图文
显示
屏,可
显示
图形和文字,
显示
图形和文字应稳定、 清晰,各点亮度均匀。图形和文字
显示
有静态、移入和移出等
显示
方式。掉电时能保 存
显示
的信息。 选做:设计系统与上位机的串行通信电路,用上位计算机控制LED
显示
器的
显示
内容 。 二 设计方案 1 任务分析 LED
点阵
显示
屏是
利用
发光二极管
点阵
模块或像素单元组成的平面式
显示
屏幕。它 具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优 点。并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告 宣传。LED
显示
屏经历了从单色,双色图文
显示
屏到现在的全彩色视频
显示
屏的发展过程 ,自20世纪八十年代开始,LED
显示
屏的应用领域已经遍布交通、电信、教育、证券、广 告宣传等各方面。 LED
点阵
显示
屏可以
显示
数字
或符号,通常用来
显示
时间、速度、系统状态等。文章 给出了一种基于MCS-51单片机的16×16
点阵
LED
显示
屏的设计方案。包括系统具体的硬件设计方案,软件流程图和部分汇编语言 程序等方面。在负载范围内, 只需通过简单的级联就可以对
显示
屏
进行
扩展,是一种成本低廉的图文
显示
方案。 2 方案设计 按照系统设计的功能的要求,采用动态扫描方式。动态扫描方式是逐行轮流点亮, 这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。以16×16
点阵
为例,把所 有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接 法),先送出对应第1行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定的时间 ,然后熄灭;再送出第2行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄 灭;…第16行之后,又重新燃亮第1行,反复轮回。当这样轮回的速度足够快(每秒24次 以上),由于人眼的视觉暂留现象,就能看到
显示
屏上稳定的图形。该方法能驱动较多 的LED,控制方式较灵活,而且节省单片机的资源。 采用扫描方式
进行
显示
时,每一行有一个行驱动器,各行的同名列共用一个驱动器。显 示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。
显示
时要把一行 中各列的数据都传送到相应的列驱动器上去,这就存在一个
显示
数据传输的问题。从控 制电路到列驱动器的数据传输可以采用并列方式或串行方式。显然,采用并行方式时, 从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并列传输的 方案是不可取的。 3 系统构图 三 系统硬件设计 1 硬件选择 此次设计的硬件选择如下: AT89C51芯片、LED、74LS138、LED的驱动三极管、电阻等一些单片机外围应用电路组 成。 2单片机的最小系统 ATMEL公司生产的AT89C51单片机它是硬件电路的核心部分,时钟电路晶振使用12MHz,复 位电路采取按键复位方式。 单片机系统的晶振电路 单片机系统的复位电路 3
点阵
驱动设计 74ls138作为列驱动 74LS138 为3 线-8 线译码器,其工作原理如下: 当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为 低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低 电平译出。
利用
G1、/(G2A)和/(G2B)可级联扩展成 24 线译码器;若外接一个反 相器还可级联扩展成 32 线译码器。 用两片74ls138接成的4线——16线译码器 第(1)片74LS138工作而第(2)片74LS138禁止,将的0000~0111这8个代码译成8个低 电平信号。而式(3.3.9)表明时,第(2)片74LS138工作,第(1)片74LS138禁止,将 的1000~1111这8个代码译成8个低电平信号。这样就用两个3线-8线译码器扩展成一个 4线-16线的译码器了。 同时用P1口控制74ls138的输入 用单片机的P0口,P2口作为行驱动 注意:必须要加上拉电阻。 单片机的自身驱动能力很小,必须要接大电阻
进行
分压,才能正常
LED
点阵
矩阵时钟3216
16*32
点阵
数字
钟及汉字
显示
附:
点阵
时间
显示
源程序 //===================================================================================// //*标题:16*32
点阵
数字
钟
显示
程序 //*说明:时钟信号产生采用DS1302,列采用74HC595驱动(共4个),行驱动采用4-16线译码器74LS154 //*功能:通过动态扫描
显示
时钟,可
显示
时,分,秒,日期中的月和日 //*作者:HEY //*日期:2006-05-29 //*邮箱:billy3416@163.com //*备注:此是我刚接触单片机时的一个小制作 程序和电路设计上难免有不足之处 请谅解 //===================================================================================// #include #include #define uchar unsigned char //===================================================================================// //用到的引脚及端口定义 //===================================================================================// sbit SERIALIN_0=P2^0; //定义P2.0为列向第1个74HC595的DATA输入 sbit SERIALIN_1=P2^1; //定义P2.1为列向第2个74HC595的DATA输入 sbit SERIALIN_2=P2^2; //定义P2.2为列向第2个74HC595的DATA输入 sbit SERIALIN_3=P2^3; //定义P2.3为列向第2个74HC595的DATA输入 sbit CLOCK_DATA=P1^0; //定义P1.0为DS1302的DATA端口 sbit CLOCK_RST=P1^1; //定义P1.1为DS1302的复位输出端口 sbit CLOCK_SCLK=P1^2; //定义P1.2为DS1302的时钟信号状态控制 sbit K0=P1^3; //K0为按键1,用来选择要调整时间的选项(时和分) sbit K1=P1^4; //K1为按键2,执行加1 sbit CLOCK=P2^4; //74HC595的移位时钟控制 sbit LATCH=P2^5; //74HC595的锁存输出时钟控制 void control(); //调整时间控制函数 void time(); uchar CLOCK_TIME[3]={0,0,0}; //定义时钟时间数据存储区,分别为(时,分,秒) uchar BUFFER[8]={0,0,0,0,0,0,0,0}; //
显示
缓冲区 uchar YEAR[3]={0,0,0}; //定义时钟年月日数据存储区 uchar temp[4]={0,0,0,0}; //定义74HC595的移位缓冲区 uchar FLASH_STOP; //
显示
小时和分钟之间的两点控制位 uchar sec_flash; //用单片机定时器模拟的一秒(用来控制小时和分中之间的两点) //==============================================
简单实例助你快速掌握PROTEUS的用法
子情境1:简单实例助你快速掌握PROTEUS的用法 12 1.1 子情境内容:让单片机动起来,用单片机控制一个LED灯闪烁发光。 15 1.2 子情境目标: 15 1.3 子情境步骤 15 1.3.1步骤一: PROTEUS电路设计 15 1.3.2步骤二:源程序设计与生成目标代码文件 20 (1)程序流程图 20 (2)源程序设计 21 1.3.3 步骤三:PROTEUS仿真 22 1.4 扩展练习 24 子情境二:用发光二极管实现流水灯乒乓球效果 25 2.1 子情境目标: 25 2.2 子情境步骤 25 2.2.1 步骤一: PROTEUS电路设计 25 2.2.2步骤二:源程序设计与目标代码文件生成 26 (1)程序流程图 26 (2)源程序设计 27 2.2.3 步骤三:PROTEUS仿真 29 2.4 扩展练习 29 子情境三:数码管动态扫描 30 3.1子情境内容:
利用
动态扫描让四位数码管稳定的
显示
1234。 30 3.2 子情境目标: 30 (1)掌握单片机控制四位数码管的动态扫描技术,包括程序设计和电 30 3.3 知识点链接 30 3.4 任务步骤 31 3.4.1 步骤一:PROTEUS电路设计,单片机控制四位共阴极数码管动态扫描
显示
的原理图如图5-17所示。 31 3.4.2 步骤二:源程序设计与目标代码文件生成 33 (1)程序流程图 33 (2)源程序设计 33 3.4.3 步骤三:PROTEUS仿真 35 3.5 扩展练习 36 子情境四:定时/计数器的使用——方波发生器 37 4.1子情境内容:用AT89C51单片机定时/计数器0的定时功能可构成一简单的方波发生器,实现周期为2s的方波,并能在虚拟示波器上直观地
显示
波形。 37 4.2 子情境目标: 37 4.3 知识点链接 37 4.4.1 步骤一:PROTEUS电路设计,实现周期为2s的方波的原理图如图5-22所示。 37 (1)程序流程图 38 (2)源程序设计 38 4.4.3 步骤三:PROTEUS仿真 39 4.5 扩展练习 41 子情境五:单片机外部中断仿真 42 5.1子情境内容:外部中断是单片机的重要内容,本子情境用外部中断功能改变流水灯和数码管的
显示
状态。 42 5.2 子情境目标: 42 (1)理解单片机的中断原理及中断过程 42 (2)用PROTEUS设计、仿真单片机的外部中断。 42 5.3 知识点链接 42 5.4 任务步骤 42 5.4.1 步骤一:PROTEUS电路设计,实现外部中断功能改变流水灯和数码管的
显示
状态的原理图 42 5.4.2 步骤二:源程序设计与目标代码文件生成 43 (1)程序流程图 43 (2)源程序设计 43 5.4.3 步骤三:PROTEUS仿真 45 5.5 扩展练习 47 主程序中数码管从0至9顺序
显示
数字
,中断发生后(在单片机P3.2引脚上有低电平),数码管从9至0反序
显示
。 47 子情境六:直流电机正反转 48 6.1子情境内容:用单片机AT89C51控制直流电机正反转。 48 6.2 子情境目标: 48 (1)掌握趋动电机正反转的电路 48 (2)用PROTEUS实现电机正反转电路的设计,并
进行
实时交互仿真 48 6.3 知识点链接 48 6.4 任务步骤 48 6.4.1 步骤一:PROTEUS电路设计,实现用单片机AT89C51控制直流电机正反转原理图 48 6.4.2 步骤二:源程序设计与目标代码文件生成 50 (1)程序流程图 50 (2)源程序设计 51 6.4.3 步骤三:PROTEUS仿真 52 6.5 扩展练习 53 子情境七:用ADC0809实现电压表 55 7.1子情境内容:
利用
单片机AT89C52和ADC0809设计一个
数字
电压表,能够测量0-5V之间的电压值,用四位数码管
显示
。 55 7.2 子情境目标: 55 (1)掌握PROTEUS中电压探针和电压表的使用方法 55 (2)通过制作简易电压表,学会AD转换芯片在单片机应用系统中的硬件接口技术和编程方法。 55 7.3 知识点链接 55 了解ADC0809芯片的功能以及使用方法 55 (1)功能:ADC0809芯片为8通道模/数转换器,可以和单片机直接接口,将IN0~IN7任何一通道输入的模拟电压转换成八位二进制数,在时钟为500KHZ时,一次变换时间约为100us。 55 (2)使用方法:28脚双列直插式封装如图5-39所示,各引脚功能如下: 55 7.4 任务步骤 56 7.4.1 步骤一:PROTEUS电路设计,
利用
单片机AT89C52和ADC0809设计一个
数字
电压表的原理图如图5-40所示。 56 7.4.2 步骤二:源程序设计与目标代码文件生成 58 (1)程序流程图 58 (2)源程序设计 59 7.4.3 步骤三:PROTEUS仿真 62 7.5 扩展练习 66 子情境八:1602液晶
显示
器 67 8.1子情境内容:
利用
单片机AT89C52控制液晶
显示
器(Liquid Crystal Display,简称为LCD)实时
显示
。在1602液晶的第一行
显示
“I LOVE MY FAMILY”,在第二行
显示
“WWW.YZCIT.CN”。 67 8.2 子情境目标: 67 (1)掌握1602液晶与单片机的接口电路 67 (2)通过控制LCD,学会LCD液晶模块在单片机应用系统中的编程方法。 67 8.3 知识点链接 67 了解LCD1602芯片的功能以及使用方法 67 (1)功能:本情境中所使用的液晶
显示
器型号为1602,意思是每行
显示
16个字符,一共可以
显示
两行。此液晶只能显ASCII字符,如
数字
、大小写字母、各种符号等。 67 (2)使用方法:1602液晶的引脚图 67 8.4 任务步骤 68 8.4.1 步骤一:PROTEUS电路设计,
利用
单片机AT89C52控制液晶
显示
器实时
显示
的原理图如图5-46所示。 68 8.4.2 步骤二:源程序设计与目标代码文件生成 69 (1)程序流程图 69 (2)源程序设计 69 8.4.3 步骤三:PROTEUS仿真 71 8.5 扩展练习 72 子情境九:简易秒表制作 73 9.1子情境内容:制作简易秒表,
利用
按键构成键盘实现秒表的启动、停止与复位,
利用
LED数码管
显示
时间。 73 9.2 子情境目标: 73 (1)通过简易秒表的制作,进一步熟悉LED数码管与单片机的接口电路 73 (2)学习定时/计数器、中断技术的综合运用并会使用简易键盘 73 9.3 知识点链接 73 9.4 任务步骤 73 9.4.1 步骤一:PROTEUS电路设计,简易秒表的原理图如图5-51所示。 73 9.4.2 步骤二:源程序设计与目标代码文件生成 74 (1)程序流程图 74 (2)源程序设计 76 9.4.3 步骤三:PROTEUS仿真 79 9.5 扩展练习 81 此子情境设计的秒表只能
显示
两位整数,如果要记录110跨栏12:88秒的成绩,则必须再增加两位数码管来
显示
小数位。想想硬件和软件应该做如何改动。 81 子情境十:
点阵
LED简单图形
显示
技术 82 10.1子情境内容:
利用
单片机AT89C52在8×8
点阵
上逐次
显示
心形、圆形和菱形图。 82 10.2 子情境目标: 82 (1)通过学习
点阵
LED
显示
技术,掌握单片机与
点阵
的接口电路。 82 (2)进一步熟悉单片机I/O口的运用方法,了解动态
显示
的编程方法 82 10.3 知识点链接 82 10.4 任务步骤 83 10.4.1 步骤一:PROTEUS电路设计,LED
点阵
的原理图如图5-56所示。 83 10.4.2 步骤二:源程序设计与目标代码文件生成 84 (1)程序流程图 84 (2)源程序设计 85 10.4.3 步骤三:PROTEUS仿真 87 10.5 扩展练习 88
下载资源悬赏专区
12,889
社区成员
12,441,418
社区内容
发帖
与我相关
我的任务
下载资源悬赏专区
CSDN 下载资源悬赏专区
复制链接
扫一扫
分享
社区描述
CSDN 下载资源悬赏专区
其他
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章