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

📄 print.c.bak

📁 使用avr--cc2420模块程序,需要原理图的联系 QQ:120304948
💻 BAK
字号:
#include <mega128.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>


#include "typedef.h"

#include "app.h"
#include "attention.h"
#include "Flash.h"
#include "g20modem.h"
#include "g20serialdrv.h"
#include "ombro.h"

#include "rtc.h"
#include "serialdrv.h"
#include "timer.h"
#include "UDP.h"
#include "protocol.h"

#include "key.h"
#include "lcdzk.h"
#include "print.h"
#include "ombrodb.h"


/*flash unsigned char *Namealarm [8] = {
	
"十分钟出巡警戒!",    //53415206949F51FA5DE18B66621200210021  //18
"一小时出巡警戒!",    //4E005C0F65F651FA5DE18B66621200210021  //18
"日降雨出巡警戒!",    //65E5964D96E851FA5DE18B66621200210021  //18
"连续降雨出巡警戒!",  //8FDE7EED964D96E851FA5DE18B6662120021  //18
"十分钟危急警戒!",    //53415206949F537160258B66621200210021  //18
"一小时危急警戒!",    //4E005C0F65F6537160258B66621200210021  //18
"日降雨危急警戒!",    //65E5964D96E8537160258B66621200210021  //18
"连续降雨危急警戒!"   //8FDE7EED964D96E8537160258B6662120021  //18
};

flash unsigned char *Valuealarm [8] = {
	
"十分钟出巡警戒值:",  //53415206949F51FA5DE18B666212503C0020      //18
"一小时出巡警戒值:",  //4E005C0F65F651FA5DE18B666212503C0020      //18
"日降雨出巡警戒值:",  //65E5964D96E851FA5DE18B666212503C0020      //18
"连续降雨出巡警戒值:",//8FDE7EED964D96E851FA5DE18B666212503C      //18
"十分钟危急警戒值:",  //53415206949F537160258B666212503C0020      //18
"一小时危急警戒值:",  //4E005C0F65F6537160258B666212503C0020      //18
"日降雨危急警戒值:",  //65E5964D96E8537160258B666212503C0020      //18
"连续降雨危急警戒值:" //8FDE7EED964D96E8537160258B666212503C      //18
};*/


