winIDEA SDK
Loading...
Searching...
No Matches
fnet_lin.py
# This script is licensed under BSD License, see file LICENSE.txt, or search for `License` in the SDK online help.
#
# (c) TASKING Germany GmbH, 2023
"""
This example shows basic FNet LIN controller initialization and usage.
(c) iSYSTEM Labs, 2022
"""
import isystem.connect as ic
winidea_id = ''
try:
# connect to last winIDEA
connMgr = ic.ConnectionMgr()
connMgr.connect(ic.CConnectionConfig().instanceId(winidea_id))
# initialize FNet LIN Controller
SessionCtrl = ic.CSessionCtrl(connMgr)
FNetCtrl = ic.CFNetCtrl(connMgr)
LINCtrl = FNetCtrl.LIN('CAN/LIN.LIN1')
optLINCfg = LINCtrl.cfg()
optLINCfg.reset()
optLINCfg.set_baudrate_bps(9600)
# configure the network
optNetworkCfg = optLINCfg.opt_network()
optNetworkCfg.set_name('Windows')
optNetworkCfg.add_description_file('Windows.ldf')
SessionCtrl.end() #end first for cfg to take effect
SessionCtrl.begin_prepare()
# use FNetTrigger 5 in the example
FTrig = 5
optLINOp = LINCtrl.op()
# qualifier - starts on FTrig, not enabled from start
LINCtrl.op_qualifier_enable(FTrig)
LINCtrl.op_qualifier_enable_on_start(False)
# don't record all received messages
optLINOp.set_record_all(False)
# configure Wake_up comparator in one call
optLINOp.set_wake_up(bRecord = True, nFTrig = FTrig)
# configure comparator in one call
optLINOp.set_comparator(nComparator = 0, bRecord = True, nFTrig = FTrig, nID = 0x7, nMask = 0xf)
# apply new operation settings and restart operation
FNetCtrl.op_apply()
except Exception as ex:
print(ex)