IP Library › Granted Patent US 9,338,035
Granted Patent B2
US 9,338,035 · App. 13/041,535 · Granted May 10, 2016

Microcontroller with can bus module and auto speed detect

Inventor: Joel Mach (Gilbert, AZ)
Assignee: MICROCHIP TECHNOLOGY INCORPORATED
H04L25/0262H04L29/06
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,338,035
App. No.
13/041,535
Granted
May 10, 2016
Kind
B2
Abstract

In a method for initializing a Controller Area Network (CAN) module in a microcontroller, the following steps may be provided: measuring the period times between a plurality of falling or rising edges of a CAN signal; sorting the period times; determining difference values between adjacent period times of the sorted period times; sorting the difference values; selecting a first difference value from the sorted difference values and determining a first frequency from the first difference value; initializing the CAN module using the selected frequency; receiving a CAN signal frame; determining whether an error occurred; if an error occurred selecting a next frequency and repeating initializing the CAN module until a valid CAN frequency has been found.

Claims (57)

1. A method for initializing a Controller Area Network (CAN) module in a microcontroller,

the method comprising:

measuring period times between a plurality of falling or rising edges of a CAN signal;

sorting said period times by their respective value;

determining difference values between adjacent period times of said sorted period times;

sorting said difference values by their respective value;

selecting a first difference value from said sorted difference values and determining a first frequency from said first difference value;

initializing said CAN module using said selected frequency;

receiving a CAN signal frame;

determining whether an error occurred;

in response to said determining of an error, selecting a next difference value from said sorted difference values and determining an associated frequency and repeating initializing the CAN module until a valid CAN frequency has been found.

2. The method according to claim 1 , further comprising coupling an external CAN line with an input of a capture module of said microcontroller to measure said period times.

3. The method according to claim 1 , further comprising feeding a CAN signal internally to an input of a capture module of said microcontroller to measure said period times.

4. The method according to claim 3 , wherein ten period times between falling edges of a CAN signal are measured.

5. The method according to claim 1 , further comprising after the step of sorting said difference values, the step of:

discarding difference values that result in invalid frequencies.

6. The method according to claim 1 , wherein a timer and capture unit is used to measure the period times.

7. The method according to claim 1 , wherein the method is repeated if no valid frequency is found.

8. The method according to claim 1 , wherein the step of determining a frequency from said difference value is performed using a look-up table.

9. The method according to claim 1 , wherein the step of determining a frequency from said difference value uses rounding or truncation to calculate a frequency.

10. The method according to claim 1 , further comprising the step of programming the microcontroller to perform the method.

11. The method according to claim 1 , wherein the microcontroller comprises a state machine and further comprising the step of performing the method by the state machine.

12. A microcontroller comprising:

a central processing unit (CPU)

a Controller Area Network (CAN) module,

a timer;

a capture module coupled with said timer;

wherein the microcontroller is configured to automatically detect a CAN frequency by:

measuring the period times between a plurality of falling or rising edges of a CAN signal;

sorting said period times by their respective value;

determining differences between adjacent period times of said sorted period times;

sorting said determined differences by their respective value;

selecting a first difference from said sorted difference values and determining a first frequency from said first difference;

initializing said CAN module using said selected frequency;

receiving a CAN signal frame;

determining whether an error occurred;

in response to said determining of an error, selecting a next difference and determining an associated frequency and repeating initializing the CAN module until a valid CAN frequency has been found.

13. The microcontroller according to claim 12 , wherein the microcontroller is further configured to discard difference values that result in invalid frequencies.

14. The microcontroller according to claim 12 , wherein the capture module comprises an edge detector controlling a driver which couples said timer with a capture register.

15. The microcontroller according to claim 12 , comprising a controllable driver coupled between an input of the CAN Bus module and the input of said capture module.

16. The microcontroller according to claim 12 , wherein the microcontroller is configured to determine a frequency from said difference value by using a look-up table.

17. The microcontroller according to claim 12 , wherein the microcontroller is configured to determine a frequency from said difference value using rounding or truncation.

18. The microcontroller according to claim 12 , wherein the microcontroller is programmed by software to determine said CAN frequency.

19. The microcontroller according to claim 12 , comprising a state machine to determine said CAN frequency.

20. The microcontroller according to claim 19 , comprising a special function register to control the state machine.

21. A method for initializing a Controller Area Network (CAN) module in a microcontroller,

the method comprising:

receiving a CAN signal comprising a plurality of consecutive periods;

measuring the plurality of consecutive period times of the CAN signal, wherein a period is defined as the time between two consecutive falling or two consecutive rising edges of the CAN signal;

sorting said period times by their respective value;

determining difference values between adjacent period times of said sorted period times;

sorting said difference values by their respective value;

selecting a first difference value from said sorted difference values and determining a first frequency from said first difference value;

initializing said CAN module using said selected frequency;

receiving a CAN signal frame;

determining whether an error occurred;

in response to said determining of an error, selecting a next difference value and determining an associated frequency and repeating initializing the CAN module until a valid CAN frequency has been found.

Assignments (15)
RELEASE OF SECURITY INTEREST Recorded Mar 14, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 060894/0437 →
RELEASE OF SECURITY INTEREST Recorded Mar 11, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059363/0001 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059863/0400 →
RELEASE OF SECURITY INTEREST Recorded Mar 9, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059358/0001 →
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED
Reel/Frame 059666/0545 →
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059333/0222 →
SECURITY INTEREST Recorded Jun 4, 2021
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 057935/0474 →
SECURITY INTEREST Recorded Dec 24, 2020
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 055671/0612 →
SECURITY INTEREST Recorded Jun 5, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 053468/0705 →
RELEASE OF SECURITY INTEREST Recorded May 30, 2020
From: JPMORGAN CHASE BANK, N.A, AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 053466/0011 →
SECURITY INTEREST Recorded Apr 24, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 053311/0305 →
SECURITY INTEREST Recorded Sep 18, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 047103/0206 →
SECURITY INTEREST Recorded Jun 25, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 046426/0001 →
SECURITY INTEREST Recorded Feb 10, 2017
From: MICROCHIP TECHNOLOGY INCORPORATED
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041675/0617 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2011
From: MACH, JOEL
To: MICROCHIP TECHNOLOGY INCORPORATED
Reel/Frame 025924/0559 →
Continuity (1)
Related Publication 20120233341A1 · Sep 13, 2012