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

外国酷炫网站口碑营销案例及分析

外国酷炫网站,口碑营销案例及分析,wordpress启动插件出错,注册公司流程和费用注册资金各位CSDN的uu们你们好呀#xff0c;小雅兰又来啦#xff0c;刚刚学完静态数码管显示和动态数码管显示#xff0c;感觉真不错呢#xff0c;下面#xff0c;小雅兰就要开始学习模块化编程以及LCD1602调试工具的知识了#xff0c;让我们进入51单片机的世界吧#xff01;小雅兰又来啦刚刚学完静态数码管显示和动态数码管显示感觉真不错呢下面小雅兰就要开始学习模块化编程以及LCD1602调试工具的知识了让我们进入51单片机的世界吧 模块化编程 LCD1602调试工具 模块化编程 右键点击Open document REGX52.H 就会显示出此头文件的内容这句代码的意思也就是把这部分内容拷贝到此文件下 /*-------------------------------------------------------------------------- AT89X52.H Header file for the low voltage Flash Atmel AT89C52 and AT89LV52. Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc. All rights reserved. --------------------------------------------------------------------------*/ #ifndef __AT89X52_H__ #define __AT89X52_H__ /*------------------------------------------------ Byte Registers ------------------------------------------------*/ sfr P0       0x80; sfr SP       0x81; sfr DPL     0x82; sfr DPH     0x83; sfr PCON     0x87; sfr TCON     0x88; sfr TMOD     0x89; sfr TL0     0x8A; sfr TL1     0x8B; sfr TH0     0x8C; sfr TH1     0x8D; sfr P1       0x90; sfr SCON     0x98; sfr SBUF     0x99; sfr P2       0xA0; sfr IE       0xA8; sfr P3       0xB0; sfr IP       0xB8; sfr T2CON   0xC8; sfr T2MOD   0xC9; sfr RCAP2L   0xCA; sfr RCAP2H   0xCB; sfr TL2     0xCC; sfr TH2     0xCD; sfr PSW     0xD0; sfr ACC     0xE0; sfr B       0xF0; /*------------------------------------------------ P0 Bit Registers ------------------------------------------------*/ sbit P0_0 0x80; sbit P0_1 0x81; sbit P0_2 0x82; sbit P0_3 0x83; sbit P0_4 0x84; sbit P0_5 0x85; sbit P0_6 0x86; sbit P0_7 0x87; /*------------------------------------------------ PCON Bit Values ------------------------------------------------*/ #define IDL_    0x01 #define STOP_   0x02 #define PD_     0x02    /* Alternate definition */ #define GF0_    0x04 #define GF1_    0x08 #define SMOD_   0x80 /*------------------------------------------------ TCON Bit Registers ------------------------------------------------*/ sbit IT0   0x88; sbit IE0   0x89; sbit IT1   0x8A; sbit IE1   0x8B; sbit TR0   0x8C; sbit TF0   0x8D; sbit TR1   0x8E; sbit TF1   0x8F; /*------------------------------------------------ TMOD Bit Values ------------------------------------------------*/ #define T0_M0_   0x01 #define T0_M1_   0x02 #define T0_CT_   0x04 #define T0_GATE_ 0x08 #define T1_M0_   0x10 #define T1_M1_   0x20 #define T1_CT_   0x40 #define T1_GATE_ 0x80 #define T1_MASK_ 0xF0 #define T0_MASK_ 0x0F /*------------------------------------------------ P1 Bit Registers ------------------------------------------------*/ sbit P1_0 0x90; sbit P1_1 0x91; sbit P1_2 0x92; sbit P1_3 0x93; sbit P1_4 0x94; sbit P1_5 0x95; sbit P1_6 0x96; sbit P1_7 0x97; sbit T2   0x90;       /* External input to Timer/Counter 2, clock out */ sbit T2EX 0x91;       /* Timer/Counter 2 capture/reload trigger dir ctl */ /*------------------------------------------------ SCON Bit Registers ------------------------------------------------*/ sbit RI   0x98; sbit TI   0x99; sbit RB8   0x9A; sbit TB8   0x9B; sbit REN   0x9C; sbit SM2   0x9D; sbit SM1   0x9E; sbit SM0   0x9F; /*------------------------------------------------ P2 Bit Registers ------------------------------------------------*/ sbit P2_0 0xA0; sbit P2_1 0xA1; sbit P2_2 0xA2; sbit P2_3 0xA3; sbit P2_4 0xA4; sbit P2_5 0xA5; sbit P2_6 0xA6; sbit P2_7 0xA7; /*------------------------------------------------ IE Bit Registers ------------------------------------------------*/ sbit EX0   0xA8;       /* 1Enable External interrupt 0 */ sbit ET0   0xA9;       /* 1Enable Timer 0 interrupt */ sbit EX1   0xAA;       /* 1Enable External interrupt 1 */ sbit ET1   0xAB;       /* 1Enable Timer 1 interrupt */ sbit ES   0xAC;       /* 1Enable Serial port interrupt */ sbit ET2   0xAD;       /* 1Enable Timer 2 interrupt */ sbit EA   0xAF;       /* 0Disable all interrupts */ /*------------------------------------------------ P3 Bit Registers (Mnemonics Ports) ------------------------------------------------*/ sbit P3_0 0xB0; sbit P3_1 0xB1; sbit P3_2 0xB2; sbit P3_3 0xB3; sbit P3_4 0xB4; sbit P3_5 0xB5; sbit P3_6 0xB6; sbit P3_7 0xB7; sbit RXD   0xB0;       /* Serial data input */ sbit TXD   0xB1;       /* Serial data output */ sbit INT0 0xB2;       /* External interrupt 0 */ sbit INT1 0xB3;       /* External interrupt 1 */ sbit T0   0xB4;       /* Timer 0 external input */ sbit T1   0xB5;       /* Timer 1 external input */ sbit WR   0xB6;       /* External data memory write strobe */ sbit RD   0xB7;       /* External data memory read strobe */ /*------------------------------------------------ IP Bit Registers ------------------------------------------------*/ sbit PX0   0xB8; sbit PT0   0xB9; sbit PX1   0xBA; sbit PT1   0xBB; sbit PS   0xBC; sbit PT2   0xBD; /*------------------------------------------------ T2CON Bit Registers ------------------------------------------------*/ sbit CP_RL2 0xC8;      /* 0Reload, 1Capture select */ sbit C_T2 0xC9;       /* 0Timer, 1Counter */ sbit TR2   0xCA;       /* 0Stop timer, 1Start timer */ sbit EXEN2 0xCB;       /* Timer 2 external enable */ sbit TCLK 0xCC;       /* 0Serial clock uses Timer 1 overflow, 1Timer 2 */ sbit RCLK 0xCD;       /* 0Serial clock uses Timer 1 overflow, 1Timer 2 */ sbit EXF2 0xCE;       /* Timer 2 external flag */ sbit TF2   0xCF;       /* Timer 2 overflow flag */ /*------------------------------------------------ T2MOD Bit Values ------------------------------------------------*/ #define DCEN_   0x01    /* 1Timer 2 can be configured as up/down counter */ #define T2OE_   0x02    /* Timer 2 output enable */ /*------------------------------------------------ PSW Bit Registers ------------------------------------------------*/ sbit P     0xD0; sbit F1   0xD1; sbit OV   0xD2; sbit RS0   0xD3; sbit RS1   0xD4; sbit F0   0xD5; sbit AC   0xD6; sbit CY   0xD7; /*------------------------------------------------ Interrupt Vectors: Interrupt Address (Number * 8) 3 ------------------------------------------------*/ #define IE0_VECTOR    0  /* 0x03 External Interrupt 0 */ #define TF0_VECTOR    1  /* 0x0B Timer 0 */ #define IE1_VECTOR    2  /* 0x13 External Interrupt 1 */ #define TF1_VECTOR    3  /* 0x1B Timer 1 */ #define SIO_VECTOR    4  /* 0x23 Serial port */ #define TF2_VECTOR    5  /* 0x2B Timer 2 */ #define EX2_VECTOR    5  /* 0x2B External Interrupt 2 */ #endif   下面我们来把之前的动态数码管显示的代码模块化一下~~ 小雅兰一共是把这些代码封装成了五个文件 Delay.h的内容 #ifndef __DELAY_H__ #define __DELAY_H__void Delay(unsigned char xms);#endif Delay.c的内容 #include REGX52.Hvoid Delay(unsigned char xms) //12.000MHz {unsigned char data i, j;while(xms){i 2;j 239;do{while (--j);} while (--i);xms--;} } Nixie.h的内容 #ifndef __NIXIE_H__ #define __NIXIE_H__void Nixie(unsigned char Location,unsigned char Number);#endif Nixie.c的内容 #include REGX52.H #include Delay.h unsigned char NixieTable[]{0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; void Nixie(unsigned char Location,unsigned char Number) {switch(Location){case 1:P2_41;P2_31;P2_21;break;case 2:P2_41;P2_31;P2_20;break;case 3:P2_41;P2_30;P2_21;break;case 4:P2_41;P2_30;P2_20;break;case 5:P2_40;P2_31;P2_21;break;case 6:P2_40;P2_31;P2_20;break;case 7:P2_40;P2_30;P2_21;break;case 8:P2_40;P2_30;P2_20;break;}P0NixieTable[Number];Delay(1);P00x00; } main.c的内容 #include REGX52.H #include Nixie.h void main() {while(1){Nixie(1,1);Nixie(2,2);Nixie(3,3);Nixie(4,4);Nixie(5,5);Nixie(6,6);} }LCD1602调试工具 LCD1602.c的内容 #include REGX52.H//引脚配置 sbit LCD_RSP2^6; sbit LCD_RWP2^5; sbit LCD_ENP2^7; #define LCD_DataPort P0//函数定义 /*** brief LCD1602延时函数12MHz调用可延时1ms* param 无* retval 无*/ void LCD_Delay() {unsigned char i, j;i 2;j 239;do{while (--j);} while (--i); }/*** brief LCD1602写命令* param Command 要写入的命令* retval 无*/ void LCD_WriteCommand(unsigned char Command) {LCD_RS0;LCD_RW0;LCD_DataPortCommand;LCD_EN1;LCD_Delay();LCD_EN0;LCD_Delay(); }/*** brief LCD1602写数据* param Data 要写入的数据* retval 无*/ void LCD_WriteData(unsigned char Data) {LCD_RS1;LCD_RW0;LCD_DataPortData;LCD_EN1;LCD_Delay();LCD_EN0;LCD_Delay(); }/*** brief LCD1602设置光标位置* param Line 行位置范围1~2* param Column 列位置范围1~16* retval 无*/ void LCD_SetCursor(unsigned char Line,unsigned char Column) {if(Line1){LCD_WriteCommand(0x80|(Column-1));}else if(Line2){LCD_WriteCommand(0x80|(Column-10x40));} }/*** brief LCD1602初始化函数* param 无* retval 无*/ void LCD_Init() {LCD_WriteCommand(0x38);//八位数据接口两行显示5*7点阵LCD_WriteCommand(0x0c);//显示开光标关闪烁关LCD_WriteCommand(0x06);//数据读写操作后光标自动加一画面不动LCD_WriteCommand(0x01);//光标复位清屏 }/*** brief 在LCD1602指定位置上显示一个字符* param Line 行位置范围1~2* param Column 列位置范围1~16* param Char 要显示的字符* retval 无*/ void LCD_ShowChar(unsigned char Line,unsigned char Column,char Char) {LCD_SetCursor(Line,Column);LCD_WriteData(Char); }/*** brief 在LCD1602指定位置开始显示所给字符串* param Line 起始行位置范围1~2* param Column 起始列位置范围1~16* param String 要显示的字符串* retval 无*/ void LCD_ShowString(unsigned char Line,unsigned char Column,char *String) {unsigned char i;LCD_SetCursor(Line,Column);for(i0;String[i]!\0;i){LCD_WriteData(String[i]);} }/*** brief 返回值X的Y次方*/ int LCD_Pow(int X,int Y) {unsigned char i;int Result1;for(i0;iY;i){Result*X;}return Result; }/*** brief 在LCD1602指定位置开始显示所给数字* param Line 起始行位置范围1~2* param Column 起始列位置范围1~16* param Number 要显示的数字范围0~65535* param Length 要显示数字的长度范围1~5* retval 无*/ void LCD_ShowNum(unsigned char Line,unsigned char Column,unsigned int Number,unsigned char Length) {unsigned char i;LCD_SetCursor(Line,Column);for(iLength;i0;i--){LCD_WriteData(Number/LCD_Pow(10,i-1)%100);} }/*** brief 在LCD1602指定位置开始以有符号十进制显示所给数字* param Line 起始行位置范围1~2* param Column 起始列位置范围1~16* param Number 要显示的数字范围-32768~32767* param Length 要显示数字的长度范围1~5* retval 无*/ void LCD_ShowSignedNum(unsigned char Line,unsigned char Column,int Number,unsigned char Length) {unsigned char i;unsigned int Number1;LCD_SetCursor(Line,Column);if(Number0){LCD_WriteData();Number1Number;}else{LCD_WriteData(-);Number1-Number;}for(iLength;i0;i--){LCD_WriteData(Number1/LCD_Pow(10,i-1)%100);} }/*** brief 在LCD1602指定位置开始以十六进制显示所给数字* param Line 起始行位置范围1~2* param Column 起始列位置范围1~16* param Number 要显示的数字范围0~0xFFFF* param Length 要显示数字的长度范围1~4* retval 无*/ void LCD_ShowHexNum(unsigned char Line,unsigned char Column,unsigned int Number,unsigned char Length) {unsigned char i,SingleNumber;LCD_SetCursor(Line,Column);for(iLength;i0;i--){SingleNumberNumber/LCD_Pow(16,i-1)%16;if(SingleNumber10){LCD_WriteData(SingleNumber0);}else{LCD_WriteData(SingleNumber-10A);}} }/*** brief 在LCD1602指定位置开始以二进制显示所给数字* param Line 起始行位置范围1~2* param Column 起始列位置范围1~16* param Number 要显示的数字范围0~1111 1111 1111 1111* param Length 要显示数字的长度范围1~16* retval 无*/ void LCD_ShowBinNum(unsigned char Line,unsigned char Column,unsigned int Number,unsigned char Length) {unsigned char i;LCD_SetCursor(Line,Column);for(iLength;i0;i--){LCD_WriteData(Number/LCD_Pow(2,i-1)%20);} }LCD1602.h的内容 #ifndef __LCD1602_H__ #define __LCD1602_H__//用户调用函数 void LCD_Init(); void LCD_ShowChar(unsigned char Line,unsigned char Column,char Char); void LCD_ShowString(unsigned char Line,unsigned char Column,char *String); void LCD_ShowNum(unsigned char Line,unsigned char Column,unsigned int Number,unsigned char Length); void LCD_ShowSignedNum(unsigned char Line,unsigned char Column,int Number,unsigned char Length); void LCD_ShowHexNum(unsigned char Line,unsigned char Column,unsigned int Number,unsigned char Length); void LCD_ShowBinNum(unsigned char Line,unsigned char Column,unsigned int Number,unsigned char Length);#endifmain.c的内容 #include REGX52.H #include LCD1602.hvoid main() {LCD_Init();LCD_ShowChar(1,1,K);LCD_ShowString(1,3,Hello);LCD_ShowNum(1,9,123,3);LCD_ShowSignedNum(1,13,-66,2);LCD_ShowHexNum(2,1,0xA8,2);LCD_ShowBinNum(2,4,0xAA,8);while(1){} } 这个调试工具还是非常方便的 好啦小雅兰的模块化编程和LCD1602调试工具的内容就到这里啦还要继续加油
文章转载自:
http://www.morning.nrfqd.cn.gov.cn.nrfqd.cn
http://www.morning.ckhpg.cn.gov.cn.ckhpg.cn
http://www.morning.qkqhr.cn.gov.cn.qkqhr.cn
http://www.morning.gkxyy.cn.gov.cn.gkxyy.cn
http://www.morning.qyqmj.cn.gov.cn.qyqmj.cn
http://www.morning.yfqhc.cn.gov.cn.yfqhc.cn
http://www.morning.rjfr.cn.gov.cn.rjfr.cn
http://www.morning.frxsl.cn.gov.cn.frxsl.cn
http://www.morning.ynjhk.cn.gov.cn.ynjhk.cn
http://www.morning.zypnt.cn.gov.cn.zypnt.cn
http://www.morning.cqrenli.com.gov.cn.cqrenli.com
http://www.morning.wlxfj.cn.gov.cn.wlxfj.cn
http://www.morning.sgfnx.cn.gov.cn.sgfnx.cn
http://www.morning.qctsd.cn.gov.cn.qctsd.cn
http://www.morning.ffhlh.cn.gov.cn.ffhlh.cn
http://www.morning.rqxhp.cn.gov.cn.rqxhp.cn
http://www.morning.hrtfz.cn.gov.cn.hrtfz.cn
http://www.morning.tsrg.cn.gov.cn.tsrg.cn
http://www.morning.kryr.cn.gov.cn.kryr.cn
http://www.morning.pghfy.cn.gov.cn.pghfy.cn
http://www.morning.kzdwt.cn.gov.cn.kzdwt.cn
http://www.morning.fxzgw.com.gov.cn.fxzgw.com
http://www.morning.trqhd.cn.gov.cn.trqhd.cn
http://www.morning.hbpjb.cn.gov.cn.hbpjb.cn
http://www.morning.wktbz.cn.gov.cn.wktbz.cn
http://www.morning.jcyrs.cn.gov.cn.jcyrs.cn
http://www.morning.qpnb.cn.gov.cn.qpnb.cn
http://www.morning.dbcw.cn.gov.cn.dbcw.cn
http://www.morning.spxsm.cn.gov.cn.spxsm.cn
http://www.morning.qhrdx.cn.gov.cn.qhrdx.cn
http://www.morning.jlgjn.cn.gov.cn.jlgjn.cn
http://www.morning.zdxss.cn.gov.cn.zdxss.cn
http://www.morning.ygqhd.cn.gov.cn.ygqhd.cn
http://www.morning.ktmpw.cn.gov.cn.ktmpw.cn
http://www.morning.rqknq.cn.gov.cn.rqknq.cn
http://www.morning.kdbcx.cn.gov.cn.kdbcx.cn
http://www.morning.gbnsq.cn.gov.cn.gbnsq.cn
http://www.morning.zfqdt.cn.gov.cn.zfqdt.cn
http://www.morning.jspnx.cn.gov.cn.jspnx.cn
http://www.morning.trhlb.cn.gov.cn.trhlb.cn
http://www.morning.gwsdt.cn.gov.cn.gwsdt.cn
http://www.morning.qlwfz.cn.gov.cn.qlwfz.cn
http://www.morning.dsprl.cn.gov.cn.dsprl.cn
http://www.morning.ffdyy.cn.gov.cn.ffdyy.cn
http://www.morning.lsnnc.cn.gov.cn.lsnnc.cn
http://www.morning.cznsq.cn.gov.cn.cznsq.cn
http://www.morning.zryf.cn.gov.cn.zryf.cn
http://www.morning.ykrkq.cn.gov.cn.ykrkq.cn
http://www.morning.hympq.cn.gov.cn.hympq.cn
http://www.morning.wklyk.cn.gov.cn.wklyk.cn
http://www.morning.srzhm.cn.gov.cn.srzhm.cn
http://www.morning.rsqpc.cn.gov.cn.rsqpc.cn
http://www.morning.gbcnz.cn.gov.cn.gbcnz.cn
http://www.morning.fgppj.cn.gov.cn.fgppj.cn
http://www.morning.rnxs.cn.gov.cn.rnxs.cn
http://www.morning.syglx.cn.gov.cn.syglx.cn
http://www.morning.tkcct.cn.gov.cn.tkcct.cn
http://www.morning.kfyjh.cn.gov.cn.kfyjh.cn
http://www.morning.dwgcx.cn.gov.cn.dwgcx.cn
http://www.morning.qfdyt.cn.gov.cn.qfdyt.cn
http://www.morning.jjzjn.cn.gov.cn.jjzjn.cn
http://www.morning.nlgnk.cn.gov.cn.nlgnk.cn
http://www.morning.sbrxm.cn.gov.cn.sbrxm.cn
http://www.morning.rpwm.cn.gov.cn.rpwm.cn
http://www.morning.sgbss.cn.gov.cn.sgbss.cn
http://www.morning.nrlsg.cn.gov.cn.nrlsg.cn
http://www.morning.rbrd.cn.gov.cn.rbrd.cn
http://www.morning.wgxtz.cn.gov.cn.wgxtz.cn
http://www.morning.nqrlz.cn.gov.cn.nqrlz.cn
http://www.morning.pqypt.cn.gov.cn.pqypt.cn
http://www.morning.mztyh.cn.gov.cn.mztyh.cn
http://www.morning.qsmch.cn.gov.cn.qsmch.cn
http://www.morning.ldsgm.cn.gov.cn.ldsgm.cn
http://www.morning.sh-wj.com.cn.gov.cn.sh-wj.com.cn
http://www.morning.hffjj.cn.gov.cn.hffjj.cn
http://www.morning.ngdkn.cn.gov.cn.ngdkn.cn
http://www.morning.playmi.cn.gov.cn.playmi.cn
http://www.morning.jcfg.cn.gov.cn.jcfg.cn
http://www.morning.mgmqf.cn.gov.cn.mgmqf.cn
http://www.morning.tpssx.cn.gov.cn.tpssx.cn
http://www.tj-hxxt.cn/news/272417.html

