资源简介
电风扇模拟控制系统设计 包括要求和代码。仅供参考!!!~~

代码片段和文件信息
/********************************************************************
* 文件名 : monidianfengshan.c
* 描述 : 该文件实现对电风扇的功能的模拟,可定时,摇头,三种风种选择
* 创建人 : 侯伟玉,2010年5月6日
***********************************************************************/
#include
#include
#define uchar unsigned char
#define uint unsigned int
sbit pwm=P3^0; //脉宽调制输出
sbit in=P3^6; //H桥的输入1
sbit out=P3^7; //H桥的输入2
uchar code tab[]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f}; //数码管的显示代码
uchar value=0; //用于装按键返回值
uchar tempnumflag=2; //flag为正反转标志位
uchar buff[2]={00}; //装定时的秒的十位和各位
uchar yao=0;
bit fan;
void delay(uchar y);
void delay1(uchar x);
uchar scan();
void dingshi(uchar zhi);
void display();
/********************************************************************
* 名称 : delay()
* 功能 : 长延时
* 输入 : y
* 输出 : 无
***********************************************************************/
void delay(uchar y)//长延时,用于消抖
{
uchar ij;
for(i=0;i for(j=0;j<110;j++);
}
/********************************************************************
* 名称 : delay1()
* 功能 : 短暂延时,用于动态扫描数码管
* 输入 : x
* 输出 : 无
***********************************************************************/
void delay1(uchar x)
{
uchar ij;
for(i=0;i for(j=0;j<110;j++);
}
/********************************************************************
* 名称 : scan()
* 功能 : 计算按键值
* 输入 : 无
* 输出 : i+4*j
***********************************************************************/
uchar scan() //键盘扫描返回值计算
{
uchar ij;
uchar tem;
uchar code buf[]={0xef0xdf0xbf0x7f}; //列扫描码
for(j=0;j<4;j++) //先给每一列赋值
{
P1=buf[j];
_nop_();
_nop_();
_nop_();
tem=0x01;
for(i=0;i<4;i++) //再从每一行读取值,看看哪一行按键被按下
{
if(!(P1&tem)) //发现被按下的行
{
return(i+4*j); //返回按键值
}
tem=tem<<1;
}
}
}
/********************************************************************
* 名称 : display()
* 功能 : 数码管显示,显示风种,定时时间
* 输入 : 无
* 输出 : 无
***********************************************************************/
void display()
{
static uchar gao;
if(value==1|value==2|value==3) //先设置定时,再选取吹哪种风
{
gao=value;
}
P2=0;
P0=tab[gao];
delay1(10);
P2=1;
P0=tab[0];
delay1(10);
P2=2;
P0=tab[buff[0]]; //显示秒的十位
delay1(10);
P2=3;
P0=tab[buff[1]]; //显示秒的个位
delay1(10);
}
/********************************************************************
* 名称 : main()
* 功能 : 主函数
* 输入 : 无
* 输出 : 无
***********************************************************************/
void main()
{
uchar guan;
TMOD=0x11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
IT0=0;
IT1=1;
TR0=1;
ET0=1;
EX0=1;
EX1=1;
EA=1;
pwm=0; //先关掉直流电机
while(1)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 72704 2010-05-02 21:24 模拟电风扇\2009天华杯单片机设计样题.doc
文件 136543 2010-05-06 23:10 模拟电风扇\Last Loaded 模拟风扇.DBK
文件 9307 2010-05-09 13:18 模拟电风扇\monidianfengshan
文件 5879 2010-05-09 13:58 模拟电风扇\monidianfengshan.c
文件 2231 2010-05-09 13:18 模拟电风扇\monidianfengshan.hex
文件 80 2010-05-09 13:18 模拟电风扇\monidianfengshan.lnp
文件 12202 2010-05-09 13:18 模拟电风扇\monidianfengshan.LST
文件 14747 2010-05-09 13:18 模拟电风扇\monidianfengshan.M51
文件 10030 2010-05-09 13:18 模拟电风扇\monidianfengshan.OBJ
....... 1063 2010-05-09 19:39 模拟电风扇\monidianfengshan.opt.bak
文件 160 2010-09-19 20:51 模拟电风扇\monidianfengshan.plg
....... 2209 2010-05-04 20:41 模拟电风扇\monidianfengshan.Uv2.bak
....... 56186 2010-09-19 20:51 模拟电风扇\monidianfengshan.uvopt
....... 13459 2010-09-19 20:51 模拟电风扇\monidianfengshan.uvproj
文件 1066 2010-05-09 13:58 模拟电风扇\monidianfengshan_Opt.Bak
文件 2205 2010-05-04 12:54 模拟电风扇\monidianfengshan_Uv2.Bak
文件 6376 2005-03-22 15:22 模拟电风扇\STARTUP.A51
文件 14055 2010-05-07 23:13 模拟电风扇\STARTUP.LST
文件 749 2010-05-07 23:13 模拟电风扇\STARTUP.OBJ
..AD... 0 2010-09-19 20:51 模拟电风扇
----------- --------- ---------- ----- ----
361251 20
- 上一篇:16位 8086汇编源码
- 下一篇:封装一个类搞定90%安卓客户端与服务器端交互
相关资源
- 最新的北京地铁shp文件75146
- 程序员专用字体YaHei.Consolas.1.11b42517
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- 清翔电子MCS51开发板资料_新版 01_开发
- MCS_51单片机与8255A的接口设计
- Rtx51_tiny_RTOS中文版.pdf
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- proteus仿真 AT89C51输出各种波形
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 单片机与温度传感器DS18B20的程序设计
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51模拟SPI读写SD卡(包括Fat和Fat32文件
- NRF24L01实现51与STM32双向通讯
- 基于c8051f020的AD转换程序及LCD显示程序
评论
共有 条评论