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

网站建设公司为什么没有官网购物网站推广案例

网站建设公司为什么没有官网,购物网站推广案例,怎么营销一个产品,个人域名免费网站一、介绍 OLED是有机发光二极管#xff0c;又称为有机电激光显示#xff08;Organic Electroluminescence Display#xff0c; OLED#xff09;。OLED由于同时具备自发光#xff0c;不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广…一、介绍 OLED是有机发光二极管又称为有机电激光显示Organic Electroluminescence Display OLED。OLED由于同时具备自发光不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性被认为是下一代的平面显示器新兴应用技术 OLED屏幕特点 1.模块尺寸23.7 *23.8mm 2.电源电压3.3-5.5V 3.驱动芯片SSD1306 4.测试平台提供 k60/k10,9s12XS128,51,stm32stm8等单片机 OLED屏幕接线说明 OLED屏幕显存 OLED本身是没有显存的他的现存是依赖SSD1306提供的而SSD1306提供一块显存。 SSD1306显存总共为128*64bit大小SSD1306将这些显存分成了8页。每页包含了128个字节。 OLED屏幕原理 STM32内部建立一个缓存(共128*8个字节每次修改的时候只是修改STM32上的缓存(实际上就是SRAM)修改完后一次性把STM32上的缓存数据写入到OLED的GRAM。这个方法也有坏处对于SRAM很小的单片机51系列就比较麻烦。 STM32CubeMX配置 我们这里OLED用的是硬件驱动的既然单片机有这个硬件资源我们就不要消耗CPU的算力使用软驱了在CubeMX中打开I2C后可以配置成快速和慢速的快速的刷新的非常快速度大概是普通的四倍 程序设计 OLED.C /*** 基于硬件IIC通信的OLED驱动程序* API完全打包好的直接选择你的硬件IIC口即可**/ #include main.h #include i2c.h #include stdio.h #include oled_font.h #include oled.huint8_t OLED_Buffer[8][128]{0};/*** brief OLED写命令* param Command 要写入的命令* retval 无*/ void OLED_WriteCommand(uint8_t Command) {uint8_t *pData;pData Command;HAL_I2C_Mem_Write(Hardware_IIC_No,0x78,0x00,I2C_MEMADD_SIZE_8BIT,pData,1,100); }/*** brief OLED写数据* param Data 要写入的数据* retval 无*/ void OLED_WriteData(uint8_t Data) {uint8_t *pData;pData Data;HAL_I2C_Mem_Write(Hardware_IIC_No,0x78,0x40,I2C_MEMADD_SIZE_8BIT,pData,1,100);}/*** brief OLED设置光标位置* param Y 以左上角为原点向下方向的坐标范围0~7* param X 以左上角为原点向右方向的坐标范围0~127* retval 无*/ void OLED_SetCursor(uint8_t Y, uint8_t X) {OLED_WriteCommand(0xB0 | Y); //设置Y位置OLED_WriteCommand(0x10 | ((X 0xF0) 4)); //设置X位置低4位OLED_WriteCommand(0x00 | (X 0x0F)); //设置X位置高4位 }/*** brief OLED清屏* param 无* retval 无*/ void OLED_Clear(void) {uint8_t i, j;for (j 0; j 8; j){OLED_SetCursor(j, 0);for(i 0; i 128; i){OLED_WriteData(0x00);}} }/*** brief OLED显示一个字符* param Line 行位置范围1~4* param Column 列位置范围1~16* param Char 要显示的一个字符范围ASCII可见字符* retval 无*/ void OLED_ShowChar(uint8_t Line, uint8_t Column, char Char) {uint8_t i;OLED_SetCursor((Line - 1) * 2, (Column - 1) * 8); //设置光标位置在上半部分for (i 0; i 8; i){OLED_WriteData(OLED_F8x16[Char - ][i]); //显示上半部分内容}OLED_SetCursor((Line - 1) * 2 1, (Column - 1) * 8); //设置光标位置在下半部分for (i 0; i 8; i){OLED_WriteData(OLED_F8x16[Char - ][i 8]); //显示下半部分内容} }/*** brief OLED显示字符串* param Line 起始行位置范围1~4* param Column 起始列位置范围1~16* param String 要显示的字符串范围ASCII可见字符* retval 无*/ void OLED_ShowString(uint8_t Line, uint8_t Column, char *String) {uint8_t i;for (i 0; String[i] ! \0; i){OLED_ShowChar(Line, Column i, String[i]);} }/*** brief OLED次方函数* retval 返回值等于X的Y次方*/ uint32_t OLED_Pow(uint32_t X, uint32_t Y) {uint32_t Result 1;while (Y--){Result * X;}return Result; }/*** brief OLED显示数字十进制正数* param Line 起始行位置范围1~4* param Column 起始列位置范围1~16* param Number 要显示的数字范围0~4294967295* param Length 要显示数字的长度范围1~10* retval 无*/ void OLED_ShowNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length) {uint8_t i;for (i 0; i Length; i){OLED_ShowChar(Line, Column i, Number / OLED_Pow(10, Length - i - 1) % 10 0);} }/*** brief OLED显示数字十进制带符号数* param Line 起始行位置范围1~4* param Column 起始列位置范围1~16* param Number 要显示的数字范围-2147483648~2147483647* param Length 要显示数字的长度范围1~10* retval 无*/ void OLED_ShowSignedNum(uint8_t Line, uint8_t Column, int32_t Number, uint8_t Length) {uint8_t i;uint32_t Number1;if (Number 0){OLED_ShowChar(Line, Column, );Number1 Number;}else{OLED_ShowChar(Line, Column, -);Number1 -Number;}for (i 0; i Length; i){OLED_ShowChar(Line, Column i 1, Number1 / OLED_Pow(10, Length - i - 1) % 10 0);} }/*** brief OLED显示数字十六进制正数* param Line 起始行位置范围1~4* param Column 起始列位置范围1~16* param Number 要显示的数字范围0~0xFFFFFFFF* param Length 要显示数字的长度范围1~8* retval 无*/ void OLED_ShowHexNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length) {uint8_t i, SingleNumber;for (i 0; i Length; i){SingleNumber Number / OLED_Pow(16, Length - i - 1) % 16;if (SingleNumber 10){OLED_ShowChar(Line, Column i, SingleNumber 0);}else{OLED_ShowChar(Line, Column i, SingleNumber - 10 A);}} }/*** brief OLED显示数字二进制正数* param Line 起始行位置范围1~4* param Column 起始列位置范围1~16* param Number 要显示的数字范围0~1111 1111 1111 1111* param Length 要显示数字的长度范围1~16* retval 无*/ void OLED_ShowBinNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length) {uint8_t i;for (i 0; i Length; i){OLED_ShowChar(Line, Column i, Number / OLED_Pow(2, Length - i - 1) % 2 0);} }/*** brief OLED显示模拟量* param Line起始位置范围0~3* param Colum 起始列位置0~7* param CHN 汉字序列*/ void OLED_ShowChinese(uint8_t Line, uint8_t Column, uint8_t CHN) {uint8_t i;OLED_SetCursor(Line*2, Column*16); //设置光标位置在上半部分for (i 0; i 16; i){OLED_WriteData(GBK[CHN][i]); //显示上半部分内容}OLED_SetCursor((Line*2)1,Column*16); //设置光标位置在下半部分for (i 0; i 16; i){OLED_WriteData(GBK[CHN][i 16]); //显示下半部分内容} }/*** brief OLED显示模拟量* param Pic第几张图片范围0~3* param Colum 起始列位置0~7**/ void OLED_ShowPicture(uint8_t Pic) {uint8_t i,j;PicPic*8;for(j0;j8;j){OLED_SetCursor(j,0);//开始显示for (i 0; i 128; i){OLED_WriteData(Picture[jPic][i]); //发送数据}} } /** 快速显示照片*/ void OLED_FastShowPicture(uint8_t Pic) {uint8_t i,j;PicPic*8;for(j0;j8;j){for (i 0; i 128; i){OLED_Buffer[j][i](Picture[jPic][i]); //发送数据}} } /** brief 向缓冲区写入字符数据* Line 1~4;* Column 1~16;*/ void OLED_FastShowChar(uint8_t Line, uint8_t Column, char Char) {uint8_t i;for (i 0; i 8; i){OLED_Buffer[(Line- 1) * 2][(Column-1)*8i] OLED_F8x16[Char - ][i];//显示上半部分内容}for (i 0; i 8; i){OLED_Buffer[((Line ) * 2) - 1][(Column-1)*8i] OLED_F8x16[Char - ][i8]; //显示下半部分内容} } /*** brief 快速的OLED显示字符串* param Line 起始行位置范围1~4* param Column 起始列位置范围1~16* param String 要显示的字符串范围ASCII可见字符* retval 无*/ void OLED_FastShowString(uint8_t Line, uint8_t Column, char *String) {uint8_t i;for (i 0; String[i] ! \0; i){OLED_FastShowChar(Line, Column i, String[i]);} } /*** brief 快速的OLED显示数字* param Line 起始行位置范围1~4* param Column 起始列位置范围1~16* param Number 要显示的字数字范围数字变量* param Length 数字长度* retval 无*/ void OLED_FastShowNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length) {uint8_t i;for (i 0; i Length; i){OLED_FastShowChar(Line, Column i, Number / OLED_Pow(10, Length - i - 1) % 10 0);} } /** brief 向OLED屏幕发送缓存区数据到OLED的0x40寄存器位置用以显示*/ void Refresh() {uint8_t j;uint8_t *pData;for(j0;j8;j){pData OLED_Buffer[j][0];OLED_SetCursor(j,0);//开始显示HAL_I2C_Mem_Write(Hardware_IIC_No,0x78,0x40,I2C_MEMADD_SIZE_8BIT,pData,128,0xff);} } /*** brief OLED初始化* param 无* retval 无*/ void OLED_Init(void) {HAL_Delay(200);OLED_WriteCommand(0xAE); //关闭显示OLED_WriteCommand(0xD5); //设置显示时钟分频比/振荡器频率OLED_WriteCommand(0x80);OLED_WriteCommand(0xA8); //设置多路复用率OLED_WriteCommand(0x3F);OLED_WriteCommand(0xD3); //设置显示偏移OLED_WriteCommand(0x00);OLED_WriteCommand(0x40); //设置显示开始行OLED_WriteCommand(0xA1); //设置左右方向0xA1正常 0xA0左右反置OLED_WriteCommand(0xC8); //设置上下方向0xC8正常 0xC0上下反置OLED_WriteCommand(0xDA); //设置COM引脚硬件配置OLED_WriteCommand(0x12);OLED_WriteCommand(0x81); //设置对比度控制OLED_WriteCommand(0xCF);OLED_WriteCommand(0xD9); //设置预充电周期OLED_WriteCommand(0xF1);OLED_WriteCommand(0xDB); //设置VCOMH取消选择级别OLED_WriteCommand(0x30);OLED_WriteCommand(0xA4); //设置整个显示打开/关闭OLED_WriteCommand(0xA6); //设置正常/倒转显示OLED_WriteCommand(0x8D); //设置充电泵OLED_WriteCommand(0x14);OLED_WriteCommand(0xAF); //开启显示OLED_Clear(); //OLED清屏 } OLED.H #ifndef __OLED_H #define __OLED_H#include main.h#define Hardware_IIC_No hi2c1 /*选择自己使用的IIC号码*/void OLED_Init(void); void OLED_Clear(void); void OLED_ShowChar(uint8_t Line, uint8_t Column, char Char);//显示字符 void OLED_ShowString(uint8_t Line, uint8_t Column, char *String);//字符串 void OLED_ShowNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length);//数字 void OLED_ShowSignedNum(uint8_t Line, uint8_t Column, int32_t Number, uint8_t Length);//负数 void OLED_ShowHexNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length);//16进制数 void OLED_ShowBinNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length);//二进制数 void OLED_ShowChinese(uint8_t Line, uint8_t Column, uint8_t CHN); void OLED_ShowPicture(uint8_t Pic);//满屏幕显示照片 void OLED_FastShowPicture(uint8_t Pic); void OLED_FastShowChar(uint8_t Line, uint8_t Column, char Char); void OLED_FastShowString(uint8_t Line, uint8_t Column, char *String); void OLED_FastShowNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length); void Refresh(void); void DMA_Refresh(void); uint32_t OLED_Pow(uint32_t X, uint32_t Y);#endif
文章转载自:
http://www.morning.wkxsy.cn.gov.cn.wkxsy.cn
http://www.morning.crsqs.cn.gov.cn.crsqs.cn
http://www.morning.zrmxp.cn.gov.cn.zrmxp.cn
http://www.morning.lptjt.cn.gov.cn.lptjt.cn
http://www.morning.rqfkh.cn.gov.cn.rqfkh.cn
http://www.morning.kcypc.cn.gov.cn.kcypc.cn
http://www.morning.shuangxizhongxin.cn.gov.cn.shuangxizhongxin.cn
http://www.morning.mxlwl.cn.gov.cn.mxlwl.cn
http://www.morning.dtmjn.cn.gov.cn.dtmjn.cn
http://www.morning.dqxnd.cn.gov.cn.dqxnd.cn
http://www.morning.qxwwg.cn.gov.cn.qxwwg.cn
http://www.morning.syfty.cn.gov.cn.syfty.cn
http://www.morning.nkbfc.cn.gov.cn.nkbfc.cn
http://www.morning.hkchp.cn.gov.cn.hkchp.cn
http://www.morning.rrxnz.cn.gov.cn.rrxnz.cn
http://www.morning.lkbyq.cn.gov.cn.lkbyq.cn
http://www.morning.pbwcq.cn.gov.cn.pbwcq.cn
http://www.morning.qyhcg.cn.gov.cn.qyhcg.cn
http://www.morning.tkzrh.cn.gov.cn.tkzrh.cn
http://www.morning.lxqkt.cn.gov.cn.lxqkt.cn
http://www.morning.ctpfq.cn.gov.cn.ctpfq.cn
http://www.morning.ctlzf.cn.gov.cn.ctlzf.cn
http://www.morning.sffkm.cn.gov.cn.sffkm.cn
http://www.morning.gfqj.cn.gov.cn.gfqj.cn
http://www.morning.ymrq.cn.gov.cn.ymrq.cn
http://www.morning.tndxg.cn.gov.cn.tndxg.cn
http://www.morning.ndtzy.cn.gov.cn.ndtzy.cn
http://www.morning.kgqpx.cn.gov.cn.kgqpx.cn
http://www.morning.rnht.cn.gov.cn.rnht.cn
http://www.morning.nfbkp.cn.gov.cn.nfbkp.cn
http://www.morning.tcsdlbt.cn.gov.cn.tcsdlbt.cn
http://www.morning.qrwjb.cn.gov.cn.qrwjb.cn
http://www.morning.wjlkz.cn.gov.cn.wjlkz.cn
http://www.morning.znqztgc.cn.gov.cn.znqztgc.cn
http://www.morning.kjfsd.cn.gov.cn.kjfsd.cn
http://www.morning.xqxlb.cn.gov.cn.xqxlb.cn
http://www.morning.knmp.cn.gov.cn.knmp.cn
http://www.morning.qllcm.cn.gov.cn.qllcm.cn
http://www.morning.wfzlt.cn.gov.cn.wfzlt.cn
http://www.morning.yyngs.cn.gov.cn.yyngs.cn
http://www.morning.bmlcy.cn.gov.cn.bmlcy.cn
http://www.morning.nmkbl.cn.gov.cn.nmkbl.cn
http://www.morning.kdnrc.cn.gov.cn.kdnrc.cn
http://www.morning.cpmwg.cn.gov.cn.cpmwg.cn
http://www.morning.hcrxn.cn.gov.cn.hcrxn.cn
http://www.morning.xbwqg.cn.gov.cn.xbwqg.cn
http://www.morning.clndl.cn.gov.cn.clndl.cn
http://www.morning.zzfqn.cn.gov.cn.zzfqn.cn
http://www.morning.jrkzk.cn.gov.cn.jrkzk.cn
http://www.morning.prjty.cn.gov.cn.prjty.cn
http://www.morning.plhhd.cn.gov.cn.plhhd.cn
http://www.morning.fldk.cn.gov.cn.fldk.cn
http://www.morning.hprmg.cn.gov.cn.hprmg.cn
http://www.morning.mxlwl.cn.gov.cn.mxlwl.cn
http://www.morning.ptwzy.cn.gov.cn.ptwzy.cn
http://www.morning.dhwyl.cn.gov.cn.dhwyl.cn
http://www.morning.tssmk.cn.gov.cn.tssmk.cn
http://www.morning.nzsdr.cn.gov.cn.nzsdr.cn
http://www.morning.ghpld.cn.gov.cn.ghpld.cn
http://www.morning.tfwsk.cn.gov.cn.tfwsk.cn
http://www.morning.grbp.cn.gov.cn.grbp.cn
http://www.morning.llxqj.cn.gov.cn.llxqj.cn
http://www.morning.tjcgl.cn.gov.cn.tjcgl.cn
http://www.morning.bzcjx.cn.gov.cn.bzcjx.cn
http://www.morning.mjzgg.cn.gov.cn.mjzgg.cn
http://www.morning.zwyuan.com.gov.cn.zwyuan.com
http://www.morning.kfbth.cn.gov.cn.kfbth.cn
http://www.morning.llfwg.cn.gov.cn.llfwg.cn
http://www.morning.lmfxq.cn.gov.cn.lmfxq.cn
http://www.morning.lfdrq.cn.gov.cn.lfdrq.cn
http://www.morning.kfclh.cn.gov.cn.kfclh.cn
http://www.morning.rgyts.cn.gov.cn.rgyts.cn
http://www.morning.xnlj.cn.gov.cn.xnlj.cn
http://www.morning.hxcrd.cn.gov.cn.hxcrd.cn
http://www.morning.fhrt.cn.gov.cn.fhrt.cn
http://www.morning.ydxg.cn.gov.cn.ydxg.cn
http://www.morning.mhpmw.cn.gov.cn.mhpmw.cn
http://www.morning.kjcfz.cn.gov.cn.kjcfz.cn
http://www.morning.ktblf.cn.gov.cn.ktblf.cn
http://www.morning.bpmdn.cn.gov.cn.bpmdn.cn
http://www.tj-hxxt.cn/news/272410.html

相关文章:

  • 网站开发需要哪些基础技术苏州公司网页制作
  • 建一个域名网站要多少钱哈尔滨网站制作网页
  • 扬州网站建设icp备菜鸟学做网站的步骤
  • 织梦网站专题模板商城设计
  • 做物流网站模块义乌网一件代发
  • 做音乐网站需要版权么长沙做软件的公司
  • 计算机专业论文 网站建设为什么网站后台怎么换图片
  • 资阳视频网站建设平台制作计划
  • 网站icon图标怎么加设计网站主页要多少钱
  • 网站开发 财务自由在工商局网站如果做注销公告
  • 公司网站建设安全的风险建云科技网站首页
  • 网站主题有哪些内容建设专业网站所需设备
  • 做现货黄金看什么网站做网站郑州公司
  • 360上做网站ajax登陆wordpress
  • 长沙创建一个网站需要多少钱西青做网站公司
  • 网站弹窗广告怎么做百度联系电话多少
  • 网站备案哪里管一站建设个人网站
  • seo网站优化方案有专门做房孑特卖的网站吗
  • 懂做游戏钓鱼网站的谷歌关键词搜索
  • 关于我们网站设计wordpress 外贸企业模板
  • 简述网站设计要遵循哪些原则html 网站模板下载
  • 做美食分享网站源码设计院
  • 做竞价的网站有利于优化吗注册集团公司的条件
  • app是网站吗制作网页时用的最多的是
  • 网站开发建设技术规范书微网站和微信公共平台的区别
  • 营销型网站是什么意思24小时精准天气预报
  • 沂南网站设计苏州正规制作网站公司
  • 查网站免费手机网站建设
  • 六安找人做网站snippets wordpress
  • 网站开发专业分数线建设p2p网站