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

📄 main.c

📁 单片机c语言程序设计100例--基于PIC+PROTEUS
💻 C
字号:
//-----------------------------------------------------------------
//  名称: Nokia7110液晶演示
//-----------------------------------------------------------------
//  说明: 本例在Nokia7110液晶演示了3项菜单功能,分别是LED闪烁控制,A/D
//        转换控制,系统重启控制.
// 
//-----------------------------------------------------------------
#include <pic.h>
#include <stdio.h>
#include "Nokia7110.h"
__CONFIG(WDTEN & XT & UNPROTECT);  //启用看门狗
const char Text[][17] =            //本例标题及菜单项等
{
    "Norkia 7110 DEMO",
    "----------------",
    "1.Flash LEDs    ",
    "2.Disp A/D Value",
    "3.Reset System  ",
    "----------------"        
};
//按键引脚定义
#define K_UP()    !RB0  //上移
#define K_DOWN()  !RB1  //下移
#define K_OK()    !RB2  //执行
char disp_buff[17];     //液晶显示缓冲
float AD_Result;
volatile INT8U Pre_Key = 0x00, Curr_Menu = 1,Pre_Menu = 0, Func_NO = 0;
enum {WHITE = 0, BLACK = 1}; 
//-----------------------------------------------------------------
// 按键扫描,获取当前菜单项
//-----------------------------------------------------------------
void Scan_Key()
{




}

//-----------------------------------------------------------------
// 刷新菜单显示
//-----------------------------------------------------------------
void Refresh_Menu()
{




}

//-----------------------------------------------------------------
// 对通道Channel进行模数转换,返回浮点电压值
//-----------------------------------------------------------------
void ADC_Convert(INT8U Channel)
{   




}

//-----------------------------------------------------------------
// 执行菜单功能
//-----------------------------------------------------------------
void Execute_MENU()
{



   
}

//-----------------------------------------------------------------
// 主程序
//-----------------------------------------------------------------
void main()
{
    TRISC0 = TRISC1 = TRISC2 = 0;     //SPI接口方向设置
    TRISD = 0x00; PORTD = 0xFF;       //PORTD端口LED输出
    TRISB = 0xFF; RBPU = 0;           //PORTB端口按键输入,内部上拉
    TRISE1 = 1;                       //AN6模块输入通道
 






}

//-----------------------------------------------------------------
// RB0/INT中断服务程序唤醒主程序继续运行,定时器1中断程序负责喂狗
//-----------------------------------------------------------------
void interrupt TMR1_AND_RB0_INT_ISR()
{
    static INT8U T1_Count = 0;         //用于延时累加的变量
    if (TMR1IF)                        //TIMER1每隔1500ms喂狗
    {  
       

    }
}

⌨️ 快捷键说明

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