




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
stc12c5a60s2 AD采集 12864串行显示终极程序 带滤波作者:电子工程师 (天津)由于AD采集电压并在12864上显示的程序很常用,然而网上很多程序各种各样,又有很多缺点,所以就利用工作之余的时间对用到的程序进行了整理,调试,优化以方便各位电子爱好者使用。这段程序已经调试通过,改下io即可直接应用。最后有两张效果图。LCD_PSB=0;(并串选择口)LCD_RST =1;(复位口)注意:本程序用的是12864串行显示,将PSB引脚接地,RST拉高、片选口RS接高之后除了电源和地线,只用2根线就可以显示了,接线很方便,最大程度的节省了io口。 本程序是以电流采集为例的,采集的是电流传感器输出的电压,然后转换成电流,如果只需要采集电压的话将转化为电流的语句删除即可。AD是stc12c5a60s2 自带的10位AD。使用很方便。有不明白的可以qq联系我,1264136841#includestc12c5a60s2.h#includeintrins.hfloat ADvalue = 0;unsigned int volage = 0;unsigned int current = 0;void InitializeDisplay();void InitializeLcd12864();void displaystring(unsigned char add,unsigned int num);void WriteCommandLcd12864(unsigned char temp);void InitializeDisplay();void InitializeAD();unsigned int ReadADvalue(unsigned char channel);float SmoothingFilter(unsigned int temp);void Delay_us(unsigned int xus);void Delay_ms(unsigned int xms);sbit LCD_SID = P25;/即RW口sbit LCD_CLK = P26;/即E口code unsigned char name1 = escrewdriver;code unsigned char name2 = 电流采集显示;code unsigned char name3 = 电流: A ;code unsigned char name4 = 参数: mm ;void main()/InitializeAD();/InitializeTimer0();/InitializeUart();InitializeLcd12864();InitializeDisplay();while(1)ADvalue = ReadADvalue(0);/读回AD值ADvalue = ADvalue*5000/1024;/转换成电压值/*if(ADvalue 2500)/防止电压浮动在2.5V以上ADvalue = 2500;ADvalue = 2500-ADvalue;/电流反方向流过传感器,输出电压值小于2.5V,*/current = (ADvalue*8);/计算电流,每0.625V代表7.5A 即每 1V代表12Acurrent = SmoothingFilter(current);/进行一下平滑滤波 displaystring(0x8b,current);displaystring(0x9b,0.5*current);/*延时函数*/ void Delay_us(unsigned int xus)/11.0592MHzwhile(xus-0)_nop_();_nop_();_nop_();void Delay_ms(unsigned int xms)/11.0592MHzunsigned int y=0;for(;xms0;xms-)for(y=0;y600;y+);/*延时函数*/*/*lcd12864显示部分*/*/void InitializeLcd12864()WriteCommandLcd12864(0x30);/基本功能WriteCommandLcd12864(0x0c);/显示开,光标关WriteCommandLcd12864(0x01);/清屏void WriteByteLcd12864(unsigned char temp)unsigned char i;LCD_CLK = 0;for(i=0;i8;i+)if(temp&0x80)LCD_SID = 1;elseLCD_SID = 0;LCD_CLK = 1;Delay_us(10);temp = 1;LCD_CLK = 0;Delay_us(10);void WriteCommandLcd12864(unsigned char temp)WriteByteLcd12864(0xf8);WriteByteLcd12864(temp&0xf0);WriteByteLcd12864(temp4);void WriteDataLcd12864(unsigned char temp)WriteByteLcd12864(0xfa);WriteByteLcd12864(temp&0xf0);WriteByteLcd12864(temp0;length-) WriteDataLcd12864(*temp);temp+; /*显示电压和电流*/void displaystring(unsigned char add,unsigned int num)unsigned char buf10,i;buf0 = num/10000;buf1 = num%10000/1000;buf2 = num%1000/100;buf3 = num%100/10;buf4 = num%10;WriteCommandLcd12864
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年客房服务职业技能进阶模拟题集及答案详解
- 第3节 动画角色的运动教学设计-2025-2026学年初中信息技术(信息科技)第二册河北大学版(第3版)
- 2025年价格鉴证市场发展趋势分析预测题集
- 仲裁宣传策划方案范本
- 保鲜库门套施工方案
- 结构柱加固施工方案范本
- 网红岩板影视墙施工方案
- 犬防服务方案范本
- 混凝土施工方案如何写好
- 2025年乡村物流招聘笔试模拟试题及答案
- 铭记历史缅怀先烈,珍爱和平开创未来课件
- 二年级数学下册口算天天练
- 有机化学课件(李景宁主编)第1章-绪论
- 全友导购员培训资料(机密)
- 白话译文《渔樵问对》(全篇)
- 医院消毒灭菌效果监测制度
- +GF+-SIGNET8850电导率变送器手册
- 大豆收购合同范本
- 2023学年完整公开课版水准仪认识
- 人文地理学(王恩涌)
- 教育学第五章教师与学生
评论
0/150
提交评论