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

网站优化怎么做建设银行网站logo

网站优化怎么做,建设银行网站logo,广州 做网站,设计软件培训机构排行榜和之前一样建好工程文件夹#xff0c;里边包含User#xff08;放工程文件#xff0c;mian.c#xff09;、Driver#xff08;存放底层文件如Led.c#xff0c;Led.h等#xff09; 新建的工程先搭建框架#xff0c;可以先书写底层函数#xff08;此次书写了四个函数并包含…和之前一样建好工程文件夹里边包含User放工程文件mian.c、Driver存放底层文件如Led.cLed.h等 新建的工程先搭建框架可以先书写底层函数此次书写了四个函数并包含相应的头文件共八个底层文件 底层函数内容 1.初始化底层驱动专用文件 比如先用3个IO口控制74HC138译码器控制Y4为低电平当Y4为低电平时或非门74HC02控制Y4C为高电平使74HC573的OE端口有效OE端口有效时可使用P0口控制LED的亮灭。 可以去多了解74HC138译码器74HC02或非门74HC573八路输出透明锁存器的相关内容会更好理解 #include Init.h //关闭外设 void System_Init() {     P0 0xff;     P2 P2 0x1f | 0x80;     P2 0x1f;     P0 0x00;     P2 P2 0x1f | 0xa0;     P2 0x1f; } #include STC15F2K60S2.H void System_Init(); 2.Led底层驱动专用文件 与初始化底层驱动专用文件同理需要了解对应的锁存器控制可以在使用的芯片数据手册查看 #include Led.h void Led_Disp(unsigned char addr,enable) {     static unsigned char temp 0x00;     static unsigned char temp_old 0xff;     if(enable)         temp | 0x01 addr;     else         temp ~(0x01 addr);     if(temp ! temp_old)     {         P0 ~temp;         P2 P2 0x1f |0x80;         P2 0x1f;         temp_old temp;     } } #include STC15F2K60S2.H void Led_Disp(unsigned char addr,enable); 3.按键底层驱动专用文件 板子上的按键从按键4开始到按键19可根据实际硬件修改 #include Key.h unsigned char Key_Read() {     unsigned char temp 0;     if(P33 0) temp 4;     if(P32 0) temp 5;     if(P31 0) temp 6;     if(P30 0) temp 7;     return temp; } #include STC15F2K60S2.H unsigned char Key_Read(); 4.数码管底层驱动专用文件 这个板子使用的为共阳数码管若使用的为共阴数码管要更换对应的段码表和位选表与初始化底层驱动专用文件同理需要了解对应的锁存器控制可以在使用的芯片数据手册查看 #include Seg.h unsigned char Seg_Dula[] {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//数码管段码储存数组 unsigned char Seg_Wela[] {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//数码管位码储存数组 void Seg_Disp(unsigned char wela,dula,point) {     P0 0xff; //     P2 P2 0x1f |0xe0;     P2 0x1f;     P0 Seg_Wela[wela];     P2 P2 0x1f |0xc0;     P2 0x1f;     P0 Seg_Dula[dula];     if(point)         P0 0x7f;     P2 P2 0x1f |0xe0;     P2 0x1f; } #include STC15F2K60S2.H void Seg_Disp(unsigned char wela,dula,point); 工程主函数内容 1.头文件声明把需要用到的头文件添加进来 #include STC15F2K60S2.H//单片机寄存器专用头文件 #include Init.h//初始化底层驱动专用头文件 #include Led.h//Led底层驱动专用文件 #include Key.h//按键底层驱动专用文件 #include Seg.h//数码管底层驱动专用文件 2.变量声明把需要用到的所有变量现在这里进行声明 unsigned char Key_Val,Key_Down,Key_Old,Key_Up;//按键扫描专用变量 unsigned char Key_Slow_Down;//按键减速专用变量 10ms unsigned char Seg_Buf[8] {10,10,10,10,10,10,10,10};//数码管显示数据存放数组 unsigned char Seg_Point[8] {0,0,0,0,0,0,0,0};//数码管小数点数据存放数组 unsigned char Seg_Pos;//数码管扫描专用变量 unsigned char Seg_Slow_Down;//数码管减速专用变量 500ms unsigned char ucLed[8] {0,0,0,0,0,0,0,0};//Led显示数据存放数组 void Delay500ms()        //12.000MHz,测试使用的500ms延时 {     unsigned char i, j, k;     i 23;     j 205;     k 120;     do     {         do         {             while (--k);         } while (--j);     } while (--i); }   3.按键处理函数在这里编写按键控制的函数 void Key_Proc() {         if(Key_Slow_Down)return;         Key_Slow_Down 1;//按键减速程序                  Key_Val Key_Read();//读取按下的键码值         Key_Down Key_Val (Key_Val ^ Key_Old);//捕捉下降沿         Key_Up ~Key_Val (Key_Val ^ Key_Old);//捕捉上升沿         Key_Old Key_Val;//辅助扫描 //    switch (Key_Down)//测试这个函数使用状况测试结束后可以删掉 //    { //        case 4: //            Led_Disp(2,1); //            break; //        case 5: //            Led_Disp(2,0); //            break; //    } } 4.信息处理函数需要使用到到的函数进行简单的预处理 void Seg_Proc() {         //unsigned char i;//用于for循环         if(Seg_Slow_Down)return;         Seg_Slow_Down 1;//数码管减速程序 } 5.其他函数其他编写的函数在这里书写会比较方便理解 void Led_Proc() {      } 6.定时器0中断初始化函数 这个可以使用STC的定时器计算那里生成c代码后面要自己添加ET0,EA打开中断 void Timer0Init(void)        //1毫秒12.000MHz {     TMOD 0xF0;        //设置定时器模式     TL0 0x18;        //设置定时初值     TH0 0xFC;        //设置定时初值     TF0 0;        //清除TF0标志     TR0 1;        //定时器0开始计时          ET0 1;     EA 1; } 7.定时器0中断服务函数 为了定时执行特定的任务如此处设置了定时的时间触发了数码管和LED产生特定反应//中断在测试时可以先注释掉但是这里按键状态有延时测试按键时可以解除注释 void Timer0Server() interrupt 1 {              if(Key_Slow_Down 10)Key_Slow_Down 0;         if(Seg_Slow_Down 500)Seg_Slow_Down 0;         if(Seg_Pos 6)Seg_Pos 0;         Seg_Disp(Seg_Pos,Seg_Buf[Seg_Pos],Seg_Point[Seg_Pos]);         Led_Disp(Seg_Pos,ucLed[Seg_Pos]); } 8.主函数Main调用书写的函数实现所需的相应功能 void main() { //int i 0;,key_value;     System_Init();     //Timer0Init();//中断在测试时可以先注释掉     while(1)     {         Key_Proc();        Seg_Proc();         Led_Proc(); //        key_valueKey_Read();//测试按键按下的状态 //        if(key_value4) //        { //            Led_Disp(1,1); //        } //        else //        { //            Led_Disp(1,0); //        }          //        for(i0;i8;i)//测试数码管状态 //        { //            Seg_Disp(i,i,1); //        } //        for(i0;i8;i)//测试LED状态 //        { //            Led_Disp(i,1);Delay500ms();//LED亮起延时500ms //            Led_Disp(i,0);Delay500ms();//LED灭掉延时500ms //        }//1L1闪烁2L2闪烁3L3闪烁     } }
http://www.dnsts.com.cn/news/23889.html

相关文章:

  • 网站建设求职信息局强化网站建设和管理
  • 吉林长春seo网站建设网站优化网络营销工具有哪些?
  • 优化网站流量域名提供商
  • 质量好网站建设多少钱启用中文域名大网站
  • 国外视觉差网站四川煤矿标准化建设网站
  • 菏泽网站建设哪好哈尔滨网站建设开发外包
  • 那些彩票广告网站怎么做的手机网站定制建设
  • 做网站的公司应该做收录嘛百度风云榜热搜
  • 不用cms怎么做网站整站优化网站报价
  • 网站商品管理功能淘宝联盟如何建设个人网站
  • 产品介绍网站html源码上海高端网站建
  • 简单的html网站开发甘肃省住房和城乡建设厅网站
  • 自己搭建小程序seo推广是什么意思呢
  • 网站开发环境 对比互联网设计是什么
  • 十堰网站建设是什么沈阳建设工程信息网 采购甲方都在中项网
  • 涿州做软件和网站的十大网站建设公司
  • 沈阳做网站哪家便宜wordpress智能插件
  • 网站推广效益怎么分析sem推广计划
  • 杭州网站建设制作公司seo培训
  • 东营聊城网站建设改变关键词对网站的影响
  • 法语网站建设怎样免费建立自己的网站
  • 重庆建工集团建设网站wordpress 强制ssl
  • 龙华营销型网站设计设计教程网站
  • 浏览器正能量网站联合年检在什么网站做
  • 合肥市住房建设局网站网站优化排名易下拉用法
  • 大连网站建设短期培训班济南网站建设 力推聚搜网络
  • 虚拟机做门户网站如何绑定域名asp网站如何打开
  • 疗养院有必要做网站吗企业网站策划怎么样
  • 风中有朵雨做的云电影网站网站建设管理调研提纲
  • 直播网站制作网站优化柳州