void data_print(void)
{
    unsigned char strdata[15];
    
	memset(strdata, 0x00, 15);
    disp_title(4);
    
//	print_hzstr("北京局三家店段官厅西工区");
//	print_hzstr("北京局三家店段狼山工区");
//	print_hzstr("北京局三家店段南口工区");
//	print_hzstr("北京局三家店段沙河工区"); 
	print_hzstr("北京局三家店段下花园工区");
//	print_hzstr("北京局三家店段雁翅工区"); 
//	print_hzstr("北京局三家店段珠窝工区"); 
	
    print_CR();
    delay_ms(40);
    paper_go(8);
    delay_ms(20);
	print_hzstr("  ");
    delay_ms(20);
    print_date();
    delay_ms(20);
    print_time();
    print_CR();
    delay_ms(20);
	print_hzstr("十分钟降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_ten*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);
	print_hzstr("一小时降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_hour*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);
	print_hzstr("日降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_day*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);
	print_hzstr("连续降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_continue*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);


    paper_go(20);
    delay_ms(20);
	print_hzstr("雨量员:");
    print_CR();
    delay_ms(20);
    print_day();       
    print_CR();
    delay_ms(20);
	print_hzstr("接收人:");
    print_CR();
    delay_ms(20);
    print_day();       
    print_CR();
    delay_ms(20);
    paper_go(35);
    delay_ms(3000);

    disp_title(1);
}

void print_alarm(unsigned char mode)
{
    unsigned char strdata[15];
    
	memset(strdata, 0x00, 15);
    disp_title(4);
    delay_ms(20);
    string_zoom(1);
    delay_ms(40);
    print_space(0,3);
    delay_ms(20);
	print_hzstr("雨量告警通知单");
    print_CR();
    delay_ms(40);
    string_zoom(0);
    delay_ms(30);
    paper_go(15);
    delay_ms(30);
    
//	print_hzstr("北京局三家店段官厅西工区");
//	print_hzstr("北京局三家店段狼山工区");
//	print_hzstr("北京局三家店段南口工区");
//	print_hzstr("北京局三家店段沙河工区"); 
	print_hzstr("北京局三家店段下花园工区");
//	print_hzstr("北京局三家店段雁翅工区"); 
//	print_hzstr("北京局三家店段珠窝工区"); 
	
    print_CR();
    delay_ms(40);
    paper_go(8);
    delay_ms(20);
	print_hzstr("  ");
    delay_ms(20);
    print_date();
    delay_ms(20);
    print_time();
    print_CR();
    delay_ms(20);
	print_hzstr("  ");
    delay_ms(20);
	switch (mode)
	{
	    case 0:
	        print_hzstr("十分钟出巡警戒!");
	        break;
	    case 1:
	        print_hzstr("一小时出巡警戒!");
	        break;
	    case 2:
	        print_hzstr("日降雨出巡警戒!");
	        break;
	    case 3:
	        print_hzstr("连续降雨出巡警戒!");
	        break;
	    case 4:
	        print_hzstr("十分钟危急警戒!");
	        break;
	    case 5:
	        print_hzstr("一小时危急警戒!");
	        break;
	    case 6:
	        print_hzstr("日降雨危急警戒!");
	        break;
	    case 7:
	        print_hzstr("连续降雨危急警戒!");
	        break;
	}
    print_CR();
    delay_ms(40);


	print_hzstr("十分钟降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_ten*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);
	print_hzstr("一小时降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_hour*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);
	print_hzstr("日降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_day*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);
	print_hzstr("连续降雨:");
    delay_ms(20);
    sprintf(strdata,"%.1f",(float)(ombro_continue*fGrid)); 
	print_string(strdata);
	print_stringf("mm\r");
    delay_ms(20);
    paper_go(20);
    delay_ms(20);
	print_hzstr("雨量员:");
    print_CR();
    delay_ms(20);
    print_day();       
    print_CR();
    delay_ms(20);
	print_hzstr("接收人:");
    print_CR();
    delay_ms(20);
    print_day();       
    print_CR();
    delay_ms(20);
    paper_go(35);
    delay_ms(4000);

    disp_title(1);
}

void print_date(void)
{
    unsigned char strdata[15];
    
	memset(strdata, 0x00, 15);
	print_stringf("20");
    sprintf(strdata,"%02u",CLK_YEAR); 
	print_string(strdata);
    delay_ms(10);
	print_hzstr("年");
    delay_ms(10);
    sprintf(strdata,"%u",CLK_MONTH); 
	print_string(strdata);
    delay_ms(10);
	print_hzstr("月");
    delay_ms(10);
    sprintf(strdata,"%u",CLK_DAY); 
	print_string(strdata);
    delay_ms(10);
	print_hzstr("日");
}

void print_time(void)
{
    unsigned char strdata[15];
    
	memset(strdata, 0x00, 15);
    sprintf(strdata,"%u",CLK_HOUR); 
	print_string(strdata);
    delay_ms(10);
	print_hzstr("时");
    delay_ms(10);
    sprintf(strdata,"%u",CLK_MIN); 
	print_string(strdata);
    delay_ms(10);
	print_hzstr("分");
    delay_ms(10);
    sprintf(strdata,"%u",CLK_SEC); 
	print_string(strdata);
    delay_ms(10);
	print_hzstr("秒");
}

void print_day(void)
{
	print_hzstr("   ");
    delay_ms(10);
	print_hzstr("年");
    delay_ms(10);
	print_hzstr(" ");
    delay_ms(10);
	print_hzstr("月");
    delay_ms(10);
	print_hzstr(" ");
    delay_ms(10);
	print_hzstr("日");
    delay_ms(10);
	print_hzstr(" ");
    delay_ms(10);
	print_hzstr("时");
    delay_ms(10);
	print_hzstr(" ");
    delay_ms(10);
	print_hzstr("分");
    delay_ms(10);
}

void print_hzstr(flash unsigned char *string)
{
    while (*string)
    {
        wdr();
     	PRT_DataWrite(*string);
     	string++;
     	PRT_DataWrite(*string);
     	string++;
    }
}

void print_string(unsigned char *string)
{
    while (*string)
    {
        wdr();
     	PRT_DataWrite(*string);
     	string++;
    }
}

void print_stringf(flash unsigned char  *string)
{
    while (*string)
    {
        wdr();
     	PRT_DataWrite(*string);
     	string++;
    }
}

void print_CR(void)
{
  PRT_DataWrite(0x0d);
}

void paper_go(unsigned char paper)
{
  PRT_DataWrite(0x1b);
  PRT_DataWrite(0x4a);
  PRT_DataWrite(paper);
}

void string_zoom(unsigned char zoom)
{
  PRT_DataWrite(0x1c);
  PRT_DataWrite(0x57);
  PRT_DataWrite(zoom);
}

void print_space(unsigned char spacex,unsigned char spacey)
{
  PRT_DataWrite(0x1b);
  PRT_DataWrite(0x66);
  PRT_DataWrite(spacex);
  PRT_DataWrite(spacey);
}

void PRT_init(void)
{
  PRT_DataWrite(0x1b);
  PRT_DataWrite(0x40);
  
  PRT_DataWrite(0x1b);
  PRT_DataWrite(0x38);
  
  PRT_DataWrite(0x1b);
  PRT_DataWrite(0x63);
  PRT_DataWrite(0x00);

  PRT_DataWrite(0x1b);
  PRT_DataWrite(0x20);
  PRT_DataWrite(0x02);
}

void PRT_DataWrite(unsigned char Data_Data)
{
  PRT_ChkBusy();							//Call PRT_ChkBusy to Check Busy Bit
  while ((UCSR0A & DATA_REGISTER_EMPTY)==0);
  UDR0=Data_Data;
}

void PRT_ChkBusy(void)
{
    do
    {
        wdr();
    }
    while(PRT_BUSY == 1);
}

⌨️ 快捷键说明

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