Skip to main content
51 votes
Accepted

Is MCP23017's I2C address matching broken?

It's a known problem with that early revision of the chip. Newer revisions are fixed. My ones are date-coded 0522 (I guess week 22 of 2005, which is about when we got them, back in the days when you ...
SusanW's user avatar
  • 1,070
24 votes

Why do fabs bother to print circuitry right up to the edges of a wafer when they know that the partial dies will be discarded later?

I'm not sure of all the reasons, but one reason is that the stepped field doesn't always contain just one die: you might have four dice in a 2×2 arrangement per field, and it's usually worth it to get ...
Hearth's user avatar
  • 46k
20 votes

Why do fabs bother to print circuitry right up to the edges of a wafer when they know that the partial dies will be discarded later?

Put simply, the reticle has hundreds of copies of the die on it, and the reticle is a standard size for both big and small die sizes, meaning it would be more work to avoid doing photolith on the ...
mapplejacks's user avatar
19 votes
Accepted

Microchip documentation does not label CAN buss pins on micro controller pinout diagram

The CAN pins do not have fixed pin assignments. Instead you are able to select which of the "Remappable Pins" you wish to use (RP0 through RP15). If you refer to page 180 of the datasheet, ...
Tom Carpenter's user avatar
17 votes

Why is the 8061 microcontroller described as having 256 bytes of internal memory?

Their terminology is sloppy IMO. In any case: 0x00 - 0x0F are specialized registers 0x10 - 0xFF are memory registers (SRAM) There are only 240 bytes of SRAM. If you need more SRAM than this, you can ...
Mattman944's user avatar
11 votes
Accepted

Logic value of a single input pin into a microcontroller

Generally, if the MCU has no mechanism of reading just one bit, you read the whole port and mask off the irrelevant bits you want to ignore to zero and then compare if the remaining bit makes the ...
Justme's user avatar
  • 196k
10 votes

Why do lightning data cables have chips?

These chips are used as part of Apple's MFI Certification program. Basically, you have to be a certified developer to sell lightning cables. If you buy a lightning cable from a reseller, you may ...
nick carraway's user avatar
10 votes

Why is the 8061 microcontroller described as having 256 bytes of internal memory?

The 120 * 16 is probably just 240 bytes - the 16 indicating a 16-bit wide register.
Kevin White's user avatar
  • 35.1k
9 votes

Strange VIH and VIL specification of MIC4451

This is, in my opinion, a confusing usage of the terms max and min. What they're saying is that the minimum voltage you should apply to an input that you want to drive high is 2.4V, but a typical ...
Hearth's user avatar
  • 46k
9 votes
Accepted

Why aren't aluminum and nitrogen used as dopants in semiconductors, chips, etc.?

It's a whole series of engineering tradeoffs. For starters, Nitrogen isn't a dopant at all in crystalline Si. From an electrical standpoint, Boron is about 50% lower (0.045eV vs 0.067eV for Al) ...
Andrew Lentvorski's user avatar
8 votes
Accepted

How does SD card write protect switch work?

The Write Protect on the SD card standard is essentially a Honor System. The card reader host must choose to honor it. That's it. As for your SD WP pin. If it is floating with no internal pull up or ...
Passerby's user avatar
  • 73.9k
8 votes

Do microcontrollers support threading?

As long as the microcontroller supports interrupts, has enough memory and gives you full control over the state which the CPU assumes (program counter, registers, stack) when you return from an ...
jms's user avatar
  • 8,801
8 votes

As a computer science engineering graduate, do I need to learn Assembly language in today's day and age?

Not knowing assembly is just fine UNTIL you have to debug something non trivial. Interrupt trampolines, interrupt entry and exit stubs, missing memory barriers before cooking off a DMA transfer, ...
Dan Mills's user avatar
  • 18k
8 votes

Why is the 8061 microcontroller described as having 256 bytes of internal memory?

The 8061 was a Ford-specific engine control product from the 1980s so the information available is pretty sketchy. Assuming it's similar to the 8096, the first 256 bytes of the memory map are devoted ...
Spehro 'speff' Pefhany's user avatar
8 votes
Accepted

How to use a variable delay in Microchip PIC microcontroller (MPLAB X), without using floating point arithmetic?

