از دوستان کسی تا الان با این adc 16 بیتی کار کرده؟
سخت افزارم مثل دیتا شیتش هست برنامم به صورت زیر:
سخت افزارم مثل دیتا شیتش هست برنامم به صورت زیر:
کد:
$regfile = "m88def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0 Cls Enable Interrupts Config Int0 = Falling Enable Int0 On Int0 Drdy Dim Q As Byte Dim Chek_spi As Byte Dim Send_byte As Byte Dim Send_word As Word Dim Recive_data As Word Dim Get_data_l As Byte Dim Get_data_h As Byte Dim Mid_var As Word Ddrb = &B00101100 Portb = &B00101000 Spcr = &H3F Spcr = &H7F Q = Spsr Q = Spdr Send_byte = &H20 Spdr = Send_byte Chek_spi = Spsr And &H80 While Chek_spi = 0 Chek_spi = Spsr And &H80 Wend Waitms 1 Ddrb = &B00101100 Portb = &B00101000 Spcr = &H3F Spcr = &H7F Q = Spsr Q = Spdr Send_byte = &H08 Spdr = Send_byte Chek_spi = Spsr And &H80 While Chek_spi = 0 Chek_spi = Spsr And &H80 Wend Waitms 1 Ddrb = &B00101100 Portb = &B00101000 Spcr = &H3F Spcr = &H7F Q = Spsr Q = Spdr Send_byte = &H10 Spdr = Send_byte Chek_spi = Spsr And &H80 While Chek_spi = 0 Chek_spi = Spsr And &H80 Wend Waitms 1 Ddrb = &B00101100 Portb = &B00101000 Spcr = &H3F Spcr = &H7F Q = Spsr Q = Spdr Send_byte = &H40 Spdr = Send_byte Chek_spi = Spsr And &H80 While Chek_spi = 0 Chek_spi = Spsr And &H80 Wend Waitms 1 Dim Count As Byte Dim Count2 As Byte Cls Do Loop End Drdy: Locate 2 , 1 Lcd Count Incr Count Ddrb = &B00101100 Portb = &B00101000 Spcr = &H3F Spcr = &H7F Q = Spsr Q = Spdr Send_byte = &H38 Spdr = Send_byte Chek_spi = Spsr And &H80 While Chek_spi = 0 Chek_spi = Spsr And &H80 Wend Ddrb = &B00010000 Portb = &B00010000 Spcr = &H2F Spcr = &H6F Chek_spi = Spsr And &H80 While Chek_spi = 0 Chek_spi = Spsr And &H80 Wend Get_data_l = Spdr Chek_spi = Spsr And &H80 While Chek_spi = 0 Chek_spi = Spsr And &H80 Wend Get_data_h = Spdr Mid_var = Get_data_h Shift Mid_var , Left , 8 Recive_data = Get_data_l + Mid_var Home Lcd Recive_data Locate 1 , 10 Lcd "hi" Return
دیدگاه