2022年测试程序[归 .pdf
《2022年测试程序[归 .pdf》由会员分享,可在线阅读,更多相关《2022年测试程序[归 .pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、/用于 MCS51 的 C 语言例子程序#include STC12C5A16AD.H /* 函数定义* void long_delay(void); / 长延时void short_delay(void); / 短延时void tempchange(); void delay10ms(unsigned char); / 延时 1MS void write7279(unsigned char, unsigned char);/ 写入到 HD7279 unsigned char read7279(unsigned char);/从 HD7279 读出void send_byte(unsigned
2、 char); / 发送一个字节unsigned char receive_byte(void); / 接收一个字节/* 变量及 I/O 口定义* unsigned char digit5; unsigned char key_number, j, k; unsigned int tmr; unsigned long wait_cnter; sbit cs=P17; / cs at P1.7 sbit clk=P15; / clk连接于P1.5 sbit dat=P16; / dat 连接于P1.6 sbit key=P32; / key 连接于P3.2 /* HD7279A指令* #defi
3、ne CMD_RESET 0 xa4/ 复位指令#define CMD_TEST 0 xbf /测试指令#define DECODE0 0 x80/ 下载数据且按方式0 译码;#define DECODE1 0 xc8/ 下载数据且按方式1 译码;#define CMD_READ 0 x15/读键盘指令#define UNDECODE 0 x90 /下载数据但不译码#define RTL_CYCLE 0 xa3/ 循环左移指令#define RTR_CYCLE 0 xa2/ 循环右移指令#define RTL_UNCYL 0 xa1/左移指令#define RTR_UNCYL 0 xa0/ 右
4、移指令#define ACTCTL 0 x98 /消影控制 0 为消影#define SEGON 0 xe0 /段点亮指令#define SEGOFF 0 xc0/ 段关闭指令#define BLINKCTL 0 x88/闪烁控制0 为闪/*主程序 * main() /P1=0 xdb; CLK_DIV=0 x03; IE=0X81; TCON=0X01; while (1) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - fo
5、r (tmr=0;tmr0 x2000;tmr+);/上电延时send_byte(CMD_RESET); / 复位 HD7279A cs=1; /* /测试指令演示/* send_byte(CMD_TEST); / 测试指令cs=1; for (j=0;j3;j+) / 延时约 3 秒 delay10ms(30); send_byte(CMD_RESET); / 清除显示cs=1; /* /闪烁指令及键盘接口测试,将用户按键的键码显示出来/如果 10 秒内无按键,或按S0 键即进入下一步演示/* wait_cnter=0; key_number=0 xff; write7279(BLINKCT
6、L,0 xfc); /第 1、2 两位设为闪烁显示write7279(UNDECODE+1,0 x88);/在第 2 位显示下划线_ write7279(UNDECODE,0X88); /在第 1 位显示下划线_ write7279(UNDECODE+2,0X01); /在第 1 位显示下划线 _ write7279(UNDECODE+3,0X02); /在第 1 位显示下划线 _ write7279(UNDECODE+4,0X03); /在第 1 位显示下划线 _ do if (!key) / 如果有键按下 key_number=read7279(CMD_READ);/读出键码write72
7、79(DECODE1+1,key_number/16);/在第 2 位显示键码高8 位write7279(DECODE1,key_number&0 x0f);/在第 1 位显示键码低8 位while (!key); / 等待按键放开wait_cnter=0; wait_cnter+; while (key_number!=0 & wait_cnter0 x1500); /如果按键为0 和超时则进入下一步演示write7279(BLINKCTL,0 xff); /清除闪烁设置/* /快速计数演示/* 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年测试程序归 2022 测试 程序
限制150内