⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch451.c

📁 这是ch451的驱动程序
💻 C
字号:
#include <reg51.h>
#include <ch451.h>
#include <SerialPort.h>
#define uchar unsigned char
#define uint unsigned int
uchar ch451_key,flash,point; //全局变量,分别为:键值存放区,闪烁位,显示指针
uint sit;
bit   ch451_flag;			  
uchar showram[]={30,30,30,30,30,30,30,30,30};//显存数组
/*--------------------------显示数据----------------------*/
 void display(void)
 { 	uint i,j;
 	sit=0x000;							 //显示位指向第一位
	flash=1;							 //闪烁位指向第一位
	point=0;
   while(showram[point]!=30)
   { 
   ch451_write(CH451_DIG+sit+(showram[point]-0x30));
   sit=sit+0x100;			   			//显示位和闪烁位调整
   flash=flash*2;
   point++;					   			//指针调整
   }
    ch451_write(CH451_TWINKLE+flash);	 //设置闪烁控制
	ch451_write(CH451_DIG+22+sit);
   for(i=point+1,j=sit+0x100;i<=7;i++)
   {
   ch451_write(CH451_DIG+j+30);
   j=j+0x100;
   }
   }
/*---------------------------对按键进行处理-----------------*/
void ch451_process(void)				//按键处理
{
	ch451_keytest();					 //转换键值
	ch451_flag=0;						 //清标志
	if((ch451_key>47) && (ch451_key<58))
	{
	  showram[point]=ch451_key;			 //向显存写入数据
	 if(point>=8)						 //判断显存是否已满
	{
	  	showram[point]=30;				 //写入空格
	   	point=0;						 //显存指针清零
	}								 
	  display();						 //刷新显示
	  ch451_write(CH451_TWINKLE+flash);	 //设置闪烁位
	  ch451_write(CH451_DIG+22+sit);  	 //最右边数码管显示"-"并闪烁
	}
	 if(ch451_key==8)					 //判断是否为backspace
	{
	  showram[point-1]=30;				 //删除位用空表示
	  ch451_write(CH451_DIG+30+sit);
	  display();						 //刷新
	}
	   if(ch451_key==13)				 //判断是否为ENTER健
	{
	   	send();
    }
	}
/***********************************main********************************/
void main(void)
{  
	ch451_init();
	ch451_key=0;
	flash=1;
	sit=0x000;
	ch451_write(CH451_RESET);   		//ch451复位
	ch451_write(CH451_SYSON2) ; 		//开CH451显示,键盘  
    ch451_write(CH451_BCD);     		//以bcd码方式显示:数码管全亮
	ch451_check();
 	ch451_write(CH451_DIG+22); 			//最右边数码管显示"-"并闪烁
   	ch451_write(CH451_TWINKLE+flash);	//设置闪烁控制
	ch451_flag=0;
	seriaportset();
   	while(1)
	{
	 display();
	  if(ch451_flag)
	  {
	  ch451_keytest();
	  ch451_flag=0;
	  ch451_process();
	   }
		}
		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -