河北建设工程信息网站,网站的服务费账怎么做,单机多wordpress,安徽电子信息工程技术学院校园网一、系统方案 1、本设计采用这51单片机作为主控器。 2、转速值送到液晶1602显示。 3、按键设加减速#xff0c;开始暂停、正反转。
二、硬件设计 原理图如下#xff1a;
三、单片机软件设计 1、首先是系统初始化 en0; rw0; write_com(0x01); //lcd初始化 write_com(0x38)…一、系统方案 1、本设计采用这51单片机作为主控器。 2、转速值送到液晶1602显示。 3、按键设加减速开始暂停、正反转。
二、硬件设计 原理图如下
三、单片机软件设计 1、首先是系统初始化 en0; rw0; write_com(0x01); //lcd初始化 write_com(0x38); //5X7显示 write_com(0x0c); //关闭光标 TMOD0x01; //定时器方式1 TH00xdc; TL00x00; //定时器初值 EA1; //开中断 ET01; //定时器0开中断 TR01; EX11; 2、液晶显示程序 void write_com(uchar com)//1602控制指令 { rs0; P0com; delay(5); en0; delay(10); en1; } void write_data(uchar date)//1602数据指令 { rs1; P0date; delay(5); en0; delay(5); en1; } 3、按键程序 void keyscan() //键盘扫描函数 { if(num10) { delay(5); //消除抖动 if(num10) { if(m199) m; displaym(); //占空比加一 } } if(num20) { delay(5); if(num20) { if(m1) m–; displaym(); //占空比技跻? }} if(num30) { delay(5); if(num30) { zheng1; //开始正转 fan0; // 反转停止 }} if(num40) { delay(5); if(num40) { zheng0; //正转停止 fan1; // 反转开始 }} if(num50) { delay(5); if(num50) { while(num50) ; kai1-kai; } } } 4、核心算法程序 void display() { write_com(0x82); zhuansuzhuansu*30; //每分钟转速
if(zhuansu/10000!0) write_data(zhuansu/100000x30); else write_data(’ );
if(zhuansu/10000) write_data(’ ); else write_data(zhuansu%10000/10000x30); if(zhuansu/1000) write_data(’ ‘); else write_data(zhuansu%10000%1000/1000x30); if(zhuansu/100) write_data(’ ); else write_data(zhuansu%10000%1000%100/100x30);
write_data(zhuansu%10000%1000%100%100x30); write_com(0xd0); } void displaym() { write_com(0xcb); if(m/200%10!0) write_data(m/200%100x30); else write_data(’ );
if(m/200%100m/20%100) write_data(’ ); else write_data(m/20%100x30); write_data(m/2%100x30); } 四、 proteus仿真设计 Proteus软件是一款应用比较广泛的工具它可以在没有硬件平台的基础上通过自身的软件仿真出硬件平台的运行情况这样就可以通过软件仿真来验证我们设计的方案有没有问题如果有问题可以重新选择器件连接器件直到达到我们设定的目的避免我们搭建实物的时候如果当初选择的方案有问题我们器件都已经焊接好了再去卸载下去再去焊接新的方案的器件测试这样会浪费人力和物力也给开发者带来一定困惑Proteus仿真软件就很好的解决这个问题我们在设计之初就使用该软件进行模拟仿真测试选择满足我们设计的最优方案。最后根据测试没问题的仿真图纸焊接实物调试最终完成本设计的作品。