编了个C语言的键盘程序有点问题,请指点下!

[复制链接]

做了个机械手,想用键盘来控制抓,放物品,现在他显示字符时有点错,高手能帮我在keil里跑下,把我的这个错改下吗?谢谢了!原程序如下:(P2.0--P2.7 是段选,P1.0--P1.5是位选,P0.0--P0.3是列选,P0.4--P0.7是行选)

#include #define uchar unsigned char

#define uint unsigned int

code char tab[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x80};

void delay (void){

uchar i;

for(i=254;i>0;i--);

}

uchar keyscan(void){

uchar sccode, recode;

P3=0xf0;

if((P3&0xf0)!=0xf0)

{

delay();

if ((P3&0xf0)!=0xf0)

{

sccode=0xfe;            //键盘逐行扫描

while((sccode&0x10)!=0)

{

P3=sccode;

if ((P3&0xf0)!=0xf0)

{

recode=(P3 & 0xf0);  //被按键的行玛

sccode=sccode&0x0f;

return((sccode)+(recode));

}

else sccode=(sccode<<1)|0x01;    //修改扫描玛

}

}

}

void display (uchar keydisp)    这句要改                                  {

uchar keytab[18]= {0x7e,0x7d,0x7b,0x77,0xbd,0xbb,0xb7,0xdb,0xd7,0xbe,0xde,0xee,0xed,0xeb,0xe7;}

uchar m;

for(m=0;m<16; m++)

{

if (keytab[m]==keydisp)       //查键码表,m为键值

{

P2=0xfe;

P0=tam[m];          //键值显示

}

}

}

void main()

{

uchar key;

P2=0xfe; P0=0x40

P3=0xff;

if(P3==0xff)

{

while(1)

{

key=keyscan();

display(key);

}

}

}

c语言键盘连续双击程序,编了个C语言的键盘程序有点问题,请指点下!相关推荐

  1. 花一千多学python值吗_Python爬虫应该怎么学?程序猿花了一周整理的学习技巧,请收下...

    原标题:Python爬虫应该怎么学?程序猿花了一周整理的学习技巧,请收下 Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多, ...

  2. c语言tft屏浮点数显示,编个可显示中文的TFT程序

    近几个月有点空闲时间,看到Arduino比较好玩,就开始学习,近来想做个数控电源,想用Arduino  por  mini做主控,TFT屏做显示,找到一个ILI9341的库,但该库只支持英文字符显示, ...

  3. keil c语言字符串赋值,keil c指针变量赋值 请指点下迷津

    这个是我在多路温湿度控制系统中用到的接收方法,Rs485方式的 如果想采用Rs485的朋友也可以参考一下 #define FRAME_HEAD          0x24 uchar RxBuf[7] ...

  4. c语言程序结果 856400,C语言程序设计答案(黄保和编)第3章.pdf

    厦门大学本科生公共课 C 程序设计基础 教材习题答案 第三章 结构化程序设计 第 1 页 共 4 页 一 思考题一 思考题 1 顺序结构的语句有哪些 顺序结构的语句有哪些 表达式语句 空语句 复合语句 ...

  5. c语言编程实现二进制计算器,本程序是用纯C语言编的一个基于命令行的四则运算计算器。主要用于计算四则运算表达式的值,同时可以实现四...

    本程序是用纯C语言编的一个基于命令行的四则运算计算器.主要用于计算四则运算表达式的值,同时可以实现四 2016-08-22 0 0 0 暂无评分 其他 1 积分下载 如何获取积分? 本程序是用纯C语言 ...

  6. 单片机实例14——4×4矩阵式键盘识别技术(硬件电路图+汇编程序+C语言程序)

    14. 4×4矩阵式键盘识别技术 1. 实验任务 如图4.14.2所示,用AT89S51的并行口P1接4×4矩阵键盘,以P1.0-P1.3作输入线,以P1.4-P1.7作输出线:在数码管上显示每个按键 ...

  7. [C语言]口令比较填空:阅读程序,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 下面程序比较用户键盘输入的口令userInput与内设的口令password是否相同。若相同,

    阅读程序,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求.    下面程序比较用户键盘输入的口令userInput与内设的口令password是否相同.若相同,则输出"Cor ...

  8. c语言转换为stc程序,STC51单片机入门(C语言)

    以前老资料,可继续下载参考. 目   录 第1篇 单片机KEIL开发环境 第1章  点亮LED实例与经典延时程序介绍(看不懂就从第2章动手) 1.1 51单片机最小系统与芯片引脚图 1.2 点亮LED ...

  9. Java语言程序设计基础篇-第10版-第一部分-程序设计基础)

    Java程序语言设计(基础篇)-第10版 第一部分 程序设计基础 第1章 计算机.程序和Java概述 1.1 引言 程序设计就是创建(或者开发)软件,软件也称为程序. 简言之,软件包含了指令,告诉计算 ...

最新文章

  1. Spring Boot(一) 自动装配--约定大于配置
  2. JAVA用多线程反而变慢了_Java中使用多线程不能明显提高程序效率的一些原因
  3. wxWidgets:exec 示例演示 wxExecute 和相关函数
  4. 数据库概念 MySQL 库操作 表操作 记录操作
  5. java.lang.NoClassDefFoundError: com/android/build/gradle/internal/ToolingRegistryProvider
  6. “24小时城市图鉴”看人间,每个城市都有属于她的独特记忆!
  7. 天外印刷的计件工资项目结束了
  8. 拥有自我意识、自我模拟的粒子机器人来了
  9. Fiddler4 Https设置及安装浏览器证书
  10. 倍福plc的型号_常用PLC型号大全及简介,选型必备技能!
  11. 【LCD1602----LiquidCrystal库的使用1
  12. 使用标尺工具获取某点的坐标
  13. LPDDR4协议规范之 (四)命令和时序(转自https://blog.csdn.net/YJFeiii/article/details/105475327)
  14. 支持所有浏览器的右键菜单
  15. mysql数据库反弹端口连接提权
  16. c语言maxval函数,fortran语言常用函数
  17. 如何显示文件夹的后缀和隐藏文件
  18. Vue实现待办事件列表
  19. SPFA单源最短路径算法
  20. mysql 怎么表示正无穷_C语言中正无穷大怎么表示

热门文章

  1. java 连接kafka超时_java – Kafka KStreams – 处理超时
  2. L2-1 包装机 (25 分)(STL43行代码)
  3. Java黑皮书课后题第5章:*5.43(数学:组合)编写程序,显示从整数1到7中选择两个数字的所有组合,同时显示所有组合的总个数
  4. 《构架之美》阅读笔记三
  5. 寻找数组中的第二大数
  6. Learning the Vi Editor, 6th Edition学习笔记(0)
  7. 20165214 预备作业3 Linux安装及学习
  8. APScheduler —— Python化的Cron
  9. Android 使用本地应用在线播放流媒体文件
  10. 软件测试作业7:构建弱健壮的等价类测试用例