基于8051F350AD转换显示存储程序.docxVIP

  • 0
  • 0
  • 约3.03万字
  • 约 42页
  • 2018-12-17 发布于浙江
  • 举报
基于8051F350AD转换显示存储程序.docx

#include C8051F350.h #include stdio.h #include math.h //----------------------------------------------------------------------------- // 16-bit SFR Definitions for F35x //----------------------------------------------------------------------------- /* 需求:1、AD转换,24位精度:AIN0.0 2、四个按键:K1=P1^4,K2=P1^5,K3=P1^6,K=P1^7 3、1602液晶屏显示AD值: LCD1602_RS=P0^6, LCD1602_EN=P0^7, DB4 = P1^0, DB0= DB5 = P1^1, DB6 = P1^2, DB7 = P1^3 4、存储(24C02):SDA=P0^0,SCL=P0^1 函数:1、void main(void) //主函数 { while(1) { //连续不间断地得到AD值 ADZ = (AD值); } } 2、void KeyScan(void) { if(K1==0) { K1OK=1; } } 3、void T2_ISR(void) interrupt 5 { //定时器,定时扫描按键,当有按键按下时,显示ADZ TF2H = 0; KeyScan(); if(K1OK==1) { K1OK=0; //LCD1602第一行显示字母“ADZ”,第二行显示数字ADZ,24C02存储此值 } } */ /***** 1602高四位 LCD1602_RS=P0^6, LCD1602_EN=P0^7, DB4 = P1^0, DB5 = P1^1, DB6 = P1^2, DB7 = P1^3 AD转换,24位精度:AIN0.0 ,Verf+接100K可调电阻测试,满量程2500mv 四个按键:K1=P1^4,K2=P1^5,K3=P1^6,K=P1^7 存储(24C02):SDA=P0^0,SCL=P0^1 (和T2扫描按键有冲突,应该实时存储) *****/ /////////////Routines sfr16 ADC0DEC = 0x9A; // ADC0 Decimation Ratio Register sfr16 TMR3RL = 0x92; // Timer3 reload registers sfr16 TMR3 = 0x94; // Timer3 counter registers sfr16 TMR2RL = 0xCA; // Timer2 Reload Register sfr16 TMR2 = 0xCC; // Timer2 Register sbit SDA = P0^0; // SMBus on P0.0 sbit SCL = P0^1; // and P0.1 sbit K1=P1^4; //四个按键 sbit K2=P1^5; sbit K3=P1^6; sbit K4=P1^7; //----------------------------------------------------------------------------- // Global CONSTANTS //----------------------------------------------------------------------------- //-------------------------------------------------------------------------------- #define SYSCLK /

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档