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

📄 rtdxfrm.frm

📁 TMS320F2812的C++ examples 各个模块的程序
💻 FRM
📖 第 1 页 / 共 4 页
字号:
    If on_off_toggle = False Then            If Not Input_Values_Valid Then            Exit Sub        Else            ' Insert new value into array            RTDX_channel(chan_incr).name = CHANNEL_NAME.Text            RTDX_channel(chan_incr).type = IO_TYPE.Text            RTDX_channel(chan_incr).messages = MAX_MESSAGES.Text            RTDX_channel(chan_incr).members = MAX_MEMBERS.Text            RTDX_channel(chan_incr).integer_size = INT_TYPE.Text        End If                on_off_toggle = True        cmd_Toggle.Caption = "STOP"        'Initialize grid        Init_Grid            ' Disable ALL controls        cmd_Add_Channel.Enabled = False        cmd_Delete_Channel.Enabled = False        cmd_Modify_Channel.Enabled = False        cmd_Reset.Enabled = False        CHANNEL_NAME.Enabled = False        IO_TYPE.Enabled = False        MAX_MEMBERS.Enabled = False        MAX_MESSAGES.Enabled = False        INT_TYPE.Enabled = False                ' Allocate array for OLE objects        ReDim rtdx(Val(NUM_CHANNELS.Text)) As Object            ReDim MethodValues(Val(NUM_CHANNELS.Text)) As RTDX_Method_Attributes                For instantiation_incr = 0 To (NUM_CHANNELS.Text - 1)            ' Do the object instantiation            '########## RTDX(TM) ##########'#If DIRECT_INTERFACE_CONNECTION Then            Set rtdx(instantiation_incr) = CreateObject("CodeComposer.Application").DspBoards.Item(0). _                                           DspTasks.Item(0).rtdx.CreateRtdxChannel#Else            Set rtdx(instantiation_incr) = CreateObject("RTDX")#End If            '########## RTDX(TM) ##########'                        ' Open a channel            '########## RTDX(TM) ##########'            MethodValues(instantiation_incr).stat = _            rtdx(instantiation_incr).Open(RTDX_channel(instantiation_incr).name, _                RTDX_channel(instantiation_incr).type)            '########## RTDX(TM) ##########'                        If MethodValues(instantiation_incr).stat <> SUCCESS Then                MethodValues(instantiation_incr).CHANNEL_OPEN = False                MsgBox (RTDX_channel(instantiation_incr).name & _                        " is an unknown channel name")                on_off_toggle = True                cmd_Toggle_Click                Exit Sub            Else                MethodValues(instantiation_incr).CHANNEL_OPEN = True            End If                    Next instantiation_incr                ' Initialize row & column start points for all channels        Init_Row_Col_Start_Points            'Show grid        RTDX_gridfrm.Show            ' Start Method Dispatch Manager        channel_number = 0        tmr_Method_Dispatch.Enabled = True        ElseIf on_off_toggle = True Then        on_off_toggle = False        cmd_Toggle.Caption = "START"        'Close all channels        If tmr_Method_Dispatch.Enabled = True Then            tmr_Method_Dispatch = False            For instantiation_incr = 0 To (Val(NUM_CHANNELS.Text) - 1)                '########## RTDX(TM) ##########'                Sleep (1000) ' Sleep for 1 second                If (MethodValues(channel_number).CHANNEL_OPEN = True) Then                    MethodValues(instantiation_incr).stat = _                        rtdx(instantiation_incr).Close()                End If                Set rtdx(instantiation_incr) = Nothing                '########## RTDX(TM) ##########'            Next instantiation_incr        End If                ' Enable ALL controls        cmd_Add_Channel.Enabled = True        cmd_Delete_Channel.Enabled = True        cmd_Modify_Channel.Enabled = True        cmd_Reset.Enabled = True        CHANNEL_NAME.Enabled = True        IO_TYPE.Enabled = True        MAX_MEMBERS.Enabled = True        MAX_MESSAGES.Enabled = True        INT_TYPE.Enabled = True    End IfEnd SubPrivate Sub cmd_View_Channel_Click()    ' If input values are valid    If Input_Values_Valid Then        ' Insert new value into array        RTDX_channel(chan_incr).name = CHANNEL_NAME.Text        RTDX_channel(chan_incr).type = IO_TYPE.Text        RTDX_channel(chan_incr).messages = MAX_MESSAGES.Text        RTDX_channel(chan_incr).members = MAX_MEMBERS.Text        RTDX_channel(chan_incr).integer_size = INT_TYPE.Text                ' Set chan_incr to selected record        chan_incr = cmd_View_Channel.ListIndex            'Return current requested record        CHANNEL_NAME.Text = RTDX_channel(chan_incr).name        IO_TYPE.Text = RTDX_channel(chan_incr).type        MAX_MESSAGES.Text = RTDX_channel(chan_incr).messages        MAX_MEMBERS.Text = RTDX_channel(chan_incr).members        INT_TYPE.Text = RTDX_channel(chan_incr).integer_size    Else        ' Go back and fix your record        cmd_View_Channel.Selected(chan_incr) = True    End IfEnd SubPrivate Sub Form_Load()Dim TestHelpPath As StringDim NewHelpFile As String    ' Center form on screen    Left = (Screen.Width - Width) / 3.5    Top = (Screen.Height - Height) / 2    ' Specify help file    TestHelpPath = Dir(App.Path + RTDXHELPFILE, vbNormal)    'If help file is not in the applications directory    If (TestHelpPath <> "") Then        App.HelpFile = App.Path & RTDXHELPFILE    Else        'Ask user to specify        MsgBox ("Warning: RTDX Help File not found!")        NewHelpFile = InputBox("Enter path and name of help file")        App.HelpFile = NewHelpFile    End If        ' Show form    RTDX_frm.Show        ' Initialization    Init_ProgEnd SubPrivate Sub Form_Resize()    ' To resize controls:    '    ' current control [width/height] = ( current control [width/height] *    '                                  original control [width/height]) /    '                                  forms original [width/height]        ' Grow/Shrink Controls    TI_logo.Width = (RTDX_frm.Width * TI_LOGO_START_WIDTH) / FORM_START_WIDTH    TI_logo.Height = (RTDX_frm.Height * TI_LOGO_START_HEIGHT) / FORM_START_HEIGHT    cmd_Toggle.Width = (RTDX_frm.Width * CMD_TOGGLE_START_WIDTH) / FORM_START_WIDTH    cmd_Toggle.Height = (RTDX_frm.Height * CMD_TOGGLE_START_HEIGHT) / FORM_START_HEIGHT    cmd_Add_Channel.Width = (RTDX_frm.Width * CMD_ADD_CHANNEL_START_WIDTH) / FORM_START_WIDTH    cmd_Add_Channel.Height = (RTDX_frm.Height * CMD_ADD_CHANNEL_START_HEIGHT) / FORM_START_HEIGHT    cmd_Modify_Channel.Width = (RTDX_frm.Width * CMD_MODIFY_CHANNEL_START_WIDTH) / FORM_START_WIDTH    cmd_Modify_Channel.Height = (RTDX_frm.Height * CMD_MODIFY_CHANNEL_START_HEIGHT) / FORM_START_HEIGHT    cmd_Delete_Channel.Width = (RTDX_frm.Width * CMD_DELETE_CHANNEL_START_WIDTH) / FORM_START_WIDTH    cmd_Delete_Channel.Height = (RTDX_frm.Height * CMD_DELETE_CHANNEL_START_HEIGHT) / FORM_START_HEIGHT    cmd_Reset.Width = (RTDX_frm.Width * CMD_RESET_START_WIDTH) / FORM_START_WIDTH    cmd_Reset.Height = (RTDX_frm.Height * CMD_RESET_START_HEIGHT) / FORM_START_HEIGHT    cmd_View_Channel.Width = (RTDX_frm.Width * CMD_VIEW_CHANNEL_START_WIDTH) / FORM_START_WIDTH    cmd_View_Channel.Height = (RTDX_frm.Height * CMD_VIEW_CHANNEL_START_HEIGHT) / FORM_START_HEIGHT    CHANNEL_NAME.Width = (RTDX_frm.Width * CHANNEL_NAME_START_WIDTH) / FORM_START_WIDTH    CHANNEL_NAME.Height = (RTDX_frm.Height * CHANNEL_NAME_START_HEIGHT) / FORM_START_HEIGHT    MAX_MESSAGES.Width = (RTDX_frm.Width * MAX_MESSAGES_START_WIDTH) / FORM_START_WIDTH    MAX_MESSAGES.Height = (RTDX_frm.Height * MAX_MESSAGES_START_HEIGHT) / FORM_START_HEIGHT    MAX_MEMBERS.Width = (RTDX_frm.Width * MAX_MEMBERS_START_WIDTH) / FORM_START_WIDTH    MAX_MEMBERS.Height = (RTDX_frm.Height * MAX_MEMBERS_START_HEIGHT) / FORM_START_HEIGHT    IO_TYPE.Width = (RTDX_frm.Width * IO_TYPE_START_WIDTH) / FORM_START_WIDTH    IO_TYPE.Height = (RTDX_frm.Height * IO_TYPE_START_HEIGHT) / FORM_START_HEIGHT    INT_TYPE.Width = (RTDX_frm.Width * INT_TYPE_START_WIDTH) / FORM_START_WIDTH    INT_TYPE.Height = (RTDX_frm.Height * INT_TYPE_START_HEIGHT) / FORM_START_HEIGHT    NUM_CHANNELS.Width = (RTDX_frm.Width * NUM_CHANNELS_START_WIDTH) / FORM_START_WIDTH    NUM_CHANNELS.Height = (RTDX_frm.Height * NUM_CHANNELS_START_HEIGHT) / FORM_START_HEIGHT    Label1.Width = (RTDX_frm.Width * LABEL1_START_WIDTH) / FORM_START_WIDTH    Label1.Height = (RTDX_frm.Height * LABEL1_START_HEIGHT) / FORM_START_HEIGHT    Label2.Width = (RTDX_frm.Width * LABEL2_START_WIDTH) / FORM_START_WIDTH    Label2.Height = (RTDX_frm.Height * LABEL2_START_HEIGHT) / FORM_START_HEIGHT    Label3.Width = (RTDX_frm.Width * LABEL3_START_WIDTH) / FORM_START_WIDTH    Label3.Height = (RTDX_frm.Height * LABEL3_START_HEIGHT) / FORM_START_HEIGHT    Label4.Width = (RTDX_frm.Width * LABEL4_START_WIDTH) / FORM_START_WIDTH    Label4.Height = (RTDX_frm.Height * LABEL4_START_HEIGHT) / FORM_START_HEIGHT    Label5.Width = (RTDX_frm.Width * LABEL5_START_WIDTH) / FORM_START_WIDTH    Label5.Height = (RTDX_frm.Height * LABEL5_START_HEIGHT) / FORM_START_HEIGHT    Label6.Width = (RTDX_frm.Width * LABEL6_START_WIDTH) / FORM_START_WIDTH    Label6.Height = (RTDX_frm.Height * LABEL6_START_HEIGHT) / FORM_START_HEIGHT    Label7.Width = (RTDX_frm.Width * LABEL7_START_WIDTH) / FORM_START_WIDTH    Label7.Height = (RTDX_frm.Height * LABEL7_START_HEIGHT) / FORM_START_HEIGHT        ' To re-position controls:    '    ' current control [left/top] = ( original control [left/top] /    '                              original control [width/height] ) *    '                              current control [width/height]    ' Note: However, we will multiply the original [left/top] position    '       by the inverse of the original start [width/height] to    '       protect us against division by zero.        ' Re-position Controls    TI_logo.Left = (TI_LOGO_START_LEFT * (1 / TI_LOGO_START_WIDTH)) * TI_logo.Width    TI_logo.Top = (TI_LOGO_START_TOP * (1 / TI_LOGO_START_HEIGHT)) * TI_logo.Height    cmd_Toggle.Left = (CMD_TOGGLE_START_LEFT * (1 / CMD_TOGGLE_START_WIDTH)) * cmd_Toggle.Width    cmd_Toggle.Top = (CMD_TOGGLE_START_TOP * (1 / CMD_TOGGLE_START_HEIGHT)) * cmd_Toggle.Height    cmd_Add_Channel.Left = (CMD_ADD_CHANNEL_START_LEFT * (1 / CMD_ADD_CHANNEL_START_WIDTH)) * cmd_Add_Channel.Width    cmd_Add_Channel.Top = (CMD_ADD_CHANNEL_START_TOP * (1 / CMD_ADD_CHANNEL_START_HEIGHT)) * cmd_Add_Channel.Height    cmd_Modify_Channel.Left = (CMD_MODIFY_CHANNEL_START_LEFT * (1 / CMD_MODIFY_CHANNEL_START_WIDTH)) * cmd_Modify_Channel.Width    cmd_Modify_Channel.Top = (CMD_MODIFY_CHANNEL_START_TOP * (1 / CMD_MODIFY_CHANNEL_START_HEIGHT)) * cmd_Modify_Channel.Height    cmd_Delete_Channel.Left = (CMD_DELETE_CHANNEL_START_LEFT * (1 / CMD_DELETE_CHANNEL_START_WIDTH)) * cmd_Delete_Channel.Width    cmd_Delete_Channel.Top = (CMD_DELETE_CHANNEL_START_TOP * (1 / CMD_DELETE_CHANNEL_START_HEIGHT)) * cmd_Delete_Channel.Height    cmd_Reset.Left = (CMD_RESET_START_LEFT * (1 / CMD_RESET_START_WIDTH)) * cmd_Reset.Width    cmd_Reset.Top = (CMD_RESET_START_TOP * (1 / CMD_RESET_START_HEIGHT)) * cmd_Reset.Height    cmd_View_Channel.Left = (CMD_VIEW_CHANNEL_START_LEFT * (1 / CMD_VIEW_CHANNEL_START_WIDTH)) * cmd_View_Channel.Width    cmd_View_Channel.Top = (CMD_VIEW_CHANNEL_START_TOP * (1 / CMD_VIEW_CHANNEL_START_HEIGHT)) * cmd_View_Channel.Height    CHANNEL_NAME.Left = (CHANNEL_NAME_START_LEFT * (1 / CHANNEL_NAME_START_WIDTH)) * CHANNEL_NAME.Width    CHANNEL_NAME.Top = (CHANNEL_NAME_START_TOP * (1 / CHANNEL_NAME_START_HEIGHT)) * CHANNEL_NAME.Height    MAX_MESSAGES.Left = (MAX_MESSAGES_START_LEFT * (1 / MAX_MESSAGES_START_WIDTH)) * MAX_MESSAGES.Width    MAX_MESSAGES.Top = (MAX_MESSAGES_START_TOP * (1 / MAX_MESSAGES_START_HEIGHT)) * MAX_MESSAGES.Height    MAX_MEMBERS.Left = (MAX_MEMBERS_START_LEFT * (1 / MAX_MEMBERS_START_WIDTH)) * MAX_MEMBERS.Width    MAX_MEMBERS.Top = (MAX_MEMBERS_START_TOP * (1 / MAX_MEMBERS_START_HEIGHT)) * MAX_MEMBERS.Height    IO_TYPE.Left = (IO_TYPE_START_LEFT * (1 / IO_TYPE_START_WIDTH)) * IO_TYPE.Width    IO_TYPE.Top = (IO_TYPE_START_TOP * (1 / IO_TYPE_START_HEIGHT)) * IO_TYPE.Height    INT_TYPE.Left = (INT_TYPE_START_LEFT * (1 / INT_TYPE_START_WIDTH)) * INT_TYPE.Width    INT_TYPE.Top = (INT_TYPE_START_TOP * (1 / INT_TYPE_START_HEIGHT)) * INT_TYPE.Height    NUM_CHANNELS.Left = (NUM_CHANNELS_START_LEFT * (1 / NUM_CHANNELS_START_WIDTH)) * NUM_CHANNELS.Width    NUM_CHANNELS.Top = (NUM_CHANNELS_START_TOP * (1 / NUM_CHANNELS_START_HEIGHT)) * NUM_CHANNELS.Height    Label1.Left = (LABEL1_START_LEFT * (1 / LABEL1_START_WIDTH)) * Label1.Width    Label1.Top = (LABEL1_START_TOP * (1 / LABEL1_START_HEIGHT)) * Label1.Height    Label2.Left = (LABEL2_START_LEFT * (1 / LABEL2_START_WIDTH)) * Label2.Width    Label2.Top = (LABEL2_START_TOP * (1 / LABEL2_START_HEIGHT)) * Label2.Height    Label3.Left = (LABEL3_START_LEFT * (1 / LABEL3_START_WIDTH)) * Label3.Width    Label3.Top = (LABEL3_START_TOP * (1 / LABEL3_START_HEIGHT)) * Label3.Height    Label4.Left = (LABEL4_START_LEFT * (1 / LABEL4_START_WIDTH)) * Label4.Width    Label4.Top = (LABEL4_START_TOP * (1 / LABEL4_START_HEIGHT)) * Label4.Height    Label5.Left = (LABEL5_START_LEFT * (1 / LABEL5_START_WIDTH)) * Label5.Width    Label5.Top = (LABEL5_START_TOP * (1 / LABEL5_START_HEIGHT)) * Label5.Height    Label6.Left = (LABEL6_START_LEFT * (1 / LABEL6_START_WIDTH)) * Label6.Width    Label6.Top = (LABEL6_START_TOP * (1 / LABEL6_START_HEIGHT)) * Label6.Height    Label7.Left = (LABEL7_START_LEFT * (1 / LABEL7_START_WIDTH)) * Label7.Width    Label7.Top = (LABEL7_START_TOP * (1 / LABEL7_START_HEIGHT)) * Label7.Height                        End SubPrivate Sub Form_Unload(Cancel As Integer)    Unload RTDX_gridfrm    mnu_Quit_ClickEnd SubPrivate Sub mnu_Quit_Click()    mnu_Stop_Click    EndEnd SubPrivate Sub mnu_Start_Click()    ' Switch toggle value to false so that toggle command    ' can switch it to true    on_off_toggle = False    cmd_Toggle_ClickEnd SubPrivate Sub mnu_Stop_Click()    ' Switch toggle value to true so that toggle command    ' can switch it to false    on_off_toggle = True    cmd_Toggle_Click    End SubPrivate Sub tmr_Method_Dispatch_Timer()Dim open_chan_incr As IntegerDim CHANNELS_STILL_OPEN As Boolean    ' Test to see if we are done running the program    CHANNELS_STILL_OPEN = False    For open_chan_incr = 0 To (Val(NUM_CHANNELS.Text) - 1)        If MethodValues(open_chan_incr).CHANNEL_OPEN Then            CHANNELS_STILL_OPEN = True            Exit For        End If    Next open_chan_incr        ' Test to see if we have open channels left    If Not CHANNELS_STILL_OPEN Then        MsgBox ("Data Processing Complete!")        mnu_Stop_Click 'Stop program        Exit Sub    Else        ' Test to see if we are able to obtain data from the channel        If MethodValues(channel_number).CHANNEL_OPEN Then            ' Test the I/O type of the channel            If (RTDX_channel(channel_number).type = "R") Then                Do_Read            ElseIf (RTDX_channel(channel_number).type = "W") Then                Do_Write            End If        End If        'increment channel number        channel_number = channel_number + 1        If channel_number > (Val(NUM_CHANNELS.Text) - 1) Then            channel_number = 0 ' reset channel number        End If    End IfEnd Sub

⌨️ 快捷键说明

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