⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subadc中断lcd显示.bas

📁 ATmega16的ADC应用代码 使用BASCOM-AVR编译
💻 BAS
字号:
'**************************************************************************
 ' 入门例子]ADC中断LCD显示在PROTEUS6.9sp5仿真中通过

'名       称  : 入门例子]ADC中断LCD显示.bas
   '目       的  : ADC中断LCD显示在PROTEUS6.9sp5仿真中通过
   '目 标 芯 片  : Mega16
   '试 验 环 境  : mega16_PROTEUS6.9sp5仿真
   '编 译 环 境  : BASCOM-AVR 1.11.8.1
   '********************************************************************************

  $regfile = "m16def.dat"                                   ' specify the used micro
  $crystal = 8000000                                        ' used crystal frequency
  $baud = 9600                                              ' use baud rate
                                             ' default use 40 for the frame space
   Config Adc = Single , Prescaler = Auto                   'Prescaler = Auto  Internal
  Dim W1 As Long , Channe1 As Byte , V1 As Single
  Enable Interrupts
' Enable Adc
 ' On Adc Adc_isr
 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.4 , Rs = Portb.5       '定义单片机与LCD的接口,请书写在同一行
                                       '定义液晶的型号
 Declare Sub Adctest(w1 As Long , Channe1 As Byte , V1 As Single )

  Cls
  Cursor Off

     Channe1 = 0
 Do
     Start Adc
    Call Adctest(w1 , Channe1 , V1)


  Loop
  End

Sub Adctest(w1 As Long , Channe1 As Byte , V1 As Single)
  Dim V2 As String * 10

     V2 = Str(v1)
  W1 = Getadc(channe1)


     W1 = W1 * 500
     W1 = W1 / 1023                                         '将10位A/D转换器的值转化为十进制
    V2 = Str(w1)                                            ' 数字转换为字符串
     V2 = Format(v2 , "0.00")
     Wait 100                                               '确定小数点
     Locate 1 , 1 : Lcd "Ch " ; Channe1 ; " val " ; V2 ; "V"       '打印模拟值
     End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -