Timeline for In what languages can firmware be written?
Current License: CC BY-SA 4.0
33 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Oct 20, 2020 at 14:15 | answer | added | Criticizing Israel not allowed | timeline score: 0 | |
Oct 20, 2020 at 12:29 | comment | added | TonyM | Thanks. Have converted my earlier comment to an answer. | |
Oct 20, 2020 at 12:29 | answer | added | TonyM | timeline score: -1 | |
Oct 20, 2020 at 12:08 | comment | added | Shashank V M | @TonyM, thank you for your comment, really made things clearer for me | |
Oct 19, 2020 at 17:57 | review | Close votes | |||
Oct 26, 2020 at 3:04 | |||||
May 9, 2020 at 4:42 | vote | accept | Shashank V M | ||
May 9, 2020 at 4:42 | vote | accept | Shashank V M | ||
May 9, 2020 at 4:42 | |||||
May 8, 2020 at 21:15 | comment | added | Elliot Alderson | OK, now you are changing the definition of firmware. And that's where I hoped this would lead. Because I can write Python on my laptop, save it on my flash hard drive, make it twiddle my USB serial port, and have it start running when the machine powers up...and meet all of your requirements for "firmware". My entire point is that there is no definition for "firmware" that is universally accepted. The line is very blurry. | |
May 8, 2020 at 20:09 | comment | added | Neil_UK | @ElliotAlderson ... and I would argue that, for the ATSAMD21E18 based circuit python modules linked to, any C++ is compiled at the PC to ATSAMD21E18 assembler, then that's assembled and it's ATSAMD21E18 machine code that's loaded onto the MCU and run. By my interpretation of your argument, firmware, indeed any software in the world, runs on machine code, none of this C++ or COBOL rubbish. If I write in python, and it's stored in flash, and python code bashes the MCU pins, and it starts running when power goes on, then it's python firmware. | |
May 8, 2020 at 20:08 | comment | added | SteveSh | Most answers here seem to be oriented towards embedded MCUs. In my industry, even if the code/function is not intended to be changed or updated by the user, it is still considered software. We have, whether it's good or bad, migrated to using the term firmware to mean FPGA code, or design. | |
May 8, 2020 at 18:24 | comment | added | Elliot Alderson | @Neil_UK But I think that CircuitPython itself (the interpreter) is written in C++, so I would argue that the actual firmware is written in C++ and applications are then written in Python. | |
May 8, 2020 at 18:10 | vote | accept | Shashank V M | ||
May 9, 2020 at 4:42 | |||||
May 8, 2020 at 18:10 | vote | accept | Shashank V M | ||
May 8, 2020 at 18:10 | |||||
May 8, 2020 at 17:06 | answer | added | Maple | timeline score: 2 | |
May 8, 2020 at 16:48 | answer | added | Grabul | timeline score: 0 | |
May 8, 2020 at 10:40 | vote | accept | Shashank V M | ||
May 8, 2020 at 18:10 | |||||
May 8, 2020 at 10:35 | answer | added | Peter Smith | timeline score: 6 | |
May 8, 2020 at 10:32 | history | edited | Shashank V M | CC BY-SA 4.0 |
deleted 23 characters in body
|
May 8, 2020 at 10:12 | comment | added | Lundin | If you speak of actual microcontroller programming, then in practice C is the only viable option nowadays, assembler turning into a thing of the past. There are some languages like Ada, Python or C++ that can in theory be used too, but I would not recommend those for the purpose of embedded systems. As for interpreted languages, they don't make much sense to use close to hardware. On the FPGA/PLD/SoC side of things, there's hardware definition languages like VHDL and Verilog. | |
May 8, 2020 at 9:24 | answer | added | user3528438 | timeline score: 1 | |
May 8, 2020 at 8:57 | comment | added | Neil_UK | These boards use CircuitPython. Not the fastest of languages, being interpretted, but easy to use. As it's loaded into flash, and runs automatically when the power goes on, it meets most defintions of 'firmware'. I've bought one and played with it. It works. But get an Express version with the extra memory, and something with more pins than a Trinket if you want to play with more than just the software. | |
May 8, 2020 at 8:54 | comment | added | user3528438 | Not all firmware runs in hard real time or care about performance. Plenty of applications uses excessive hardware on simple tasks, like a raspberry pi for a digital sign board. | |
May 8, 2020 at 8:54 | answer | added | Jeroen3 | timeline score: 0 | |
May 8, 2020 at 8:48 | history | edited | Shashank V M | CC BY-SA 4.0 |
added 104 characters in body
|
May 8, 2020 at 8:46 | comment | added | Solar Mike | The code has to be written in a language that the chip or device runs... | |
May 8, 2020 at 8:44 | comment | added | user3528438 | "can" type of question in the engineering world is really hard to answer. Given enough time and money there's almost nothing human being can not do unless you hit the resource limit of the entire earth. The only hard limit of a "can not" is usually legal reasons. | |
May 8, 2020 at 8:40 | history | edited | Shashank V M | CC BY-SA 4.0 |
added 12 characters in body
|
May 8, 2020 at 8:39 | comment | added | Peter Smith | The only limitation is your available toolset. I have done embedded projects from hand assembled machine code and others in a number of high level languages. Remember that ultimately it is machine code that actually executes. | |
May 8, 2020 at 8:37 | review | Low quality posts | |||
May 8, 2020 at 8:47 | |||||
May 8, 2020 at 8:29 | comment | added | Shashank V M | Yes, @user3528438, I edited the question | |
May 8, 2020 at 8:29 | history | edited | Shashank V M | CC BY-SA 4.0 |
fixed error
|
May 8, 2020 at 8:27 | comment | added | user3528438 | Firmware is "firm" in the sense that it's not easily modifiable or directly accessible by the user. As a developer you can use whatever gets the job done. BTW how do you think firmware is written before C was invented? | |
May 8, 2020 at 8:17 | history | asked | Shashank V M | CC BY-SA 4.0 |