标题:
TFT STM32源码
[打印本页]
作者:
zhangpan755
时间:
2018-5-20 23:07
标题:
TFT STM32源码
TFT STM32单片机源程序如下:
#include "Init.h"
//初始化CPU
void IniCPU(void)
{
// P0M1 = 0x00; //液晶驱动端口
// P0M0 = 0xFF;
// P1M1 = 0x00; //P1.6P1.7为输入其他为输出
// P1M0 = 0x3F; //老板子
P1M1 = 0x00; //P1.6P1.7为输入其他为输出
P1M0 = 0x00; //新板子
P2M1 = 0x00; //按键本身有上拉电阻
P2M0 = 0x00;
P3M1 = 0x00; //输入有上拉,P3.0P3.1为通信端口
P3M0 = 0x00; //弱上拉
P4SW = 0x70; //0111,0000 P4.4,P4.5P4.6设置为输出
P4M1 = 0x00; //4.0为键盘端口有外部上拉,P4.3为掉电检测端口弱上拉
P4M0 = 0xF6; //P4.7为蜂鸣器,其它端口为液晶驱动端口,强上拉抗干扰
TMOD = 0x10; // T1为方式1,T0为方式0
TH1 = 0xB2; //22.1MHz10ms
TL1 = 0x91;
ET1 = 1; //定时器1许中断
TR1 = 1; //定时器开始工作
// PCON = 0x00;
// SCON = 0X00; //串口模式0,8位数据
//
//IT0 = 1; //设置中段触发方式为边缘出发方式
//EX0 = 1; //必须为1,否则第一次显示不正确
ES = 0; //关闭串口通信中断
EA = 1; //全局中断开关
}
//初始化Eeprom
void IniEeprom(void)
{
unsigned char i;
EepromRead(0x0000, SysTotal, MemorySys);
EepromRead(0x0800, 2, SysTimer);
for( i=0; i<SysTotal-2; i++)
{
if( MemorySys[i] != MemorySys[i+1])
{
break;
}
}
if( i == SysTotal-2 ) //第一次开始上电,数据恢复到出厂设置
{
EepromFactory();
SysTimer[0] = 0;
SysTimer[1] = 0;
EepromSave(0x0800, 2, SysTimer);
}
}
//初始化LCD
void IniLCD(void)
{
lcdreset(); //初始化LCD屏
wr_com1(0x01); //清除显示,并且设定地址指针为00H
wr_com2(0x01);
display_word(Logo[0],Logo[1],Logo[2],Logo[3]);
}
//初始化机器状态
void IniState(void)
{
Beep = 0;
}
//系统初始化
void SysInit(void)
{
IniCPU();
AllMotoStop(); //初始化输出
IniLCD();
IniEeprom();
display_word(Logo[0],Logo[1],Logo[2],Logo[4]);
DelayMS(5000);
IniState();
}
复制代码
所有资料51hei提供下载:
单片机一体机十四点电路板测试.rar
(111.5 KB, 下载次数: 5)
2018-5-20 23:07 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1