资源简介
包含电话拨号、密码设定和简单计算器,文件包括proteus仿真图。可以利用Mplab(v4.05)与protesu联调在线仿真。硬件模块涉及矩阵按键和LCD1602,
程序仅供参考,设计不合理的地方欢迎大家留言交流。

代码片段和文件信息
/*
* File: hanxin.c
* Author: jenney
*
* Created on 2018年4月19日 下午6:00
* 修复3个bug:1.右移补1 2.删除必须调用清屏命令 3.必须使用else if 否则会有错误的返回
*/
#include
// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.
// CONFIG1
#pragma config FOSC = XT // Oscillator Selection bits (XT oscillator: Crystal/resonator on RA6/OSC2/CLKOUT and RA7/OSC1/CLKIN)
#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled and can be enabled by SWDTEN bit of the WDTCON register)
#pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)
#pragma config MCLRE =ON // RE3/MCLR pin function select bit (RE3/MCLR pin function is digital input MCLR internally tied to VDD)
#pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled)
#pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled)
#pragma config BOREN = OFF // Brown Out Reset Selection bits (BOR disabled)
#pragma config IESO = OFF // Internal External Switchover bit (Internal/External Switchover mode is disabled)
#pragma config FCMEN = OFF // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is disabled)
#pragma config LVP = OFF // Low Voltage Programming Enable bit (RB3 pin has digital I/O HV on MCLR must be used for programming)
// CONFIG2
#pragma config BOR4V = BOR40V // Brown-out Reset Selection bit (Brown-out Reset set to 4.0V)
#pragma config WRT = OFF // Flash Program Memory Self Write Enable bits (Write protection off)
#define LCD_E RD6
#define LCD_RW RD5
#define LCD_RS RD4
#define COM 0
#define DATA 1
#define LINE1 0b10000000
#define LINE2 0b11000000
#define Password_OPEN 0//0为开启密码模式 1为关闭密码模式
#define T1_10MS 65410
char myline1[16]=“Password:“;
char myline2[16]=““;
void CSH(void);
void LCD_CSH(void);
void LCD_BUSY(void);
char LCD_READ(void);
void LCD_WRITE(charchar);
void LCD_WRITE_4(charchar);
void DELAY_US(char);
void DELAY(unsigned int);
void Keyscan(void);
void DISP_LINE1();
void DISP_LINE2();
void Password(void);
void Phone_Number(void);
void Mode_Control(void);
void interrupt Timer1(void);
void Calc(void);//仅能进行1位数的加减乘除
char Get_Strlen(char string[16]);
void Error_LED_Control(int a);//RB3 密码错误指示灯
void Warning_LED_Control(int a);//RB4 报警指示灯
void Buzzer(char i);//蜂鸣器
void BCD(unsigned int a);
void BCD1(float a);
char press_temp=16 ;//按键默认16
char viewview1view2;
char press_temp_flag=1;//按键锁存flag
char Mode_Select=2;//0 TEL;1 Calc 2:Password,初始为密码模式
char Log_Flag=Password_OPEN;//登录成功标志位()
char line2_count;//第二行显示字符计数
char Calc_Result=0;//简单计算器结果
float Calc_Result1=0.0; //浮点型数据
unsigned int AABB;//计算器输入两值
char Password_Set[16]= “000000“;//密码设置
char Mode_Count=2;//模式循环计数
char press_temp_save=0;//上一次按键值
char Last_Phone_Number[16]=““;//电话模式下存储上一次的电话值
char Key14_Count
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-04-27 20:13 Phone\
文件 3381 2018-04-27 20:13 Phone\Makefile
目录 0 2018-04-27 20:13 Phone\build\
目录 0 2018-04-27 20:13 Phone\build\default\
目录 0 2018-04-27 20:13 Phone\build\default\debug\
文件 155195 2018-04-27 20:13 Phone\build\default\debug\hanxin.p1
文件 80 2018-04-27 20:13 Phone\build\default\debug\hanxin.p1.d
文件 59860 2018-04-27 20:13 Phone\build\default\debug\hanxin.pre
目录 0 2018-04-27 20:13 Phone\build\default\production\
文件 154910 2018-04-27 20:13 Phone\build\default\production\hanxin.p1
文件 90 2018-04-27 20:13 Phone\build\default\production\hanxin.p1.d
文件 59649 2018-04-27 20:13 Phone\build\default\production\hanxin.pre
目录 0 2018-04-27 20:13 Phone\debug\
目录 0 2018-04-27 20:21 Phone\debug\default\
目录 0 2018-04-27 20:13 Phone\dist\
目录 0 2018-04-27 20:13 Phone\dist\default\
目录 0 2018-04-27 20:13 Phone\dist\default\debug\
文件 87605 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.cmf
文件 33615 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.elf
文件 10566 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.hxl
文件 427023 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.lst
文件 82776 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.map
文件 465 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.mum
文件 80650 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.obj
文件 602777 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.rlf
文件 12427 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.sdb
文件 27557 2018-04-27 20:13 Phone\dist\default\debug\5.X.debug.sym
文件 91810 2018-04-27 20:13 Phone\dist\default\debug\5.debug.cmf
文件 33001 2018-04-27 20:13 Phone\dist\default\debug\5.debug.elf
文件 10300 2018-04-27 20:13 Phone\dist\default\debug\5.debug.hxl
文件 422068 2018-04-27 20:13 Phone\dist\default\debug\5.debug.lst
............此处省略39个文件信息
相关资源
- 51 单片机 红外避障小车 大集合136
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 单片机与温度传感器DS18B20的程序设计
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 武汉理工大学 单片机课程设计 16*16点
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- 浙江工业大学2005-2006学年单片机习题
- 单片机与PC机串口通讯仿真
- 毕业设计 单片机 对讲机 protues仿真
评论
共有 条评论