Main Menu
Counter
This page today ...
total: 0
unique: 0

This page ever ...
total: 164
unique: 95

Site ...
total: 2524
unique: 1054
Online
  • Guests: 3
  • Members: 0
  • Newest Member: ole
  • Most ever online: 36
    Guests: 36, Members: 0 on Tuesday 11 April 2017 - 04:26:13
Chatbox
You must be logged in to post comments on this site - please either log in from the Login box or from here.If you are not registered click here to signup.


bullet Kim
4 months ago
test
Royalsystems blog

MCS Electronics Forum

  • BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY



    Do You have enabled Code Explorer?

  • BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY



    Thank you for the prompt reply, will try with 4.7K and no series resistor, however i have been using this configuration of ages more than (15 years) without any issues, Oh yes i have multiple devices too like MAX127 (2 Nos) ADC, DS1307, FM24C64 (2nos), etc on several boards and have never had any issue.

    Frankly, I don't think that could be an issue.

    Anyways, will definitely try, thanks once again.

  • BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY



    Opps I also forget about it despite reading E5 app note cheesey
    Good that [b:8693619f42]@db3[/b:8693619f42] check this agait. This is the thing worth remember.

  • BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY



    Originally thought this was just a simple syntax error, should have known.
    Failed to see first time, first 3 timers are commented out in dat file because...
    If you look at the datasheet , the only timers available on the xm32E5 are
    TCC4, TCC5, and TCD5.
    Hopefully you can use one of those.

  • BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY



    It compiled fine on the xm256A3U project I am working on.
    Fails as yours using xm32e5def.dat file.
    EDC nailed it - you need support, the file definitions are there and the same for TCC0.
    Something further is wrong.

  • BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY



    Please compare files xm32e3def.dat and some of near xm128A3Udef.dat and look for [CONFIG-TCC0] with function CTRL+F (control find)
    Then You shoul write to/contact support because I know they work fast cheesey

  • BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY



    [quote:c91392239e="db3"]Put a space between the comma and the underscore on the first line. (Space plus underscore for line continuation)[/quote:c91392239e]


    Thank you for your interest in my problem, the error was introduced during to cut&paste from my program.

    The error that I get are:
    Error : 46 Line : 52 Assignment error, unknown variable (DIM) [TCC0_CTRLA: 0 &H04: 112] , in File : D:MyProjectsReleasedProjectsBlockMotorControllerBlockMotorController.bas
    Error : 46 Line : 52 Assignment error, unknown variable (DIM) [TCC0_CTRLB: 0 &HF3: 112] , in File : D:MyProjectsReleasedProjectsBlockMotorControllerBlockMotorController.bas
    Error : 46 Line : 52 Assignment error, unknown variable (DIM) [TCC0_CTRLE: 0 &H02: 112] , in File : D:MyProjectsReleasedProjectsBlockMotorControllerBlockMotorController.bas

    I think that there is no full support of the XMAX32E5 by Bascom.
    I hope I'm wrong.
    BB

  • BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY



    I2C needs 4K7 Pullup resistors to VCC, 10K is too much. Also no 330R in series needed. Thats probaly the reason for unstable reads.

  • BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY



    Put a space between the comma and the underscore on the first line. (Space plus underscore for line continuation)

  • BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY



    Yes all Boards have ATMEGA32A and all boards are running the same software.
    The Board is my own design as requested I have attached the Schematic here, as had informed earlier, the LM75 is soldered on to a SMT to DIP converter board and attached to the i2C connector, yes also close to the Board is a 0.1mfd disc cap soldered between the power rails.As requested have attached the code for a Pressure and Temperature set point controller.[code:1:e29c4af93c]$Regfile="m32adef.dat"
    $crystal = 16000000
    $hwstack = 256
    $swstack = 128
    $framesize = 156
    $baud = 9600
    MCUCR = &h03

    Config Timer0 = TIMER, prescale = 8

    Config ADC = Single, Prescaler = Auto
    Config PortB =Output

    Co2On Alias PortB.0
    Chiller Alias PortB.1
    Co2Prob Alias PortB.2
    ChillerProb Alias PortB.3


    Config SCL = PortC.0
    Config SDA = PortC.1
    i2cinit

    Config LCD = 16 * 2
    Config LCDbus = 4
    Config LCDpin = pin, DB4 = PortC.4, DB5 = PortC.5, DB6 = PortC.6, DB7 = PortC.7, E = PortC.3, Rs = PORTC.2

    Config PinD.3 = Output
    Config Pind.4 = Input
    Config PinD.5 = Input
    Config PinD.6 = Input
    Config PinD.7 = Input

    SW_TInc alias PinD.4
    SW_TDec Alias PinD.5
    SW_PInc Alias PinD.6
    SW_PDec Alias PIND.7

    DDIR Alias PortD.3
    Reset DDIR
    RESET Co2Prob
    Reset ChillerProb

    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Variavles
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Dim Value as Byte, Waddress as Byte, Raddress as Byte, Rundel as byte
    Dim Rng_min As Byte , Rng_max As Byte , User_sel As Byte, Kyscncod as Byte
    Dim Rxbyte as Byte, Srlcnt as Byte, Chno As Byte , DEl as word
    Dim Micsecs as byte, Milsecs as word, Secs as byte, Mins as Byte, Hrs as byte

    Dim PSV as single, PCV as single, TSV as Single , TCV as single
    Dim byt_psv as byte, byt_Tsv as byte, Run as byte, Keypress as bit, Srlint as bit
    Dim Tsv_txt as string * 4,Psv_Txt as string * 4, Pcv_txt as string * 4, TCv_txt as string * 4


    Dim Rcdata(10) As Single ,Adcfiltval As Single, Temp as single, Prsur as Single
    Dim M_add as word


    Dim MsgL1 as string * 20, MsgL2 as String * 20,




    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Subroutine Declarations
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Declare Sub Splash()
    Declare Sub Alert()
    Declare Sub Delayy()
    Declare Sub Get_systemsetngs()
    Declare Sub Chk_ky()
    Declare Sub Disp()


    Declare Sub Chk_adc()


    Declare sub delus25()
    Declare Sub Delayy1()
    Declare Sub Read_eeprmc64(byref M_add As Word , Byref Value As Byte)
    Declare Sub Write_eeprmc64(byref M_add As Word , Byref Value As Byte)
    Declare Sub Pcf8574read()
    Declare Sub Pcf8574write(byval Value As Byte)

    Declare sub Maintain_temp()
    Declare Sub Maintain_Prsur()

    Declare Sub Read_LM75()
    Declare Sub Write_LM75()
    Declare Sub Onbrdadc()
    Declare Function Get_adc(byref Chno As Byte) As Single

    Declare Sub Service_mnu()
    Declare sub ChkAi()
    Declare Sub Chk_outputs()
    Declare Sub Run_system()
    Declare Sub Recall_setngs()

    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' System Main Routine
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Const Msg0 = "SODA HUB"
    Const Msg1 = " +91 9989488598 "


    Enable Interrupts
    Enable Int0
    Enable Urxc
    Enable Timer0

    On Int0 Kybisr
    On Urxc Srlisr
    On Timer0 Tmr0isr

    Load Timer0, 200
    Start Timer0

    CLS
    Cursor OFF
    PortB = &H00

    Call Splash


    Do
    Call Run_System


    Loop
    End
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Splash Screen
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Splash()
    Call Write_Lm75
    MsgL1 = Msg0
    MsgL2 = Msg1
    CLS
    Lcd MsgL1
    Lowerline
    LCD MSGL2
    Wait 2
    Cls

    Milsecs=0
    Micsecs = 0
    SEcs = 0
    Call Recall_setngs
    Do
    If Sw_Tdec = 0 then
    Call Service_mnu
    End if
    Loop until Secs >= 5
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Splash Screen
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Recall_setngs()
    For M_add = 10 to 11
    Call Read_eeprmc64(M_add, Value)
    Select case M_add
    Case is = 10:
    If Value >= 10 And Value <= 255 then
    byt_Tsv = Value
    Else
    Byt_Tsv = 40
    End if
    TSV = byt_Tsv / 10
    Tsv_txt = fusing(Tsv, "#.#")
    Case is = 11:
    If Value >= 1 And Value <= 60 then
    byt_Psv = Value
    Else
    Byt_Psv = 25
    End if
    PSV = byt_Psv / 10
    Psv_txt = fusing(Psv, "#.#")
    End select
    Next
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Service Menu
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Service_mnu()
    Rng_min = 0
    Rng_max = 1
    User_sel = 0
    Cls
    LCD "SELECT AN OPTION"
    Do
    Call Chk_ky
    Loop until Sw_Tinc = 0 And SW_TDec = 0
    End sub

    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Disp Screen
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Disp()

    Locate 1,1
    Lcd "TS:" ; Tsv_txt ; " TP:" ; Tcv_txt ; " "
    Locate 2,1
    Lcd "PS:" ; Psv_txt ; " PP:" ; Pcv_txt ; " "
    waitms 50
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Run System
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Run_system()
    Run = 1
    Call Chk_ky
    Call Chk_Adc
    Call Read_LM75
    Call Maintain_Temp
    Call Maintain_Prsur
    Call Disp
    If Sw_Tinc = 0 And Sw_TDec = 0 then
    M_add = 10
    Value = Byt_Tsv
    Call Write_eeprmc64(M_add, Value)
    Keypress = 0
    Enable Int0
    Cls
    LCD "Written to EEP"
    Waitms 200
    End if
    If Sw_Pinc = 0 And Sw_PDec = 0 Then
    M_add = 11
    Value = Byt_Psv
    Call Write_eeprmc64(M_add, Value)
    Keypress = 0
    Enable Int0
    Cls
    LCD "Written to EEP"
    Waitms 200
    End if
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Common Temp & Pressure Controls
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Maintain Temp
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Maintain_temp()
    Local TempHigh as Single
    Local TempLow as Single
    Local Terr_High as single
    Local TErr_low as single
    TempHigh = TSV + 1
    TempLow = Tsv - 1
    Terr_high = TSV + 3
    Terr_Low = Tsv + 1
    If TCV >= TempHigh then
    Set Chiller
    Elseif TCV <= Templow then
    Reset Chiller
    End if
    If TCv >= Terr_High then
    Set Chillerprob
    Elseif TCV <= Terr_low then
    Reset Chillerprob
    End if
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Maintain Pressure
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Maintain_prsur()
    Local PrsurHigh as Single
    Local PrsurLow as single
    Local Perr_high as single
    Local Perr_low as single
    Local Crit_Prsur as single
    PrsurHigh = PSV + 0.1
    PrsurLow = PSV - 0.1
    Perr_high = Psv - 0.25
    Perr_low = Psv - 0.5
    Crit_Prsur = Psv + 0.5
    If PCv >= PrsurHigh then
    ReSet Co2On
    Elseif PCV <= Prsurlow then
    set Co2On
    End if
    If PCv >= Perr_high then
    ReSet Co2Prob
    Elseif PCv <= Perr_Low then
    set Co2Prob
    End if
    If Pcv >= Crit_Prsur then
    Set Co2Prob
    End if
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Read LM 75
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Read_LM75()
    Local Hi_data as byte
    Local Lo_data as byte
    Local Portdata as word
    Local Tmp_data as Byte
    Local Chk15bit as byte
    Local Chk8bit as byte
    Waddress = &h90
    Raddress = &h91
    I2cstart 'generate start
    I2cwbyte Waddress 'slave adsress
    I2cwbyte &h00
    I2crepstart 'repeated start
    I2cwbyte Raddress 'slave address (read)
    I2crbyte Hi_data , ack
    I2crbyte Lo_data , Nack 'read byte
    I2cstop

    Chk15bit = Hi_data AND &H80
    Chk8bit = Lo_data AND &H80
    If Chk15bit = &H80 then
    Tmp_data = Hi_data - 1
    Tmp_data = Tmp_data XOR &HFF
    Temp = Tmp_data * -1
    If Chk8bit = &h80 then
    Temp = Temp - 0.5
    End if
    Else
    Temp = Hi_data
    If Chk8bit = &h80 then
    Temp = Temp + 0.5
    End if
    End if
    Tcv = Temp
    Tcv_txt = Fusing(Tcv, "#.#")
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Write LM 75
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Write_LM75()
    Waddress = &h90
    Raddress = &h91
    I2cstart
    I2cwbyte Waddress
    I2cwbyte &h01
    I2cwbyte &h06
    I2cstop
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' ADC Function On Board ADC
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Function Get_adc(chno) As Single
    Local Filtvolt As Single
    Local Rcvlt As Single
    Local Smpl As Byte
    Local Lpp As Byte

    Rcvlt = 0
    For Smpl = 1 To 10
    Call Onbrdadc
    Rcvlt = Rcvlt + Adcfiltval
    Next
    Rcvlt = Rcvlt / 10
    Get_adc = Rcvlt
    End Function
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Get ADC Data After Median
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Onbrdadc()
    Local Pdata As Word
    Local Smplno As Byte
    Local Th_high As Single
    Local Th_low As Single
    Local Volt As Single
    Local Avg10 As Single
    Local Filtsmpl As Byte

    Avg10 = 0
    For Smplno = 1 To 10
    Pdata = Getadc(chno)
    Volt = Pdata * 0.0048828125
    Avg10 = Avg10 + Volt
    Rcdata(smplno) = Volt
    Next
    Avg10 = Avg10 / 10
    Th_high = Avg10 + 0.005
    Th_low = Avg10 - 0.005
    Adcfiltval = 0
    Filtsmpl = 0
    For Smplno = 1 To 10
    If Rcdata(smplno) > Th_low And Rcdata(smplno) < Th_high Then
    Adcfiltval = Adcfiltval + Rcdata(smplno)
    Incr Filtsmpl
    End If
    Next
    If Filtsmpl > 0 Then
    Adcfiltval = Adcfiltval / Filtsmpl
    Else
    Adcfiltval = Avg10
    End If
    End Sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Check ADC
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Chk_adc()
    Local Volt as single
    Local Volt1 as single
    Local Volt2 as single
    Local mcur4 as single
    Local Mcur5 as single
    Local C420ma4 as single
    Local C420ma5 as single
    Chno = 0
    Volt1 = Get_adc(chno)
    Mcur4 = Volt1 / 0.25
    If Mcur4 > 4.0 then
    C420ma4 = Mcur4 - 4
    Prsur = c420ma4 * 0.6373 ' for Kg/cm2
    Else
    c420mA4 = 0
    Prsur = 0
    End if
    Pcv = Prsur
    Pcv_Txt = Fusing(Pcv, "#.#")
    End sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' IIC Bus Drivers
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Read IIC EEPROM
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Read_eeprmc64(byref M_add As Word , Byref Value As Byte)
    Local M_ladd As Byte
    Local M_hadd As Byte
    Waddress = &HA0
    Raddress = &HA1
    M_ladd = Low(m_add)
    M_hadd = High(m_add)
    I2cstart 'generate start
    I2cwbyte Waddress 'slave adsress
    I2cwbyte M_hadd
    I2cwbyte M_ladd 'address of EEPROM
    I2cstart 'repeated start
    I2cwbyte Raddress 'slave address (read)
    I2crbyte Value , Nack 'read byte
    I2cstop 'generate stop
    End Sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Write IIC EEPROM
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Write_eeprmc64(byref M_add As Word , Byref Value As Byte)
    Local M_ladd As Byte
    Local M_hadd As Byte
    Waddress = &HA0
    Raddress = &HA1
    M_ladd = Low(m_add)
    M_hadd = High(m_add)
    I2cstart
    I2cwbyte Waddress
    I2cwbyte M_hadd
    I2cwbyte M_ladd
    I2cwbyte Value
    I2cstop
    Del = 10
    Call Delayy
    End Sub
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Delay
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Sub Delayy()
    Micsecs = 0
    Milsecs = 0
    Do

    Loop Until Milsecs >= Del
    End Sub
    '###########################################################################
    '###########################################################################
    ' Keyboard Scan Routines
    '###########################################################################
    '###########################################################################

    '###########################################################################
    ' Chk Keys
    '###########################################################################
    Sub Chk_ky()
    Debounce Sw_TInc , 0 , T_inc , Sub
    Debounce Sw_TDec , 0 , T_dec , Sub
    Debounce Sw_PInc , 0 , P_Inc , Sub
    Debounce Sw_PDec , 0 , P_Dec , Sub
    Keypress = 0
    Enable Int0
    End sub
    '###########################################################################
    ' Sw F4
    '###########################################################################
    T_Inc:
    If Run= 1 then
    Rng_min = 10
    Rng_max = 255
    If byt_Tsv < Rng_Max then
    byt_Tsv = byt_Tsv + 5
    TSV = byt_Tsv / 10
    Tsv_txt = fusing(Tsv, "#.#")
    End if
    Else

    End if
    Return
    '###########################################################################
    ' Sw F3
    '###########################################################################
    T_Dec:
    If Run= 1 then
    Rng_min = 10
    Rng_max = 255
    If byt_Tsv >Rng_Min then
    byt_Tsv = byt_Tsv - 5
    TSV = byt_Tsv / 10
    Tsv_txt = fusing(Tsv, "#.#")
    End if
    Else

    End if
    Return
    '###########################################################################
    ' Sw F2
    '###########################################################################
    P_Inc:
    If Run= 1 then
    Rng_min = 1
    Rng_max = 60
    If byt_Psv < Rng_Max then
    byt_Psv = byt_Psv + 1
    PSV = byt_Psv / 10
    Psv_txt = fusing(Psv, "#.#")
    End if
    Else

    End if
    Return
    '###########################################################################
    ' Sw F1
    '###########################################################################
    P_Dec:
    If Run= 1 then
    Rng_min = 1
    Rng_max = 60
    If byt_Psv > Rng_Min then
    byt_Psv = byt_Psv - 1
    PSV = byt_Psv / 10
    Psv_txt = fusing(Psv, "#.#")
    End if
    Else

    End if
    Return
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' System interrupt routines
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@


    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Int0 interrupt service
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Kybisr:
    Disable Int0
    Keypress = 1
    Return
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Serial Interrupt
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Srlisr:
    Rxbyte = UDR
    Srlint = 1
    Return
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' Timer0 interrupt service
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Tmr0isr:
    Incr Micsecs
    If Micsecs >= 10 then
    Micsecs = 0
    Incr Milsecs
    If Milsecs >= 1000 then
    Milsecs = 0
    Incr Secs
    If Secs > 60 then
    Secs = 0
    Incr Mins
    If Mins >= 60 then
    Mins = 0
    Incr Hrs
    If Hrs >= 23 then
    Hrs = 23
    End if
    End if
    End if
    End if
    End if
    Load Timer0 , 200
    Return
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ' System Data Tables
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

    Srvcmnu:
    Data "CHECK ANALOG INPUTS ","CHECK OUTPUTS "

    OcrdO1:
    Data "OUTPUT - 1 ON ","OUTPUT - 1 OFF "
    OcrdO2:
    Data "OUTPUT - 2 ON ","OUTPUT - 2 OFF "
    OcrdO3:
    Data "OUTPUT - 3 ON ","OUTPUT - 3 OFF "
    OCrdO4:
    Data "OUTPUT - 4 ON ","OUTPUT - 4 OFF "
    OCrdO5:
    Data "OUTPUT - 5 ON ","OUTPUT - 5 OFF "
    OCrdO6:
    Data "OUTPUT - 6 ON ","OUTPUT - 6 OFF "
    OCrdO7:
    Data "OUTPUT - 7 ON ","OUTPUT - 7 OFF "
    OcrdO8:
    Data "OUTPUT - 8 ON "[/code:1:e29c4af93c]

