📄 main.c
字号:
/******************************************************************************************\
* * * 河南工业大学 Freescale MCU&DSP 联合实验室 * * *
* * * 2008-8-1 * * *
* * * 注:本程序已经经过调试验证,实现了所述功能。 * * *
* * * 如有问题可发送邮件到 hgd0603@yahoo.com.cn进行讨论 * * *
\******************************************************************************************/
#include "12864.h" /* for EnableInterrupts macro */
#include "init.h" /* include peripheral declarations */
#include "cmos.h"
/**************功能:图形数组***********************/
unsigned char TU_TAB1[16]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
/***************************************************\
******函数名称:图像数组转化函数
******函数功能:将图像数据转化为点阵显示数组
******函数参数:无
\***************************************************/
void data_switch(unsigned char minuend)
{
signed char a,b,i=0,j,k;
for(j=0;j<32;j=j+2)
{
if(minuend==0)
{
for(k=1;k<=15;k=k+2){TU_TAB1[k]=0x01;}
}
else
{
a=cmos_data[1][j]-minuend;
b=cmos_data[1][j+1]-minuend;
if(a>=0) TU_TAB1[i]+=0xe0;
if(b>=0) TU_TAB1[i]+=0x0e;
i++;
}
}
}
/*****************************************************\
*********函数名称:清零数组函数
*********函数功能:数组元素全部清零
*********函数参数:无
\******************************************************/
void clear1(void)
{
unsigned char j;
for(j=0;j<=15;j++)
{
TU_TAB1[j]=0x00;
}
}
/*****************************************************\
*********函数名称:写绘图函数
*********函数功能:将
*********函数参数:无
\******************************************************/
void phto_write(void)
{
unsigned char mnud=63; //声明其实比较数据值
unsigned char i;
LCD_X=0X80; //上半屏横轴起始坐标
LCD_Y=0X80; //纵轴起始坐标
for(i=0;i<=31;i++)
{
clear1(); //清空数组
data_switch(mnud); //调用图形数组转换函数
PHO_DISP(TU_TAB1); //调用写图形函数
LCD_Y++; //写完一行后,纵坐标加一
mnud--; //比较数据值减一
}
LCD_X=0X88; //下半屏横轴起始坐标
LCD_Y=0X80; //纵轴起始坐标
for(i=0;i<=31;i++)
{
clear1(); //清空数组
data_switch(mnud); //调用图形数组转换函数
PHO_DISP(TU_TAB1); //调用写图形函数
LCD_Y++; //写完一行后,纵坐标加一
mnud--; //比较数据值减一
}
Lcd12864_Write_Command(0x36); //打开绘图显示
Lcd12864_Write_Command(0x30); //打开基本动作集指令
}
/*****************主函数***************************/
void main(void)
{
Init_all();
EnableInterrupts;
CMOS_getpic();
phto_write();
for(;;)
{
__RESET_WATCHDOG();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -