当前位置: 首页 > news >正文

百度网站安全检测平台温州定制网站建设电话

百度网站安全检测平台,温州定制网站建设电话,站长之家权重查询,网上购物哪家好又便宜使用软件#xff1a; 1.BmCvtST.exe 这是stm32Cubemx工程下的带三方软件。存在STemWin中。 作用#xff1a; 图片变成.c文件格式。 2.CodeBlock 3.模拟器工程#xff08;具体请看上一节#xff09; 一。emWin环境的搭建 1.codeBlock下载 开源免费。 2.使用stm的C… 使用软件 1.BmCvtST.exe     这是stm32Cubemx工程下的带三方软件。存在STemWin中。 作用    图片变成.c文件格式。 2.CodeBlock 3.模拟器工程具体请看上一节 一。emWin环境的搭建 1.codeBlock下载 开源免费。 2.使用stm的Cubemx提供的作图软件 1在C盘下找到第三方的固件库旁边有个ST文件夹 注意我在下载cubemx为默认的路径 2STemWin中的Soft提供了绘图的软件 3SeggerEval_WIN32_MSVC_MinGW_GUI_V544的使用模拟器 注意模拟器要与作图器版本兼容 1.判断方法 双击打开上述html观察最新版本是哪一个。 是v5.44所以去下载同样的版本。 2.模拟器下载方式 下载地址 SEGGER - The Embedded Experts - Downloads - emWin 4解释上述三个软件的作用 仿真模拟器是在window开发环境下的C工程可以通过VC6或者codeblockd IDE环境下进行开发仿真 3.项目实验添加页面到仿真器中 前提准备 1打开codeblock选择打开存在的文件这个文件就是那个模拟器 2打开模拟器的cbp文件 3运行模拟器得到界面 4删除提供的初始文件 文件夹中也删除 具体实现 1打开制图软件 点击windows界面 设置窗口大小 使用方法 保存方法 寻找保存地点作图软件下方会有ini文件生成双击打开就是保存的路径 放入模拟器的工程文件下并创建一个mainTask.c文件输入代码 #include dialog.h//包含window对话框 头文件 void MainTask(void) {GUI_Init(); //初始化emWinCreateWindow(); //创建窗体,父窗体是桌面背景while(1) {GUI_Delay(20);} //调用GUI_Delay函数延时20MS(最终目的是调用GUI_Exec()函数) } 进入codeblock点击添加文件 找到模拟器工程的application一直点击下一步就好 结果生成成功运行成功 二。人机交互页面的正式实现代码 C语言是句柄编程句柄是指针。句柄编程的意思是通过操作句柄来对页面进行操作。 1.按键处理 1代码解释emwin的参考文档查看 1.WINDOWSetBKColor         设置给定的window小工具背景色 2.WM_GetDialogltem         返回对话框项目小工具的窗口句柄 3.BUTTON_SetBitmap         设置显示指定按钮时要使用的位图简单来说就是显示图片 4.WM_NOTIFY_PARENT         告知父窗口其子窗口发生了某种改变消息通常由小工具发送到父窗口让他可以对事件做出改变。         上述的通知代码 1WM_NCTIFICATTON_CLICKED        按钮已经被点击 2WM_NCTIFICATTON_RELEASED        按钮已经被释放 3WM_NCTIFICATTON_MOVED_OUT        按钮已经被点击且指针已经移出按钮并且没有释放。 2按键处理方式         子窗口消息通知 获取子窗口ID 获取子窗口消息 子窗口消息处理 2.页面切换 1.GUI EndDialog         结束对话框 2.createWindow这个是页面生成的.c文件的函数         创建对话框 3.步骤         结束当前对话框创建需要切换的对话框 三。人机交互页面的正式实现页面 1.主页面创建 1进入软件 2右键选择背景 3设置背景颜色 4设置按钮 第一行按键 按键143   30 按键1186 30 按键1329 30 第二行按键  按键143   150 按键1186 150 按键1329 150 5save之后改名MainDLG.c里面的函数也改名为MainCreate 6使用CodeBlocks打开模拟器中的.cpb文件 7MainDLG.c放入模拟器的application中 8移除以前模拟内容注意文件夹中也删除保存现在内容 8调用主页面的创建函数 2.子界面的创建 2.1温度展示页面的创建 1.页面大小472/280 2.背景 2/33/79 3.text表头: 大小472 32 字体 32位ASCII 内容Temp 位置居中 颜色白色 3.图片 1大小128  128 2位置32   76 4.button 1大小64  64 2位置 375 107 5.text温度 1大小128 32 2位置192 124 居中 3颜色白色 4字体32位ASCII 6.保存到模拟器里模拟 注意修改函数为TempCreate 2.2湿度在温度上修改 1.改名TempDLG.c改为HumDLG.c 2.两个Text按照上图修改 3.关照强度上面的修改 1.改名LightDLG.c 2.修改两个Text 3.修改创建的接口为LightCreate 4.控制风扇 1.页面大小472  280 2.页面背景2  33  79 3.text 1大小472  32 2字体32_ASCII 3居中 4颜色白色 4.button 1大小128 128 2位置172 76 5.button 1大小64 64 2位置375 128 5.控制Led在上述上修改 LedCreate 6.Alarm同上名称改为AlarmCreate 四。人机交互界面的图片处理 1.使用的软件 以下这个是stmCubemx第三方库提供的软件作用是把图片改为C语言代码。 2.使用方法 1打开软件 2图片改为RGB模式 3保存为.c文件注意保存为高565模式 4把主界面的图片都生成.c文件 3.导入模拟器中展示 1在模拟器的application中创建图片文件 2工程分配文件夹 3主页面图片文件夹加入刚做好的.c文件 4右键simulationTrial----》选择add files recursively----》选择image文件夹 4.代码MainDLG.c主页面的代码 代码我的代码 都在MainDLG.c中 1. //声明外部图片 extern GUI_CONST_STORAGE GUI_BITMAP bmMainAlarm; extern GUI_CONST_STORAGE GUI_BITMAP bmMainFan; extern GUI_CONST_STORAGE GUI_BITMAP bmMainHum; extern GUI_CONST_STORAGE GUI_BITMAP bmMainLed; extern GUI_CONST_STORAGE GUI_BITMAP bmMainLight; extern GUI_CONST_STORAGE GUI_BITMAP bmMainTemp; 2. hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_0);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmMainAlarm);hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_1);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmMainFan);hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_2);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmMainHum);hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_3);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmMainLed);hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_4);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmMainLight);hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_5);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmMainTemp); 3.接下来是主界面六张图片的按下。 1 GUI_EndDialog(pMsg-hWin, 0);AlarmCreate(); 2 GUI_EndDialog(pMsg-hWin, 0);FanCreate(); 3 GUI_EndDialog(pMsg-hWin, 0);HumCreate(); 4 GUI_EndDialog(pMsg-hWin, 0);LedCreate(); 5 GUI_EndDialog(pMsg-hWin, 0);LightCreate(); 6 GUI_EndDialog(pMsg-hWin, 0);TempCreate(); 5.各个子页面的代码 1.FanDLG.c 1 //用到的图片 extern GUI_CONST_STORAGE GUI_BITMAP bmSubHome; extern GUI_CONST_STORAGE GUI_BITMAP bmSubFanClose; extern GUI_CONST_STORAGE GUI_BITMAP bmSubFanOpen; static int status 0; 2对风扇图片的变化处理 hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_0);if(status){BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubFanOpen);}else{BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubFanClose);}hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_1);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubHome); 3按钮 status !status;if(status){BUTTON_SetBitmap(pMsg-hWinSrc, BUTTON_BI_UNPRESSED, bmSubFanOpen);}else{BUTTON_SetBitmap(pMsg-hWinSrc, BUTTON_BI_UNPRESSED, bmSubFanClose);} 4返回按钮 GUI_EndDialog(pMsg-hWin, 0);MainCreate(); 测试 2.AlarmDLG.c 1图片引用 extern GUI_CONST_STORAGE GUI_BITMAP bmSubAlarmClose; extern GUI_CONST_STORAGE GUI_BITMAP bmSubAlarmOpen; extern GUI_CONST_STORAGE GUI_BITMAP bmSubHome; static int status 0; 2在把文本全部初始化好之后开始处理事件图片粘贴 hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_0);if(status){BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubAlarmOpen);}else{BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubAlarmClose);}hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_1);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubHome); 3按下图片 status !status;if(status){BUTTON_SetBitmap(pMsg-hWinSrc, BUTTON_BI_UNPRESSED, bmSubAlarmOpen);}else{BUTTON_SetBitmap(pMsg-hWinSrc, BUTTON_BI_UNPRESSED, bmSubAlarmClose);} 4返回主页 GUI_EndDialog(pMsg-hWin, 0);MainCreate(); 测试成功 3.HumDLG.c 1 extern GUI_CONST_STORAGE GUI_BITMAP bmSubHome; extern GUI_CONST_STORAGE GUI_BITMAP bmSubHum; 2除去不需要的图 3Text初始化之后图片改为自己绘制的图片 hItem WM_GetDialogItem(pMsg-hWin, ID_IMAGE_0);IMAGE_SetBitmap(hItem, bmSubHum); 4Text初始化之后 hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_0);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubHome); 5按钮处理 GUI_EndDialog(pMsg-hWin, 0);MainCreate(); 测试 4.LedDLG.c 1图片导入 extern GUI_CONST_STORAGE GUI_BITMAP bmSubHome; extern GUI_CONST_STORAGE GUI_BITMAP bmSubLedClose; extern GUI_CONST_STORAGE GUI_BITMAP bmSubLedOpen; static int status 0; 2初始化之后对数据的处理 hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_0);if(status){BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubLedOpen);}else{BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubLedClose);}hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_1);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubHome); 3图像转变 注意放在按键抬起的位置不用放过了 status !status;if(status){BUTTON_SetBitmap(pMsg-hWinSrc, BUTTON_BI_UNPRESSED, bmSubLedOpen);}else{BUTTON_SetBitmap(pMsg-hWinSrc, BUTTON_BI_UNPRESSED, bmSubLedClose);} 4返回主菜单 5.LightDLG.c 1导入图片 extern GUI_CONST_STORAGE GUI_BITMAP bmSubHome; extern GUI_CONST_STORAGE GUI_BITMAP bmSubLight; 2删除不需要的图片图片打印函数 3数据初始化后对不同的组件进行处理 hItem WM_GetDialogItem(pMsg-hWin, ID_IMAGE_0);IMAGE_SetBitmap(hItem, bmSubLight); hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_0);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubHome); 4返回主页面 GUI_EndDialog(pMsg-hWin, 0);MainCreate(); 测试 6.TempDLG.c 1加入图片 extern GUI_CONST_STORAGE GUI_BITMAP bmSubHome; extern GUI_CONST_STORAGE GUI_BITMAP bmSubTemp; 2初始化text之后不用以前的图片用自己的图片 hItem WM_GetDialogItem(pMsg-hWin, ID_IMAGE_0);IMAGE_SetBitmap(hItem, bmSubTemp); 3初始化text之后不用以前的图片用自己的图片 hItem WM_GetDialogItem(pMsg-hWin, ID_BUTTON_0);BUTTON_SetBitmap(hItem, BUTTON_BI_UNPRESSED, bmSubHome); 4返回主界面 GUI_EndDialog(pMsg-hWin, 0);MainCreate(); 测试 全部演示 上述每一步都有解释视频拉不上来 add files与add files recursively区别 add files是直接选择.c文件。 add files recursively可以选择文件夹。
http://www.w-s-a.com/news/643925/

相关文章:

  • 投票网站怎么制作电商网站模板html
  • 攀枝花移动网站建设抖音广告投放平台
  • 什么是网站设计第一装修网
  • 公司网站建设一条织梦门户网站源码
  • 网站改版中su域名注册
  • 做网站有没有前途济南产品网站建设外包
  • 网站备案咨询做静态网站多少钱
  • 软件开发和网站建设一样吗太原今天最新通知
  • 网站推广如何做的表白制作网站
  • 网站风格分析免费织梦网站源码
  • 大连手机自适应网站建设织梦做音乐网站
  • 烟台网站建设优化网页设计师证
  • 手机微网站建设多少钱个人网站 wordpress
  • 做外贸是不是必须有网站wordpress网络图片
  • 赣县企业网站建设用dw做网站的基本步骤
  • 辽源网站建设微信小程序公众平台
  • 多媒体网站设计开发是指什么常宁网站建设
  • 淄博网站推广优化17岁在线观看免费高清完整版
  • 企业形象网站开发业务范畴wordpress最好最全的教程
  • 企业网站的建立意义网站首页制作网站
  • 网站制作过程内容深圳最好的活动策划公司
  • 深圳网站关键词排名查询公司网站怎么做啊
  • 微网站 制作平台广州电商聚集地
  • 建设外国商城网站网站服务器 虚拟主机
  • 天河网站建设开发电子商务公司名字大全
  • 站长推荐为何用wdcp建立网站连不上ftp
  • 云南旅行社网站开发学编程多久可以写游戏辅助
  • 推广网站的步骤网站备案号中信息有变
  • 优秀企业建站织梦能不能做门户网站
  • 广东省建设局官方网站wordpress 自动安装 插件怎么用