-
大小: 22KB文件类型: .rar金币: 2下载: 0 次发布日期: 2021-06-01
- 语言: 其他
- 标签: A/D转换 STC12C5A60S2
资源简介
很简单的A/D转换程序,转化结果精确到小数点后两位,包含1602驱动程序。

代码片段和文件信息
#include “1602.h“
# include
typedef unsigned int WORD;
# define Vo 5.05
/*Declare SFR associated with the ADC 定义寄存器的地址*/
sfr ADC_CONTR = 0xBC;//ADC control register
sfr ADC_RES = 0xBD;// ADC result register
sfr ADC_RESL = 0xBE;//ADC result register
sfr P1ASF = 0x9D;//P1 secondary function control register
/*Define ADC operation const(常量) for for ADC_CONTR*/
# define ADC_POWER 0x80//ADC power control bit
# define ADC_FLAG 0x10//ADC complete flag bit
# define ADC_START 0x08//ADC start control bit
# define ADC_SPEEDHH 0x60//90 clocks
# define ADC_SPEEDH 0x40//180 clocks
# define ADC_SPEEDL 0x20//360 clocks
# define ADC_SPEEDLL 0x00//540 clocks
void Delay(WORD n);
void InitADC();
WORD AtoD5v(uchar resresl);
uchar ch = 7;//ADC channel NO
void Main()
{
lcd1602_Init();
lcd1602_string(11“A/D result:“);
while(1){
WORD b;
b = AtoD5v(ADC_RESADC_RESL)*(Vo*100)/1023;
lcd1602_char(25b/100+0x30);
lcd1602_char(26‘.‘);
lcd1602_char(27b/10%10+0x30);
lcd1602_char(28b%10+0x30);
InitADC();
}
}
/**********************************
Init_ADC sfr
***********************************/
void InitADC()
{
P1ASF = 0x00;//set all P1 as analog input port
ADC_RES = 0;//clear previous result
ADC_RESL = 0;
ADC_CONTR = ADC_POWER|ADC_SPEEDLL|ADC_START|ch;
Delay(2);//ADC power-on delay and startA/D conversion
}
/**************************
software delay function
**************************/
void Delay(WORD n)
{
WORD x;
while(n--)
{
x= 5000;
while(x--);
}
}
/********************************************
将结果寄存器中的值转化成十进制数
********************************************/
WORD AtoD5v(uchar resresl){
WORD R=res;
R<<=2;
R +=resl;
return R;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1504 2012-11-30 19:03 1602_AD\1602.h
文件 10742 2012-11-30 19:03 1602_AD\1602_AD
文件 1791 2012-11-30 19:03 1602_AD\1602_AD.c
文件 3894 2012-11-30 19:03 1602_AD\1602_AD.hex
文件 62 2012-11-30 19:03 1602_AD\1602_AD.lnp
文件 3951 2012-11-30 19:03 1602_AD\1602_AD.LST
文件 14955 2012-11-30 19:03 1602_AD\1602_AD.M51
文件 10318 2012-11-30 19:03 1602_AD\1602_AD.OBJ
文件 1044 2012-12-01 19:50 1602_AD\1602_AD.Opt
文件 191 2012-12-01 19:09 1602_AD\1602_AD.plg
文件 2053 2012-11-25 21:25 1602_AD\1602_AD.Uv2
....... 1056 2012-11-30 19:03 1602_AD\1602_AD_Opt.Bak
....... 0 2012-11-25 19:56 1602_AD\1602_AD_Uv2.Bak
文件 5115 2002-04-16 14:32 1602_AD\STARTUP.A51
文件 11665 2012-11-30 19:03 1602_AD\STARTUP.LST
文件 749 2012-11-30 19:03 1602_AD\STARTUP.OBJ
目录 0 2012-12-01 19:50 1602_AD
----------- --------- ---------- ----- ----
69090 17
- 上一篇:获取mp3文件的播放时间
- 下一篇:数据结构地图着色问题
相关资源
- STC12C5A60S2 CH4521 驱动数码管 显示
- STC12C系列单片机函数库
- stc12c5a60s2 例程开发包
- STC12C5A32S2的PDF与头文件
- STC12C5A60S2配套例程
- 基于STC12C5A60S2的波形发生器
- STC12C5A60S2中文手册完整版
- 单片机STC12C5A60S2中文使用手册
- STC12C5A60S2单片机串口实验程序
- STC12C5A60S2-串口1-串口2-测试程序
- STC12C5A60S2与GPS通信
- STC12C5A60S2例程
- STC12C5A60S2例程、原理图
- STC12C5A60S2中文手册
- STC12C5A60S2中文手册完全版已解密.pdf
- STC12C5A60S2串口2通信
- STC12C5A60S2中文手册完全版
- STC12C5A60S2使用独立波特率发生做串口
- STC12C5A60S2+OLED+18B20温度+PWM控制喇叭报
- DS18b20在STC12C5A60S2上的移植
- 基于STC12C5A60S2两轮平衡小车程序源码
- STC12C5A60S2的最小系统PCB库
- STC12c5a60s2最小系统
- 采用STC12C5A60S2单片机作为主控芯片实
- 温度监控系统的设计毕业设计
- STC12C5A60S2封装库213985
- STC12C5A60S2内部PWM-DA程序
- 0832 微机原理的 A/D转换 波形发生器
- stc12c5a60s2头文件
- stc12c5a60s2的PWM占空比可调
评论
共有 条评论