• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于51单片机的自行车【调速,LCD1602】(仿真)

06/17 09:20
422
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

有需要资料的可了解一下.docx

共1个文件

给大家提供一些资料详细解释,有需要的自行提取,网盘地址我放在下面

链接:https://pan.baidu.com/s/1NigBeujDZTCFL0hdMiu7yg?pwd=syxp
提取码:syxp

自行车调速系统:

1、使用LCD1602显示当前速度和设置速度;

2、使用电位器设置当前速度,模拟把手调速;

3、按键启停系统;

4、速度控制采用PWM调节。

#include "ADC0832.h"
#include "intrins.h"
/*********************************************
读取ADC
**********************************************/
uchar ADC(uchar ch)//通道ch	 1,2
{
	uchar temp0,temp1,i;
	CS=0;
	temp0=0;
	temp1=0;
	_nop_();
	_nop_();
	DI=1;//开始位
	_nop_();
	_nop_();
	CLK=1;
	_nop_();
	_nop_();
	CLK=0;
	_nop_();
	_nop_();
	DI=0;
	_nop_();
	_nop_();
//选择通道0
	DI=1;
	_nop_();
	CLK=1;//上升沿DI=1
	_nop_();
	CLK=0;//1个下降沿DI=1
	_nop_();
	if(ch==1)
	DI=0;
	if(ch==2)
	DI=1;
	_nop_();
	CLK=1;
	_nop_();
	CLK=0;//第3个上升沿DI=0
	_nop_();
   	DI=1;
//********通道选择结束开始读取转换后的二进制数****
//下降沿读数,一下进行判断和处理,共8次
for(i=0;i<8;i++)
   {
	temp0=temp0<<1;
	CLK=1;
    if(DO)
   	temp0++;
   	_nop_();
   	CLK=0;
   }
for(i=0;i<8;i++)
   {
	temp1=temp1>>1;
	CLK=1;
    if(DO)
   	temp1=temp1 +0x80;
   	_nop_();
   	CLK=0;
   }
	 CS=1;
   return temp0;
}

资料借鉴于此纷传

  • 有需要资料的可了解一下.docx
    下载

相关推荐