欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    单片机原理及应用 C51语言课件.ppt

    • 资源ID:1801556       资源大小:2.75MB        全文页数:36页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机原理及应用 C51语言课件.ppt

    2022/12/19,1,第4章 80C51人机接口技术,LED、数码管及蜂鸣器接口技术,4.1,按键及键盘接口技术,4.2,字符型LCD显示器接口技术,4.3,单片机最小系统AT89S52,LED数码管蜂鸣器LCD,按键键盘开关,每根口线最大可吸收10mA的(灌)电流 P0口吸收电流的总和不能超过26mA P1、P2和P3每个口吸收电流的总和限制在15mA 4个口所有口线的吸收电流总和限制在71mA,2022/12/19,3,4.1 LED、数码管及蜂鸣器接口技术,4.1.1 LED接口,LED的特性及其灌电流驱动,LED典型工作点:1.75V,10mA。单个LED驱动特性如下图:,多个LED,并口直接驱动 限流与上拉电阻共享驱动,2022/12/19,5,void main(void) uchar i; P21 = 1; while(1) for(i=0;i8;i+) DataPort= ScanCodei; DelayMs(500); ,【例4-1】,2022/12/19,6,数码管,4.1.2 数码管接口,2022/12/19,7,晶体三极管驱动,2022/12/19,8,达林顿阵列驱动,2022/12/19,9,常序相接时,uchar code SegCode = / 段码0 x3F,0 x06,0 x5B,0 x4F;,共阴极字形“1”编码示例:06H,2022/12/19,10,uchar code SegCode = / 段码0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90; uchar code BitCode= 0 xfe,0 xfd,0 xfb,0 xf7; / 位码,uchar DispBuf4; /显示数字要先送入此缓冲数组,void BufToSeg(void) uchar i; for(i = 0; i 4; i+) P0=SegCodeDispBufi; /送段码 P2=BitCodei; /送位码 DelayMs(1); ,【例4-2】部分代码,非常序相接时,字形“1”常序编码:06H,字形“1”该序编码:A0H,uchar code SegCode =0 xAF,0 xA0,0 xC7,0 xE5; uchar code BitCode= 0 x04,0 x20,0 x10,0 x08;,void BufToSeg(void)不变!,2022/12/19,12,蜂鸣器及其接口,有源蜂鸣器:接额定电压就可连续发声,无源蜂鸣器:接入变频方波,可得到不同音调的声音,4.1.3 蜂鸣器接口,例:以频率800Hz发声,发声时间250ms,静音1000ms。,while (1) for (j = 400; j 0; j-) /发声250ms BEEP = BEEP; /取反及调用指令占用约3us d622us(); /共延时625us,周期1250us,频率800Hz for (j = 400*4; j 0; j-) /静音1000ms BEEP = 1; /关闭蜂鸣器 d622us(); ,4.2.1 独立按键接口,按键及其消抖,简单开关及输入接口,4.2 按键及键盘接口技术,2022/12/19,15,开关闭合与断开时的抖动及去抖电路,按键较少时:去抖电路,按键较多时:软件延时,通常为10ms,2022/12/19,16,矩阵键盘接口电路,4.2.2 键盘接口,逐行扫描法,判有无键按下。将列线设置为输出口,输出全0(所有列线为低电平),然后读行线状态,若行线状态不全为高电平,则可断定有键按下。 判按下哪个键。先置列线C0为低电平,其余列线为高电平,读行线状态,如行线状态不全为“1”,则说明所按键在该列;否则所按键不在该列,再使C1列线为低电平,其它列为高电平,判断C1列有无按键按下。其余类推。 获得相应键号。键号:键号 = 行首号+列号。行首号为行数乘以行号。根据键号就可以进入相应的键功能实现程序。,线反转法,例如按下“2”号键,先使列线输出全“0”,读行线,结果为E0H;再使行线输出全“0”,读列线,结果为0BH。将2次读到的结果拼成一个字节,即EBH,该值称为键值。,4.3 字符型LCD显示器接口技术,4.3.1 LCD1602模块的外形与引脚,引脚01、02:VSS、VDD,接地和+5V引脚引脚03:VL,对比度调整端,接地时对比度最高引脚04:RS,1-数据寄存器/0-命令寄存器引脚05:RW,1-读/0-写引脚06:E,使能端引脚0714:D0D7,8位双向数据线引脚15、16:BLA、BLK,背光正、负极,LCD1602模块组成,4.3.2 LCD1602模块的组成,对于16x2字符的显示要增加HD44100驱动器,HD44780本身可以驱动16x1字符或8x2字符,HD44780,HD44780由三部分构成:,CGROM 字符发生器,存储不同的点阵字符图形表,每个字符都有固定的代码。CGRAM 自定义字符发生器,可定义8个字符图形。DDRAM 显示缓冲区。,例:代码41H显示字符“A”。,CGROM,CGRAM,可以自定义8个字符: 07 或8-15,CGRAM的内容:,unsigned char code WeekWord= ,LoadCgram(WeekWord);DispChar(0,1,0);LoadCgram定义为: WCmd(0 x40); for(i=0;i64;i+) WDat(ptcgrami); ,DDRAM有80个单元,但第1行仅用00H0FH单元,第2行仅用40H4FH单元,4.3.3 LCD1602模块的命令,4.3.4 LCD1602模块的命令,接口电路,驱动程序,sbit RS = P2 0; /*命令/数据选择*/sbit RW = P2 1; /*读/写选择*/sbit EN = P2 2; /*高到低使能*/,uchar code dis1= WELCOME TO;uchar code dis2= HUST ZDH;,uchar code WeekWord= 0 x18,0 x18,0 x07,0 x08,0 x08,0 x08,0 x07,0 x00, /,代码 0 x00 0 x00,0 x00,0 x00,0 x00,0 xff,0 x00,0 x00,0 x00, /一,代码 0 x01- ;,void WCmd(uchar cmd)Busy();RS = 0;RW = 0;EN = 1;P0= cmd;D10us();EN = 0;,写命令函数:,写数据函数:,void WDat(uchar dat)Busy(); RS = 1;RW = 0;EN = 1;P0= dat;D10us();EN = 0;,void Init() DelayMs(10);WCmd(0 x38); /功能设置:8位口,2行,5*7点阵DelayMs(10);WCmd(0 x0c); /显示设置:开显示,关光标,无闪烁DelayMs(10);WCmd(0 x06); /输入模式:右移一格,地址加1DelayMs(10);WCmd(0 x01); /清显示DelayMs(10);,初始化函数:,void Pos(uchar x,uchar y)if(y=0 x01)WCmd(x|0 x80);/高位置1if(y=0 x02)WCmd(x|0 xc0);/高位置1,再加40H,位置设置及在指定位置显示字符函数:,void DispChar(uchar x,uchar y,uchar dat) Pos( x,y );WDat(dat ); ,void WStr(uchar str)uchar num = 0;while (strnum)WDat(strnum+);DelayMs(100);DelayMs(100);,显示字符串函数:,显示示例:,Init(); while (1)Pos(0, 1); /第一行显示WStr(dis1);Pos(0, 2); /第二行显示WStr(dis2);DelayMs(1000); LoadCgram(WeekWord);DispChar(0,1,0);DelayMs(3000); WCmd(0 x01); /清显示内容DelayMs(2);,Thank You !,

    注意事项

    本文(单片机原理及应用 C51语言课件.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开