1. 程式人生 > 實用技巧 >759【畢設課設】基於微控制器電子電話本記錄系統設計

759【畢設課設】基於微控制器電子電話本記錄系統設計

【資源下載】下載地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

本設計是基於微控制器設計的電子電話本,使用的是51微控制器控制,LCD1602顯示電話本,另一個重要的器件是AT24C01(資料手冊),2線序列EEPROM,1K(128*8bit),用來儲存電話本。

電話本的輸入採用九宮格按鈕形式,1個按鍵有多種功能。

sbit RS =P1^6;       //LCD102的資料命令選擇
sbit EN_LCD =P1^7;   //LCD102的使能訊號
/*******************************************************
					 定義子函式
*******************************************************/
void delay(uint16 time);        // 延時函式(6us單位)
void lcd_ini(); 		        // LCD1602的初始化
void lcd_order(uint8 date);		// 向LCD1602的寫1個指令
void lcd_data(uint8 date);		// 向LCD1602的寫1個指令
void iic_start();				// IIC的開始訊號產生函式
void iic_stop();				// IIC的結束訊號產生函式
void iic_ack(bit sda1);			// IIC的應答訊號產生函式
void iic_write(uint8 date);		// IIC通訊,寫資料函式
uint8 iic_read(uint8 sda2);		// 向EEPROM定入一個位元組的資料
void iic_store(uint8 date,uint8 adss);  //將date儲存到EEPROM指定的一個單元中
uint8 iic_got(uint8 adss,uint8 sck);     // 將1個數據從EEPROM指定的地址中讀出 
uint8 key_saomiao();			// 對矩形鍵掃描並返回鍵值
void key_int0();				// 定時器0的初使化(1個按鍵輸入不同字母的實現)
void key(uint8 num ,uint8 zm ,uint8 choose);  //按鍵的功能實現函式
void key_function();			// 按鍵掃描,並得到按鍵的自定義值