wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区
標題:
MSP430單片機非阻塞性菜單程序設計
[打印本頁]
作者:
51hei單片
時間:
2016-3-14 19:50
標題:
MSP430單片機非阻塞性菜單程序設計
本程序是《MSP430系列單片機系統(tǒng)工程設計與實踐》書里面的源碼,(包含工程文件 例4.3.2)完整例程下載:
http://www.izizhuan.cn/bbs/dpj-46245-1.html
關于本程序的詳細解說大家可以點擊上圖下載電子書
主程序main:
/*
菜單程序范例(溫度報警器)
說明:利用狀態(tài)機實現(xiàn)非阻塞性的菜單。
(C)西安電子科技大學 測控技術與儀器教研中心 編 寫:謝 楷 2008/07/01
*/
//
// MSP430FE425
// ----------------------
// | XIN|-
// | | 32kHz
// |RST XOUT|-
// | | +----------------------+
// |A0.6+ -| S0-S15|--->| SoftBaugh LCD_048 |
// |A0.6- | COM0-COM3|--->| 7.1Digit,4-Mux LCD |
// | | | | +----------------------+
// | | | VREF |---+
// (P1.5)| \| |/ | |
// KEY1---->| \_/ | -+- 100nF
// ADD+ | 內(nèi)部 | -+-
// | 溫度傳感器 | |
// (P1.6)| AVss |---+
// KEY2---->| |
// SUB- | |
// | |
// (P1.7)| |
// KEY3---->| |
// ENT | |
//*****************************************************************************
#include "MSP430X42X.h" /*430單片機寄存器頭文件*/
#include "LCD_Display.h" /*LCD顯示函數(shù)庫頭文件*/
#include "BasicTimer.h" /*基礎定時器函數(shù)庫頭文件*/
#include "ADC16.h" /*16位ADC函數(shù)庫頭文件*/
#include "Menu.h" /*菜單各函數(shù)的頭文件*/
#define LED_RED_ON P1OUT|=BIT3
#define LED_RED_OFF P1OUT&=~BIT3
#define LED_GREEN_ON P1OUT|=BIT1
#define LED_GREEN_OFF P1OUT&=~BIT1
#define T_OFFSET (0) /*25度左右條件下,顯示溫度減去標準溫度計溫度*/
/*作為校準偏移值。注意要乘10倍,10=1.0度*/
/****************************************************************************
* 名 稱:main()主程序
* 功 能:每1秒采集溫度一次并顯示;每1/16秒掃描一次按鍵并處理。
* 入口參數(shù):無
* 出口參數(shù):無
****************************************************************************/
void main( void )
{ int i;
int ADC_Result=0;
int DegC;int Timer=0;
WDTCTL=WDTPW+WDTHOLD; //停止看門狗
FLL_CTL0|=XCAP18PF; //配置晶振負載電容
P1DIR|=BIT0+BIT1+BIT2+BIT3+BIT4;
P2DIR|=BIT0+BIT1+BIT2+BIT3; //懸空的IO口要置為輸出
P1OUT =0; //不確定電平會造成IO耗電
P2OUT =0;
BT_Init(16); //BasicTimer設置為1/16秒中斷(喚醒)CPU一次
LCD_Init(); //LCD初始化
ADC16_Init(0,6,'S',1);//ADC16初始化,設置ADC0采樣溫度傳感器,有符號,增益=1
Menu_DefaultSettings();
Menu_LoadSettings();
while(1)
{
Cpu_SleepWaitBT();//CPU休眠,等待被BasicTimer喚醒
Timer++;
Menu_Process(); // 菜單處理
if(Timer>=16) //---------以下代碼每1秒執(zhí)行一次-----------
{ Timer=0;
ADC16_VrefOn(); //打開基準源
for(i=0;i<30;i++); //略等待,等基準穩(wěn)定
ADC_Result=ADC16_Sample(0,1); //采樣ADC0,單次采樣
ADC16_VrefOff(); //關閉基準源
DegC=((long int)ADC_Result * 9090)/65536 - 2730;//計算攝氏度
DegC-=T_OFFSET; //扣除校準偏移量
if(Menu_State==MENU_QUIT)
{
LCD_DisplayDecimal(DegC,1);//顯示攝氏度,帶1位小數(shù)
LCD_InsertChar(DT);
LCD_InsertChar(CC); // 尾部添加單位: 'C
}
if(DegC>=Alarm_H) LED_RED_ON;
else LED_RED_OFF; // 上限報警
if(DegC<=Alarm_L) LED_GREEN_ON;
else LED_GREEN_OFF; // 下限報警
}
}
}
復制代碼
菜單子程序:
#include <msp430x42x.h>
#include "KEY.h"
#include "LCD_Display.h"
#include "Flash.h"
#include "BasicTimer.h"
#define ADDR_DEFAULT 0 /*第一次上電標志*/
#define ADDR_AH 2 /*報警門限上限存儲地址*/
#define ADDR_AL 4 /*報警門限下限存儲地址*/
int Alarm_H;
int Alarm_L; /*報警上下限全局變量*/
int Menu_Temp; //調(diào)整數(shù)據(jù)的臨時變量(為了實現(xiàn)放棄保存功能)
char Menu_State=0;
#define MENU_QUIT 0
#define MENU_SET 1
#define MENU_AH 2
#define MENU_AL 3
#define MENU_END 4
/*************************************************************************
* 名 稱:Menu_SetValue()
* 功 能:調(diào)整數(shù)值的大小
* 入口參數(shù):Value: 當前數(shù)值
Key:按鍵
MIN:被調(diào)整參數(shù)的最小值
MAX:被調(diào)整參數(shù)的最大值
Step:長按鍵的調(diào)整步長
* 出口參數(shù):被調(diào)整后的參數(shù)值
* 說 明: 參數(shù)超過最大值,會變?yōu)樽钚≈怠P∮谧钚≈禃優(yōu)樽畲笾怠?br />
*************************************************************************/
int Menu_SetValue(int Value,char Key,int MIN,int MAX, int Step)
{ switch(Key)
{
case KEY_ADD: Value++; break; // 加減按鍵的處理
case KEY_SUB: Value--; break;
case KEY_ADD_L: Value+=Step; break; // 長按鍵的處理
case KEY_SUB_L: Value-=Step; break;
default: break;
}
if (Value>MAX) Value=MIN; //超量程處理
if (Value<MIN) Value=MAX; //超量程處理
return(Value);
}
/*************************************************************************
* 名 稱:Menu_DefaultSettings()
* 功 能:初始化各參數(shù),寫為默認值
* 入口參數(shù):無
* 出口參數(shù):無
* 說 明: 該函數(shù)內(nèi)的參數(shù)初始化程序只會在第一次通電時執(zhí)行
*************************************************************************/
void Menu_DefaultSettings()
{
if(Flash_ReadChar(ADDR_DEFAULT)!=0x00) //如果第0單元內(nèi)容非0(第一次上電)
{
Flash_WriteWord(ADDR_AH,400); //上限40.0度
Flash_WriteWord(ADDR_AL,0); //下限0度
Flash_WriteChar(ADDR_DEFAULT,0x00); //第0單元寫入0(以后再也不運行)
}
}
/*************************************************************************
* 名 稱:Menu_LoadSettings()
* 功 能:從存儲器中調(diào)出設置參數(shù)
* 入口參數(shù):無
* 出口參數(shù):無
* 說 明: 主循環(huán)開始之前執(zhí)行
*************************************************************************/
void Menu_LoadSettings()
{
Alarm_H=Flash_ReadWord(ADDR_AH); //讀取溫度上限
Alarm_L=Flash_ReadWord(ADDR_AL); //讀取溫度上限
}
/*************************************************************************
* 名 稱:Menu_Process()
* 功 能:菜單程序
* 入口參數(shù):無
* 出口參數(shù):無
* 說 明: 利用狀態(tài)機實現(xiàn)的菜單,該程序不阻塞CPU的執(zhí)行
*************************************************************************/
void Menu_Process()
{
char Key;
Key=Key_GetKey(); //從鍵盤緩沖區(qū)讀取一次按鍵
static int Timer;
static int TimeOutTimer;
switch(Menu_State)
{
case MENU_QUIT: if(Key==KEY_ENT_FL) Menu_State=MENU_SET;
break;
case MENU_SET: LCD_Clear();
LCD_DisplayChar(SS,2);
LCD_DisplayChar(EE,1); // 顯示"SET",提示菜單開始
LCD_DisplayChar(tt,0);
if(Key==KEY_ENT)
{
Menu_Temp=Alarm_H;
Menu_State=MENU_AH;
}
break;
case MENU_AH : Menu_Temp=Menu_SetValue(Menu_Temp,Key,-200,500,10);// 根據(jù)按鍵調(diào)整參數(shù)數(shù)值
LCD_DisplayDecimal(Menu_Temp,1); // 顯示溫度上限值,保留一位小數(shù)
LCD_DisplayChar(AA,6);
LCD_DisplayChar(HH,5); // 提示符"AH"
if(Key==KEY_ENT)
{
Alarm_H=Menu_Temp; // 更新報警上限全局變量
Flash_WriteWord(ADDR_AH,Alarm_H);// 報警上限值寫入Flash
Menu_Temp=Alarm_L;
Menu_State=MENU_AL;
}
if(Key==KEY_ENT_FL)
{
Menu_Temp=Alarm_L;
Menu_State=MENU_AL;
}
break;
case MENU_AL : Menu_Temp=Menu_SetValue(Menu_Temp,Key,-200,500,10);// 根據(jù)按鍵調(diào)整參數(shù)數(shù)值
LCD_DisplayDecimal(Menu_Temp,1); // 顯示溫度下限值,保留一位小數(shù)
LCD_DisplayChar(AA,6);
LCD_DisplayChar(LL,5); // 提示符"AL"
if(Key==KEY_ENT)
{
Alarm_L=Menu_Temp; // 更新報警上限全局變量
Flash_WriteWord(ADDR_AL,Alarm_L);// 報警上限值寫入Flash
Menu_State=MENU_END;
}
if(Key==KEY_ENT_FL) Menu_State=MENU_END;
break;
case MENU_END : LCD_Clear();
LCD_DisplayChar(EE,2);
LCD_DisplayChar(nn,1); // 顯示"End",提示菜單結束
LCD_DisplayChar(DD,0);
if(++Timer>16) {Timer=0;Menu_State=MENU_QUIT;}//0.5秒后退出
break;
}
//---------------------------超時退出-----------------------------------
if(Key!=0) TimeOutTimer=0; //任何按鍵都可以將無操作時間清零
if(Menu_State!=MENU_QUIT) //在菜單中,對無操作時間計時
{
TimeOutTimer++;
if(TimeOutTimer>160) Menu_State = MENU_QUIT; //無操作超過10秒,退出菜單
}
else TimeOutTimer=0;
//---------------------------------------------------------------------
}
復制代碼
歡迎光臨 (http://www.izizhuan.cn/bbs/)
Powered by Discuz! X3.1
亚洲精品成av人片天堂无码
|
av老司机在线观看
|
亚洲久久在线观看
|
污污网站免费观看
|
国产在线观看一区
|
亚洲天堂网在线观看
|
亚洲另类中文字
|
亚洲黄页一区
|
中文字幕日韩高清在线
|
精品美女在线观看视频在线观看
|
老司机午夜在线视频
|
在线观看视频色
|
一区二区三区www污污污网站
|
中文字幕一区二区人妻在线不卡
|
男女视频网站在线观看
|
成人av电影免费
|
日韩在线精品视频
|
欧美一区二区在线免费播放
|
国产精品成人av在线
|
亚洲男人的天堂在线
|
欧美综合亚洲图片综合区
|
久久久国产午夜精品
|
日韩精品一二三四
|
亚洲情侣在线
|
av综合网站
|
综合日韩av
|
成人精品一区二区三区免费
|
加勒比在线日本
|
国产麻豆剧果冻传媒观看hd高清
|
婷婷电影在线观看
|
自拍视频在线播放
|
a视频在线看
|
成年女人色毛片免费
|
中文字幕无线码
|
国产美女精品视频国产
|
日韩精品久久久久久久
|
国产成人精品无码免费看夜聊软件
|
国产主播在线看
|
亚洲日本japanese丝袜
|
风间由美久久久
|
国产精品久久久久久久久久东京
|
师生出轨h灌满了1v1
|
波多野结衣乳巨码无在线
|
欧美日韩在线一区二区三区
|
国产日韩换脸av一区在线观看
|
欧美成人免费全部
|
久久精品成人欧美大片古装
|
日韩高清欧美高清
|
日韩精品一区二区三区视频
|
欧美午夜视频网站
|
欧美性猛交xxxx乱大交蜜桃
|
亚洲一区欧美一区
|
亚洲免费在线播放
|
亚洲丝袜另类动漫二区
|
国产亚洲午夜高清国产拍精品
|
国产一本一道久久香蕉
|
精品无人码麻豆乱码1区2区
|
丝袜亚洲另类欧美
|
丝袜诱惑亚洲看片
|
免费观看日韩电影
|
日韩精品免费视频人成
|
久久蜜桃资源一区二区老牛
|
欧美天堂亚洲电影院在线观看
|
欧美人与禽性xxxxx杂性
|
尤物网在线观看
|
免费黄网在线观看
|
免费黄色电影在线观看
|
日本在线免费看
|
日本美女高清在线观看免费
|
自拍视频在线播放
|
黄色在线播放网站
|
永久免费网站在线
|
av影院在线
|
国产精品扒开腿做爽爽爽视频软件
|
草草在线视频
|
亚洲女同av
|
欧美一区二区三区婷婷
|
日韩欧美激情
|
xvideos.蜜桃一区二区
|
日韩精品导航
|
日本a级不卡
|
国产精品videosex极品
|
免费视频一区
|
久久精品国产999大香线蕉
|
久久se这里有精品
|
aa级大片欧美
|
中文字幕欧美一区
|
偷窥国产亚洲免费视频
|
国产伦精品一区二区
|
蜜桃传媒视频麻豆第一区免费观看
|
日韩精品极品视频免费观看
|
亚洲美女av电影
|
久热精品视频在线观看
|
欧美一级电影久久
|
亚洲aa中文字幕
|
日韩理论片在线观看
|
99久re热视频精品98
|
www.com毛片
|
xxx中文字幕
|
免费看黄色三级
|
国产乱国产乱老熟
|
丰满肉嫩西川结衣av
|
欧美色图影院
|
8848hh四虎
|
在线观看麻豆
|
秋霞国产精品
|
国产精品一国产精品
|
一本色道久久综合亚洲精品不
|
美女免费视频一区二区
|
久久久精品国产免大香伊
|
国产伦精品一区二区三区视频免费
|
丝袜美腿一区
|
日韩三级毛片
|
久久综合婷婷
|
91免费观看视频在线
|
亚洲一二三区不卡
|
日韩精品一区二区三区中文精品
|
中文字幕亚洲综合
|
国产日产欧美精品
|
裸体裸乳免费看
|
日韩av片免费观看
|
青花影视在线观看免费高清
|
怡春院在线视频
|
国内精品2019
|
日本中文字幕电影在线观看
|
两个人看的在线视频www
|
成人精品毛片
|
老牛影视一区二区三区
|
国产亚洲成av人在线观看导航
|
一本大道av伊人久久综合
|
国产视频亚洲精品
|
国产精品亚洲视频在线观看
|
综合视频免费看
|
亚洲色偷偷色噜噜狠狠99网
|
日韩激情在线播放
|
国产经典中年夫妇盗摄
|
一级二级在线观看
|
free欧美
|
亚洲午夜精品一区 二区 三区
|
国产精品主播直播
|
欧美性猛xxx
|
日韩在线免费高清视频
|
国产伦精品一区二区三区视频黑人
|
久久久精品免费视频
|
超碰97人人在线
|
狠狠热免费视频
|
国产极品美女在线
|
濑亚美莉大战黑人中文字幕
|
久草在线中文888
|
国产精品伦一区二区
|
综合五月婷婷
|
久久久久国产一区二区三区四区
|
69久久夜色精品国产69蝌蚪网
|
欧美激情一区二区三区成人
|
国产精品久久久久久久久久10秀
|
91精品国产高清自在线
|
亚洲高清资源综合久久精品
|
国产清纯白嫩初高中在线观看性色
|
天天干在线播放
|
日本www视频
|
av影院在线
|
欧美高清一区
|
亚洲人123区
|
国产亚洲福利一区
|
国产欧美日韩综合一区在线观看
|
天堂一区在线观看
|
91黑人精品一区二区三区
|
狠狠干狠狠搞
|
亚洲一二三四
|
校园春色综合网
|
精品久久久久久久久国产字幕
|
久久五月天综合
|
中文字幕黄色大片
|
长河落日免费高清观看
|
四虎影视免费永久在线
|
亚洲s色大片
|
亚洲国产精品成人
|
亚洲欧美一区二区三区极速播放
|
亚洲欧美另类中文字幕
|
免费日韩av电影
|
www在线观看免费视频
|
ririsao中文字幕免费
|
午夜小视频在线
|
亚洲国产精品成人
|
国产精品久久久久久麻豆一区软件
|
成人黄色片在线观看
|
116极品美女视频在线观看
|
成人免费在线观看视频
|
毛片av一区二区三区
|
欧美三级电影在线观看
|
国产精品丝袜白浆摸在线
|
九九热爱视频精品视频高清
|
超碰在线caoporn
|
亚洲性图久久
|
91激情在线视频
|
91理论片午午论夜理片久久
|
波多野结衣免费观看
|
黄色a在线观看
|
xvideos国产在线视频
|
激情欧美一区二区三区
|
色综合天天综合
|
国产免费一区二区三区在线能观看
|
成人免费视频国产
|
国产免费叼嘿网站免费
|
在线免费视频你懂得
|
久草精品在线
|
亚洲免费在线观看
|
国产精品极品在线
|
国产欧美视频一区
|
亚洲成人国产综合
|
黄视频免费在线看
|
国产一区二区三区免费观看
|
亚洲欧美另类人妖
|
国产主播自拍av
|
一级黄色a毛片
|
欧美日本高清
|
日韩av一区二
|
亚洲精品久久久久久久久久久
|
在线日韩av永久免费观看
|
日韩欧美a级片
|
中文字幕在线中文字幕二区
|
中文字幕免费精品
|
在线电影欧美成精品
|
欧美日韩精品一区
|
青青国产在线观看
|
国产中文字幕在线视频
|
国产精品xvideos88
|
欧美日韩视频在线一区二区
|
美国av一区二区三区
|
久久精品国产亚洲AV无码男同
|
久久久亚洲精华液精华液精华液
|
91精品秘密在线观看
|
欧美影片第一页
|
麻豆久久久av免费
|
亚洲无码精品一区二区三区
|
国产色在线观看
|
国产盗摄女厕一区二区三区
|
97超碰人人在线
|
日韩中文字幕麻豆
|
日韩亚洲成人av在线
|
激情五月俺来也
|
国产麻豆剧果冻传媒观看hd高清
|
91麻豆精品激情在线观看最新
|
成人av在线资源
|
欧美激情欧美激情在线五月
|
亚洲成人福利视频
|
国产精品xxx电影
|
精品在线91
|
欧美三级中文字幕在线观看
|
永久久久久久
|
丰满少妇被猛烈进入
|
视频91a欧美
|
香蕉成人伊视频在线观看
|
久久综合九色99
|
在线观看一二三区
|
亚洲wwww
|
亚洲精品免费在线
|
欧美日韩在线一二三
|
91丨porny丨在线中文
|
欧美日韩国产精品专区
|
欧美日韩大片一区二区三区
|
成人黄色片在线观看
|
av在线视屏
|
国产欧美一区二区精品忘忧草
|
清纯唯美激情亚洲
|
精品动漫一区二区三区
|
亚洲欧美国产不卡
|
juy有坂深雪中文字幕
|
你懂的在线观看一区二区
|
欧美丝袜丝交足nylons
|
99久久免费观看
|
久久精品国产一区二区三区肥胖
|
免费精品国产的网站免费观看
|
在线播放欧美女士性生活
|
午夜免费福利小电影
|
国产在线视精品麻豆
|
色777狠狠狠综合伊人
|
日韩电影中文字幕av
|
中文字幕永久免费
|
在线看三级网站视频
|
国产精品一区二区你懂的
|
国产成人av网
|
成年人免费高清视频
|
欧美久久天堂
|
亚洲第一福利一区
|
福利在线一区二区
|
黄色免费网站观看
|
美女诱惑黄网站一区
|
91精品国产高清
|
日本道在线观看
|
国模冰冰炮一区二区
|
精品视频免费在线观看
|
一区二区三区黄色
|
欧美 日韩 国产 成人 在线观看
|
四虎海外永久免费网址
|
欧美亚洲在线日韩
|
色狠狠av一区二区三区香蕉蜜桃
|
成人免费网站黄
|
亚洲妇熟xxxx妇色黄
|
一区二区三区影院
|
欧美午夜性视频
|
在线观看黄色av网站
|
久久99热99
|
92裸体在线视频网站
|
亚洲a视频在线观看
|
欧洲视频一区
|
久久久成人av
|
精品无码久久久久久久久
|
成人激情视屏
|
日韩欧美电影一区
|
99re久久精品国产
|
1区2区在线观看
|
舔着乳尖日韩一区
|
日韩一级片播放
|
佐山爱痴汉视频一区二区三区
|
国产伦精品一区二区三
|
美女把腿扒开让男人桶免费
|
国产精东传媒成人av电影
|
亚洲国产另类 国产精品国产免费
|
亚洲啪av永久无码精品放毛片
|
久久亚洲私人国产精品va媚药
|
欧美日韩在线一二三
|
国产寡妇树林野战在线播放
|
久久黄色影院
|
99理论电影网
|
日韩中文字幕久久久经典网
|
国产农村妇女毛片精品久久莱园子
|
国产精品久久视频
|
性一交一乱一透一a级
|
天天综合网网欲色
|
国产成人亚洲综合91精品
|
国产福利第一页
|
伊人色**天天综合婷婷
|
日韩av免费一区
|
高潮毛片7777777毛片
|
亚洲视频日本
|
99精彩视频在线观看免费
|
亚洲综合欧美色图
|
免费成人美女在线观看
|
久久久水蜜桃
|
黄色高清视频在线观看
|
成人精品电影在线观看
|
亚洲成人动漫在线
|
成人福利视频导航
|
一区二区三区四区不卡在线
|
中文av一区二区三区
|
日本免费在线观看
|
欧美日韩国产综合一区二区
|
大又大又粗又硬又爽少妇毛片
|
xx欧美视频
|
亚洲欧洲在线播放
|
中文字幕69页
|
天堂网在线观看国产精品
|
欧美专区福利在线
|
中文字幕2区
|
超级碰碰不卡在线视频
|
日韩欧美一区在线观看
|
99成人在线观看
|
9国产精品午夜
|
羞羞色国产精品
|
亚洲成年人电影
|
国产精品456
|
日韩av高清在线看片
|
√天堂资源地址在线官网
|
欧美疯狂做受xxxx富婆
|
久久r这里只有精品
|
国产欧美日韩精品一区二区免费
|
国产精品久久久久久中文字
|
精品国内自产拍在线视频
|
成人av网址在线
|
另类小说第一页
|
人成在线免费网站
|
中文字幕综合一区
|
超碰在线播放97
|
久久精品久久99精品久久
|
久久久天堂国产精品
|
成人在线免费视频
|
日韩欧美在线123
|
日本一区二区三区精品
|
亚洲黄色免费
|
一区二区三区四区五区视频
|
亚洲伊人观看
|
亚洲一区二三
|
国产中文字幕在线
|
精品国产麻豆免费人成网站
|
精品久久久久久久久久久久久久久久
|
中文字幕日韩一区二区不卡
|
欧美色网址大全
|
7777奇米亚洲综合久久
|
www.天天操
|
欧美性猛xxx
|
久久亚洲AV无码
|
欧美在线亚洲
|
伊人av成人
|
国产在线观看a
|
在线视频欧美日韩
|
男人网站视频
|
国产精品嫩草影院com
|
久久久精品人妻无码专区
|
亚洲国产合集
|