




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
WSN基础通信实验讲义2 GPIO及LCD使用实验 四、基本实验1. 按键控制LED将如下给定代码添加到工程程序框架中,并给予注释,然后编译、下载、运行,分别按动按键,观测实验现象。/Include files#include #include /Macro Definitions#define APP_TICK_PERIOD_ms 500/Local Function PrototypesPRIVATE void vAppTick(void *pvMsg, uint8 u8Param);PRIVATE void vProcessSplashKeyPress(uint8 u8KeyMap);PRIVATE void vAppTickLED(void *pvMsg, uint8 u8Param);/Local VariablesPRIVATE bool_t bNwkStarted = FALSE;PRIVATE bool_t NextReadStart = TRUE ;PRIVATE uint8 u8Msg;PRIVATE uint8 u8TimerId;PRIVATE uint8 LED=3;PRIVATE bool_t bToggle;PRIVATE void vInit(void) (void)JZS_u32InitSystem(TRUE); vLedInitFfd(); vLedControl(0,TRUE); vLedControl(1,FALSE); vLedControl(2,FALSE); vLedControl(3,FALSE); vButtonInitFfd(); (void)bBosRun(TRUE);PRIVATE void vAppTick(void *pvMsg, uint8 u8Param) NextReadStart = TRUE;PRIVATE void vProcessSplashKeyPress(uint8 u8KeyMap) switch (u8KeyMap) case BUTTON_0_MASK: LED=0; break; case BUTTON_1_MASK: LED=1; break; case BUTTON_2_MASK: LED=2; break; case BUTTON_3_MASK: LED=3; break; default: break; vLedControl(0,FALSE); vLedControl(1,FALSE); vLedControl(2,FALSE); vLedControl(3,FALSE);PRIVATE void vAppTickLED(void *pvMsg, uint8 u8Param) bToggle=!bToggle; vLedControl(LED,bToggle); (void)bBosCreateTimer(vAppTickLED, &u8Msg, 0, (APP_TICK_PERIOD_ms/10), &u8TimerId);void JZA_vAppEventHandler(void) uint8 u8ReadButton=0; if (!bNwkStarted) return; u8ReadButton=u8ButtonReadFfd(); if (bNwkStarted&NextReadStart&u8ReadButton) NextReadStart = FALSE; vProcessSplashKeyPress(u8ReadButton); (void)bBosCreateTimer(vAppTick, &u8Msg, 0, (APP_TICK_PERIOD_ms/10), &u8TimerId); PUBLIC void JZA_vStackEvent(teJZS_EventIdentifier eEventId, tuJZS_StackEvent *puStackEvent) if (eEventId = JZS_EVENT_NWK_STARTED) bNwkStarted = TRUE; vLedControl(0, FALSE); (void)bBosCreateTimer(vAppTickLED, &u8Msg, 0, (APP_TICK_PERIOD_ms/10), &u8TimerId); 2. 按键控制LCD将如下给定代码添加到工程程序框架中,并给予注释,然后编译、下载、运行,分别按动按键,观测实验现象。/Include files#include Lcd_JM12864_Driver.h/Macro Definitions#define LCD/PRIVATE void vInit(void)#ifdef LCD vLcdInit();#endifPRIVATE void vProcessSplashKeyPress(uint8 u8KeyMap) switch (u8KeyMap) case BUTTON_0_MASK: /如果按下按键1 LED=0;#ifdef LCD vLcdShadowClear(); /初始化该影子内存 au8Shadow0=0x20;/空格 au8Shadow1=0x20;/空格 au8Shadow2=0x20;/空格 au8Shadow3=0x4A;/J au8Shadow4=0x45;/E au8Shadow5=0x4E;/N au8Shadow6=0x4E;/N au8Shadow7=0x49;/I au8Shadow8=0x43;/C au8Shadow9=0x2D;/- au8Shadow10=0x57;/W au8Shadow11=0x53;/S au8Shadow12=0x4E;/N au8Shadow13=0x20;/空格 au8Shadow14=0x20;/空格 au8Shadow15=0x20;/空格 vLcdRefresh(); /内容复制到lcd的ddram中并显示#endif break; case BUTTON_1_MASK: /如果按下按键1 LED=1;#ifdef LCD vLcdShadowClear(); /清除影子内存 vLcdTextWrite(1,1,江苏技术师范学院); vLcdTextWrite(2,3,欢迎您!); vLcdTextWrite(3,1,提供无线传感器网); vLcdTextWrite(4,2,开发技术支持); vLcdRefresh(); /内容复制到lcd的ddram中并显示#endif break; case BUTTON_2_MASK: /如果按下按键2 LED=2;#ifdef LCD vLcdShadowClear(); vLcdRefresh(); vLcdBitmapShadowClear(); /初始化影子内存,全部清零 vLcdBitmapWrite(1,1,1234); vLcdBitmapWrite(5,7,3456); vLcdBitmapWrite(10,2,5678); vLcdBitmapWrite(32,5,7890); vLcdBitmapWrite(33,1,90ab); vLcdBitmapWrite(35,7,abcd); vLcdBitmapWrite(40,2,cdef); vLcdBitmapWrite(62,5,efde); vLcdBitmapRefresh(); /全部内容复制到gdram中显示 vLcdBitmapDisplayOnOff (1); /打开绘图显示功能 vLcdModeExchange(0); /改变模式为基本指令模式#endif break; case BUTTON_3_MASK: /如果按下按键3 LED=3;#ifdef LCD vLcdModeExchange(1); /改模式为扩充指令模式 vLcdBitmapDisplayOnOff (0); /关闭绘图显示功能 v
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 运动的快慢课件简介
- 公司三年改革情况汇报
- 运动会闭幕式课件
- 资金年终工作总结
- 混凝土试验室述职报告
- 小数乘整数新课标解读
- 供暖调度工作总结计划
- 《我有一床花被子》少儿线描美术课件
- 干眼的诊断与护理
- 玫瑰花栽培关键技术
- 人体解剖学(江西中医药大学)智慧树知到期末考试答案章节答案2024年江西中医药大学
- 2024-2030年中国移动DR产业发展动态及未来趋势预测报告
- 高中物理必修三第九章《静电场及其应用》测试题(有答案解析)
- (正式版)QBT 5998-2024 宠物尿垫(裤)
- 运梁车司机安全培训试题
- 市政道路工程竣工验收报告
- 机械制图(第2版)高职全套教学课件
- 钬激光前列腺剜除术培训课件
- 智慧养老服务平台建设投标方案(技术方案)
- 电梯维保服务投标方案
- 3D打印食品制造技术
评论
0/150
提交评论