Exemple #1
0
        protected CanNativeAdapter(CanNativeAdapterSettings settings, ControllerAreaNetwork.Timings timings = null)
            : base(settings)
        {
            switch (settings.Speed)
            {
            case CanAdapterSettings.CanSpeed.Kbps1000:
                can = new ControllerAreaNetwork(settings.CanPort, ControllerAreaNetwork.Speed.Kbps1000);
                break;

            case CanAdapterSettings.CanSpeed.Kbps500:
                can = new ControllerAreaNetwork(settings.CanPort, ControllerAreaNetwork.Speed.Kbps500);
                break;

            case CanAdapterSettings.CanSpeed.Kbps250:
                can = new ControllerAreaNetwork(settings.CanPort, ControllerAreaNetwork.Speed.Kbps250);
                break;

            case CanAdapterSettings.CanSpeed.Kbps125:
                can = new ControllerAreaNetwork(settings.CanPort, ControllerAreaNetwork.Speed.Kbps125);
                break;

            default:
                can = new ControllerAreaNetwork(settings.CanPort, timings ?? GetTimings(settings));
                break;
            }
            can.ErrorReceived    += Can_ErrorReceived;
            can.MessageAvailable += Can_MessageAvailable;
        }
Exemple #2
0
        /// <summary>Initializes the CAN bus.</summary>
        /// <param name="timings">The desired bus timings.</param>
        /// <param name="channel">The CAN channel to use.</param>
        public void Initialize(ControllerAreaNetwork.Timings timings, ControllerAreaNetwork.Channel channel)
        {
            this.can = new ControllerAreaNetwork(channel, timings);

            this.can.MessageAvailable += this.OnCanMessagesAvailable;
            this.can.ErrorReceived    += this.OnCanErrorReceived;

            this.can.Enabled = true;
        }
Exemple #3
0
 /// <summary>Initializes the CAN bus.</summary>
 /// <param name="timings">The desired bus timings.</param>
 public void Initialize(ControllerAreaNetwork.Timings timings)
 {
     this.Initialize(timings, ControllerAreaNetwork.Channel.One);
 }
Exemple #4
0
 public CanNativeAdapter(ControllerAreaNetwork.Channel canPort, ControllerAreaNetwork.Timings timings)
     : this(new CanNativeAdapterSettings(canPort, 0), timings)
 {
 }