- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【8-19】使用DA转换器DAC0832产生梯形波,梯形波的上升段和下降段宽
第八章作业:
1、设某一MCS-51系统,要求连接16个4×4的键盘,其硬件原理如下图所示,请编写相应键值扫描和识别程序。
解答:首先给16个按键编号,从左上角开始为0,同行右侧的为1、2、3,下一行为4、5、6、7,即形成 0123
4567
89AB
CDEF
这样的按键键值分布,根据硬件连接,由于行和列接口输入对称,首先将对所有的“行”都输出低电平“0”,若无按键按下则p1口低4位“列”都是高电平;若有按键按下,则对应p1低四位中的某一位会变成低电平;其次,将所有的“列”都输出低电平,若无按键按下则p0口低四位“行”都是高电平;若有按键按下,则对应的p0第四位中的某一位会变成低电平。通过这两步可以确定按键的具体位置,再根据特征码确定键值。
按键为0时,“列值”读入为1110,“行值”读入为1110,特征码为EEH;按键为1时,“列值”读入为1101,“行值”读入为1110,特征码为EDH;按键为2时,列值读入为1011,行值读入为1110,特征码为EB;按键为3时,列值读入为0111,行值读入为1110,特征码为E7;根据上述规律画出特征码键值表:
按键 特征码 键值 按键 特征码 键值 S0 EEH 00H S8 BEH 08H S1 EDH 01H S9 BDH 09H S2 EBH 02H S10 BBH 0AH S3 E7H 03H S11 B7H 0BH S4 DEH 04H S12 7EH 0CH S5 DDH 05H S13 7DH 0DH S6 DBH 06H S14 7BH 0EH S7 D7H 07H S15 77H 0FH 空键 FFH FFH
下面是根据上述特征码值,线路反转法的键值扫描和识别程序:
KEY: MOV P0, #0F0H; 从p0低四位输出低电平
MOV A, P1;
ANL A, #0FH;
MOV B, A; 从p1取低四位送入B
MOV P1, #0F0H; 从p1低四位输出低电平
MOV A, P0;
ANL A, #0FH;
SWAP A ;将低四位数据存在高四位
ORL A, B ;合成特征码
CJNE A, #0FFH, KEY1; 若不为空按键则跳转
RET
KEY1: MOV B, A ;保存特征码
MOV DPTR, #KEYCD
MOV R3, #0FFH ;顺序码键值初始化
KEY2: INC R3
MOV A, R3
MOVC A, @A+DPTR ;指向表头地址
CJNE A, B, KEY3 ;判断是否已查完
MOV A, R3 ;找到键值,存到A
RET
KEY3: CJNE A, #0FFH, KEY2;未完,再查
MOV A, #0FFH ;无按键处理
RET
KEYCD: DB 0EEH, 0EDH, 0EBH, 0E7H
DB 0DEH, 0DDH, 0DBH, 0D7H
DB 0BEH, 0BDH, 0BBH, 0B7H
DB 7EH, 7DH, 7BH, 77H
DB 0FFH
2、设某一MCS-51系统,要求外接8个LED数码管,其硬件原理如下图所示,请编写相应的动态显示程序,设显示内容为。
(输出口1地址为:BFH;输出口2地址为:7FH;)
解答: ORG 0000H
SJMP MAIN
ORG 0040H
MAIN: MOV R6,#1; 输出内容存在R6中
MOV R1,#7FH; 位控制信号寄存器
NEXT: MOV A,R6 ; 取出要显示的数
INC R6 ; 装载准备下一个数
MOV R0, #0BFH; 段码输出口地址赋给R0
MOV @R0,A ; 段码输出到段码输出口,即输出口1
MOV A,R1
MOV R0, #7FH; 位码输出口地址赋给R0
MOV @R0,A ; 输出位码
LCALL DELAY1MS ;延时1ms
SETB C
MOV A,R1
RRC A
MOV R1,A; 修改位码符号,指向下一个数码管
JC NEXT; 没有显示完毕则继续
RET
//very good
您可能关注的文档
- 2005年农作物品种区域试验项目计划和资金分配表.doc
- 2005年泉州市非课改实验区.doc
- 2005年度企业经济效益表.doc
- 2005年高中毕业会考模拟试卷.doc
- 2005年高考题分类解析(解析几何).doc
- 2005-2006学年第一学期结构力学期末考试(A卷).doc
- 2006年在职攻读浙江大学硕士学位资格审查及第二阶段考试的通知.doc
- 2006年秋季学期《微积分》期末考试试题.doc
- 2006电工电子技能竞赛题.doc
- 2006年,山西省全面贯彻落实可持续发展战略,稳步推进和谐社会建设,.doc
- 【教学目标】本章主要使大学生了解我国高等学校体育的发展概况与基本.doc
- 【把自主合作探究教学理念落实在课堂上.doc
- 【一轮汇总训练】(2014数学,人教理)《空间几何体的表面积和体积.doc
- 一、主题的确定.doc
- 一、名词解释(每题2分).doc
- 一、单项选择题(本大题共30小题。每小题2分,共60分。在每小题列出的.doc
- 一、基本训练,巩固旧知1、填空⑴点A(3,2)关于x轴的对称点为A′(,);⑵点B(0,1)关于x轴的对称点为.ppt
- 一、单项选择题在下列各题中,将唯一正确的答案代码填入括号内.doc
- 一、填空题(每空0.doc
- 一、填空题(本大题共15小题,每小题2分,满分30分).doc
文档评论(0)