__delay_ms and __delay_us are macro's. They are expanded at compile time by the preprocessor and thus only accept constants as ...
Unimportant's user avatar
  • 5,203
8 votes

Logic value of a single input pin into a microcontroller

How can I get the value of the input pin P0.1? You may "jump" on a bit value (e.g. JB, JNB): ISA But this limits my action since I'm obligated to have all other pins of port P0 to L. Not ...
devnull's user avatar
  • 11k
8 votes

Why do fabs bother to print circuitry right up to the edges of a wafer when they know that the partial dies will be discarded later?

The explanation in this answer is plausible: a rectangle with the image of several chips is imaged at a time. A step is made if any chip imaged in the step would be fully on the wafer, very often ...
fgrieu's user avatar
  • 1,962
7 votes
Accepted

When I can't short CS to ground using only one SPI device?

Rising/falling CS line is not only used to enable the output of the slave, but also to reset its internal state machine. For example some flash memories have a following sequence to read: ...
filo's user avatar
  • 9,166
7 votes
Accepted

How to get 8MHz square signal out a pic18f45

Two possibilities - Stray capacitance or slew rate control. If you were working on breadboards, I would think it to be unwanted capacitance between the pin strips but due to the package of the ...
MIL-SPEC's user avatar
  • 1,118
7 votes

Increase LED Brightness

My guess would be that the Vce(sat) drops of both the ULN2803, the high-side transistor and the voltage drop on the current-limiting resistors could easily add up to roughly 2V or more, not leaving ...
Richard the Spacecat's user avatar
7 votes

Why aren't aluminum and nitrogen used as dopants in semiconductors, chips, etc.?

Nitrogen forms molecular species with silicon instead of doping occlusions/lattice defects into crystalline silicon. The molecular silicon nitride is an insulator and was (is?) used as a dielectric ...
GT Electronics's user avatar
7 votes

Is there an IC controller/chip which outputs a signal for a brief amount of time, say less than 1 minute?

This classic circuit is a monostable multivibrator. Of which the most well-known chip is the 555. This is from Art of Electronics 3ed, p460: Another well-known chip is the LTC6993, good for up to ...
jonathanjo's user avatar
  • 18.6k
6 votes
Accepted

Strange VIH and VIL specification of MIC4451

This is a TTL compatible input. 2.4V and above is guaranteed to be understood as logic 1, but typical 1.3V or above is sufficient. 0.8V and below is guaranteed to be understood as logic 0, but typical ...
Janka's user avatar
  • 14.6k
6 votes

Does the Microchip/SMSC PHYBoost technology help with Rx, or does it boost Tx only?

From the datasheet, the only reference I can see to PHYBoost is: PHYBoost which enables four programmable levels of USB signal drive strength in USB port transceivers That indicates that basically ...
Tom Carpenter's user avatar
6 votes

Is there a difference between an NFC and RFID chip?

Your friend is talking through his hat, they're related but not the same. If you read the wikipedia page about NFC you can read there that: NFC is a set of short-range wireless technologies, ...
Bimpelrekkie's user avatar
  • 81.9k
6 votes
Accepted

PIC programming in Assembly

de is an assembler directive to declare an EEPROM data byte. org is also a directive. You can find a full list of assembler directives in the MPASM manual (see 4.17 for de). In general all ...
Spehro 'speff' Pefhany's user avatar
6 votes

EEPROM wear leveling algorithm

What causes wear isn't so much the writes as the erases. Though they go hand in hand - in order to write you first need to erase, since you can only write by flipping a bit from the erased default ...
Lundin's user avatar
  • 24.3k
6 votes

EEPROM wear leveling algorithm

You are using the 24FC256. It has a 64-byte page buffer, and rated for more than 1 million erase/write cycles. Per page. It reads in the data sheet that even if you want to update a one single byte, ...
Justme's user avatar
  • 196k
5 votes

How does SD card write protect switch work?

The switch does nothing to the card (microSDs don't have any). There is a sensing contact or metal pad in the socket that acts just like an ordinary switch and tells the controller if a write is ...
filo's user avatar
  • 9,166

Only top scored, non community-wiki answers of a minimum length are eligible