Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Pin compatibility
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Software compatibility == {{see also|Computer compatibility#Software compatibility}} ''Software-compatible'' devices are devices which are able to run the same software to produce the same results without the software having to be modified first. [[Microcontroller]]s, [[Field-programmable gate array|FPGA]]s, and other programmable devices may be pin-to-pin compatible from the perspective of the program on the device, but incompatible in terms of hardware. For example, the device may take the signal on pin X, [[Negation|negate]] it, and output the result on pin Y. If the method of configuring a pin remains the same but the [[Semiconductor package|package]] of the device (such as [[TSSOP]] or [[QFN]]) changes, the program will continue to function but the physical locations of the pins the program works with may change. A device may also be pin-compatible while being software-incompatible. This may occur when the device uses a different [[instruction set]], or if the device has a [[multiplexer]] attached to a pin (which, for example, may allow the switching of the pin between being driven as [[GPIO]] or by an [[A/D]]) and that multiplexer selects, by default, a different input source than is selected on the device being replaced. To ease the use of software-incompatible devices, manufacturers often provide [[hardware abstraction layer]]s. Examples of these include, [[CMSIS]] for [[ARM Cortex-M]] processors and the now-deprecated [[HAL (software)|HAL]] subsystem for [[UNIX-like]] operating systems.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)