STC12C5A60SAD转换及LCD1602显示.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
STC12C5A60SAD转换及LCD1602显示

/*我写的51AD转换程序,LED灯显示,随着外部电压升高,亮的小灯数会逐渐增加*/ #include //包含单片机寄存器的头文件 #include //包含_nop_ 函数定义的头文件 unsigned char result; //A/D转换结果变量 void main void unsigned long i; unsigned char status; ADC_CONTR| 0x80; //开A/D转换电源,第一次使用时要打开内部模拟电源 for i 0;i 10000;i++ ; //适当延时 P1ASF 0x04; //选择P1.2作为A/D转换通道 ADC_CONTR 0xE2; for i 0;i 10000;i++ ; //适当延时 while 1 //循环进行A/D 转换 ADC_CONTR| 0x08; //启动 A/D 转换 status 0; while status 0 //等待A/D转换结束 status ADC_CONTR0x10; ADC_CONTR 0xE7; //将ADC_FLAG清0 result ADC_RES; //保存A/D转换结果 if result 32 P0 0xff; else if result 64 P0 0xfe; else if result 96 P0 0xfc; else if result 128 P0 0xf8; else if result 160 P0 0xf0; else if result 192 P0 0xe0; else if result 214 P0 0xc0; else if result 236 P0 0x80; else P0 0x00; /* /*--************************功能【AD转换,液晶显示】**************************--*/ /*--************************芯片:【STC12C5A60S2】******************************--*/ /*--************************液晶:【LCD1602】***********************************--*/ /*--************************ADC管脚:【P1.0~P1.7 】***************************--*/ /*--************************检测范围:【0.00~4.99V】***************************--*/ /* #include reg52.h #include intrins.h typedef unsigned char uchar; typedef unsigned int uint; #define _Nop _nop_ /* unsigned char data_char_table[] 01座机电话号码ABCDEF ; //LCD数据 unsigned char Lcd_Dis1_table[] Position:No. ; //第一行显示框架 unsigned char pos_char_table[] D ; // 显示位置 unsigned char Lcd_Dis2_table[] Voltage : V ; //第二行显示框架 unsigned char num_char_table[] 9A.CD V ; // 显示位置 sbit lcd_rs_port P2^7; //定义LCD控制端口,根据硬件调整 sbit lcd_rw_port P2^6; sbit lcd_en_port P2^4; #define lcd_data_port P0 void lcd_delay uchar ms ; //LCD1602 延时 void lcd_busy_wait ; //LCD1602 忙等待 void lcd_command_write uint command ; //LCD1602 命令字写入 void lcd_system_reset ; //LCD1602 初始化 void lcd_char_write uint x_pos,y_pos,lcd_dat ; //LCD1602 字符写入 void lcd_bad_check ; //LCD1602 坏点检查 void Num_to_Disp uchar i, uin

文档评论(0)

hf916589 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档