历史上的今天
今天是:2024年11月04日(星期一)
2020年11月04日 | 风速风向传感器在单片机上的应用
2020-11-04 来源:51hei
/*本风速传感器采用小型直流有刷电机与三杯式旋转风杯组装
而成,其工作原理为,当环境有水平流动风时,旋转风杯能够产生旋转,并带动小型电机产生电压,其电压与旋转速度基本成正比。利用此信号电压,可以对环境风速进行测量。这款风速传感器采用海洋军用的高精度测量风速传感器,与传统产品先别,具有更高精度;是建筑机械(起重机、履带吊、门吊、塔吊)、铁路、港口、码头、风力发电、光伏发电、电厂、气象、索道、环境、温室、养殖等领域不可缺少的风速检测装置。用它可以实现设备风速指示数字化及自动化,是相关设备不可缺少的风速检测设备。*/
//使用该程序和电路再搭配我们的风速风向传感器就可以实时显示风速风向数据
#冠拓电子
#include #include #include #define uchar unsigned char #define uint unsigned int #define MAIN_Fosc 11059200L //定义主时钟, 模拟串口和和延时会自动适应。5~35MHZ 22118400L // 7 6 5 4 3 2 1 0 Reset Value //sfr ADC_CONTR = 0xBC; ADC_POWER SPEED1 SPEED0 ADC_FLAG ADC_START CHS2 CHS1 CHS0 0000,0000 //AD 转换控制寄存器 #define ADC_OFF() ADC_CONTR = 0 #define ADC_ON (1 << 7) #define ADC_90T (3 << 5) #define ADC_180T (2 << 5) #define ADC_360T (1 << 5) #define ADC_540T 0 #define ADC_FLAG (1 << 4) //软件清0 #define ADC_START (1 << 3) //自动清0 #define ADC_CH0 0 #define ADC_CH1 1 #define ADC_CH2 2 #define ADC_CH3 3 #define ADC_CH4 4 #define ADC_CH5 5 #define ADC_CH6 6 #define ADC_CH7 7 //sbit k1 = P2^0; //sbit buzzer = P3^7; /************* 本地变量声明 **************/ int wind_set = 50; float wind_speed = 0.0; float wind_ppm = 0.0; void wind_Value_Conversion(); float FX_Value=0.0;//风向传感器输出的模拟电压值 //int dir_set = 1; //int dir_set1; /*1=N2=S3=W4=E5=EN6=ES7=WN8=WS*/ unsigned int FX_NUM=0;//AD采集后的数字量 unsigned char disbuff[10]={0}; //显示字符数组 void FX_Value_Conversion(); //风向处理显示函数 void Delay1(unsigned int time); //延时子函数 void DelayUs(unsigned int time); //延时主程序 uint adc10_start(uchar channel); //channel = 0~7 AD转换 /*void press_k1(void) { if(k1 == 0) { Delay1(100); if(k1 == 0) { dir_set += 1; if(dir_set>8) { dir_set = 1; } } } } /*void press_k2() { if(k2 == 0) { Delay1(100); if(k2 == 0) { wind_set -= 1; if(wind_set<0) { wind_set = 999; } } } } */ // void display_set() //按键设置显示 // //{ // if(dir_set == 1) /*1=N2=S3=W4=E5=EN6=ES7=WN8=WS*/ // { // DisplayString(0x09,0,"set:N "); // } // else if(dir_set == 2) // { // DisplayString(0x09,0,"set:S "); // } // else if(dir_set == 3) // { // DisplayString(0x09,0,"set:W "); // } // else if(dir_set == 4) // { // DisplayString(0x09,0,"set:E "); // } // else if(dir_set == 5) // { // DisplayString(0x09,0,"set:EN"); // } // else if(dir_set == 6) // { // DisplayString(0x09,0,"set:ES"); // } // else if(dir_set == 7) // { // DisplayString(0x09,0,"set:WN"); // } // else if(dir_set == 8) // { // DisplayString(0x09,0,"set:WS"); // } // } /*void display_set() //按键设置显示 { uchar num1, num2, num3; num1 = wind_set/100+'0'; num2 = wind_set%100/10+'0'; num3 = wind_set%10+'0'; DisplaySingleChar(0x04,1,num1); DisplaySingleChar(0x05,1,num2); DisplaySingleChar(0x06,1,num3); DisplayString(0x7,1,"km/h"); } */ //void buzzer_on() //{ // if(dir_set==dir_set1) /*从1****8取值*/ // { // buzzer = 0; // } // else // { // buzzer = 1; // } //} void main() { P1ASF = 0x07; //12C5A60AD/S2系列模拟输入(AD)选择 ADC_CONTR = ADC_360T | ADC_ON; LCDInit(); //显示屏初始化 DisplayString(0x0,0," Welcome... "); Delay1(500);
下一篇:51单片机控制模拟交通信号灯
史海拾趣
|
NOKIA 5110LCD的驱动及曲线显示实现方法(带照片) NOKIA 5110LCD的驱动(带照片) NOKIA5110LCD的曲线显示实现方法-MSP430F149 将NOKIA5110LCD进行到底之虚拟屏技术--eeworld原创… 查看全部问答> |
|
【好书下载】全国大学生电子设计竞赛培训系列教程--电子仪器仪表设计 本帖最后由 paulhyde 于 2014-9-15 03:17 编辑 作者:高吉祥出版社:电子工业出版社 本书是针对全国大学生电子设计竞赛特点和需要,为高等学校电子信息工程、通信工程、自动化、电气控制、计算机类专业学生编著的培训教材。全书共有G章,内容包括 ...… 查看全部问答> |
|
网吧维护软件: 客户机磁盘还原,在修改系统里面文件及数据,在重起以后被还原。 然后在还原的状态下要能穿透还原进行游戏更新 现实服务器到客户机只间的数据传输 虚拟磁盘 有windows底层开发经验的者量力承接。 QQ 76321675(注明网吧 ...… 查看全部问答> |
|
请教各位大虾:ReadFile读USB设备出错 错误代码是0,说是operation completele successfully,怎么回事?… 查看全部问答> |
|
做“ST虚拟串口”实验时,当PC要求你指定驱动路径时,ST提供的demosVirtual_COM_PortSoftware Driver-------这个在ST哪个地方下载?… 查看全部问答> |
|
等了很久的Cyclone V SoC开始出货了,同步推出开发套件 开发套件最大的用途之一,就是作为参考设计了 套件包括Altera SoC EDS,采用了Altera版ARM DS-5工具包Altera公司(NASDAQ: ALTR)今天宣布,开始提供Cyclone® V SoC开发套件,这一开发平台加速了硬件和软件开发人员的嵌入式系统设计开发。 ...… 查看全部问答> |