| Date published: not known
Back to newsfeed list
Welcome
Username or Email:

Password:




[ ]
[ ]
Headlines

»BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY
Do You have enabled Code Explorer?
»BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY
Thank you for the prompt reply, will try with 4.7K and no series resistor, however i have been using this configuration of ages mo...
»BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY
Opps I also forget about it despite reading E5 app note :D Good that [b:8693619f42]@db3[/b:8693619f42] check this agait. This is ...
»BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY
Originally thought this was just a simple syntax error, should have known. Failed to see first time, first 3 timers are commented...
»BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY
It compiled fine on the xm256A3U project I am working on. Fails as yours using xm32e5def.dat file. EDC nailed it - you need supp...
»BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY
Please compare files xm32e3def.dat and some of near xm128A3Udef.dat and look for [CONFIG-TCC0] with function CTRL+F (control find)...
»BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY
[quote:c91392239e="db3"]Put a space between the comma and the underscore on the first line. (Space plus underscore for line contin...
»BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY
I2C needs 4K7 Pullup resistors to VCC, 10K is too much. Also no 330R in series needed. Thats probaly the reason for unstable reads...
»BASCOM-AVR : XmegaE5 timer config for pwm motor control : REPLY
Put a space between the comma and the underscore on the first line. (Space plus underscore for line continuation)
»BASCOM-AVR : LM75 sensor on different boards reads different temperatures : REPLY
Yes all Boards have ATMEGA32A and all boards are running the same software. The Board is my own design as requested I have attach...


Date published: not known
Details

»Display ILI9225 176x220 Pixel 2.2"
Hallo, hier mal ein Programm zur Ansteuerung vom ILI9225 Display, nicht zu verwechseln mit dem ILI9325 das ist ein anderes Thema. Das Display wird...
»26F064 EEPROM an ATMEGA328
Hallo, seit einer Woche versuche ich nun schon, einen SPI EEPROM zu verwenden. Das Programm soll einfach 5 Zeichen in dem EEPROM speichern und wied...
»Hofbeleuchtung, Tipps für haltbare Leuchten/Leuchtmittel erwünscht
Ich hab' eine Hofbeleuchtung, bestehend aus Bewegungsmelder Dämmerungsschalter und eben Leuchtkörper. Im Laufe der Jahre haben sich die Leuchtkörpe...
»LCD 40x4
Liebe Foristen, ich habe mit einem 40x4 LCD Probleme. Ich kann immer nur die oberen beiden Zeilen ansprechen. Vertausche ich die E1 und E2 manuell...
»Firefox Quantum
Oh, Mann, alles war so schöön, mein Firefox hat funktioniert und alles war gut eingerichtet, mit Classic Theme, Custom Tab-With und ich konnte sofo...
»Ansicht für Gäste
Hallo Administratoren, ist es Absicht das auch der Bereich Hardware für Gäste ausgeblendet wird. Finde ich nicht so toll. Mit freundlichen Grüßen


Date published: Sun, 19 Nov 2017 22:33:07 +0000
Details

»93c46 editor programmer bascom &amp; vb93c46 editor programmer bascom &amp; vb

»93c46 Bascom &amp; VB693c46 Bascom &amp; VB6

»Analog clock on SSD1289 3.2" 240x320 lcdAnalog clock on SSD1289 3.2" 240x320 lcd

»Nextion HMI lcd with KaraDio the best webradio esp8266Nextion HMI lcd with KaraDio the best webradio esp8266

»Adding 240x320 lcd to the WifiWebRadioAdding 240x320 lcd to the WifiWebRadio

»IV-17 Nixie clock GPS set time &amp; date at power onIV-17 Nixie clock GPS set time &amp; date at power on



Date published: not known
Details

»Bascom Can Bus Sniffer
»R.I.P Ben Zijlstra
Remembering Ben Zijlstra We hope that people who love Ben will remember and celebrate his life. more info at MCS www.mcselec.com/index2.ph...
»KaRadio webradio ESP8266
The Dimitris board is available at https://github.com/dsaltas/WiFi-WebRadio  This is a hardware project for Ka-Radio
»93C46
small tool to edit 93C46 eeprom written in BascomAVR & VB  Bascom control the 93C46 so we sent data via comport from VB code will be added later ...
»nRF24L01+ RC Controller
This is a RC controller TX & RX unit with nRF24L01+ nRF24L01+ / with PA and LNA for longer range facts: TX 1 x potmeter for servo ...
»RAW lcd
Connecting RAW lcd to atmega8 the lcd is 6 digit + time glass LCD Hour Meter for  tractor ,air compressor, ect the lcd have 4 com pins  & 14...


Date published: not known
Details


Proudly powered by e107 which is released under the terms of the GNU GPL License.