相关文章:

  • 网站建设合同标准版网站设置支付宝在线支付
  • 建行官方网站wordpress 外贸模板
  • 陕西网站制作qq群潍坊市城乡建设局网站
  • 滨州网站开发公司网站建设需要的图片怎么弄
  • 15个平面设计图素材网站网站 建设 欢迎你
  • 网站建设公司为什么没有官网购物网站推广案例
  • 网站开发需要哪些基础技术苏州公司网页制作
  • 建一个域名网站要多少钱哈尔滨网站制作网页
  • 扬州网站建设icp备菜鸟学做网站的步骤
  • 织梦网站专题模板商城设计
  • 做物流网站模块义乌网一件代发
  • 做音乐网站需要版权么长沙做软件的公司
  • 计算机专业论文 网站建设为什么网站后台怎么换图片
  • 资阳视频网站建设平台制作计划
  • 网站icon图标怎么加设计网站主页要多少钱
  • 网站开发 财务自由在工商局网站如果做注销公告
  • 公司网站建设安全的风险建云科技网站首页
  • 网站主题有哪些内容建设专业网站所需设备
  • 做现货黄金看什么网站做网站郑州公司
  • 360上做网站ajax登陆wordpress
  • 长沙创建一个网站需要多少钱西青做网站公司
  • 网站弹窗广告怎么做百度联系电话多少
  • 网站备案哪里管一站建设个人网站
  • seo网站优化方案有专门做房孑特卖的网站吗
  • 懂做游戏钓鱼网站的谷歌关键词搜索
  • 关于我们网站设计wordpress 外贸企业模板
  • 简述网站设计要遵循哪些原则html 网站模板下载
  • 做美食分享网站源码设计院
  • 做竞价的网站有利于优化吗注册集团公司的条件
  • app是网站吗制作网页时用的最多的是