[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology

Name
Options
Comment
Verification
4chan Pass users can bypass this verification. [Learn More] [Login]
File
  • Please read the Rules and FAQ before posting.
  • You may highlight syntax and preserve whitespace by using [code] tags.

08/21/20New boards added: /vrpg/, /vmg/, /vst/ and /vm/
05/04/17New trial board added: /bant/ - International/Random
10/04/16New board for 4chan Pass users: /vip/ - Very Important Posts
[Hide] [Show All]


[Advertise on 4chan]


File: file.png (207 KB, 790x287)
207 KB
207 KB PNG
I read that you need to know calculus. Any tips for learning? Khan Academy or MIT OpenCourseWare?
As far as projects go, I'm starting off with a C 6502 emulator, already finished all the decoding stuff and now I'm using the Mame Apple I emulator as a cross reference to test it against AllSuiteA.asm from the verilog 6502 project.
What kind of electrical engineering knowledge should I persue? I've got the basics cause I played with Snap Circuits as a little kid.
Next I may purchase a real 6502, Arduino, STM32, or Risc-V CPU. As a long term goal I'd like to become an expert in Risc-V before the ISA matures.
>>
before you can engineer the embedded systems you actually have embed them. and the embedding is usually done underwater. wanna know how they train people for it? it's like the drownproofing they do during SEAL training. in other words it's not for pussies
>>
>>107591453
What the fuck did you just fucking say about me, you little bitch? I'll have you know I graduated top of my class in the Navy Seals, and I've been involved in numerous secret raids on Al-Quaeda, and I have over 300 confirmed kills. I am trained in gorilla warfare and I'm the top sniper in the entire US armed forces. You are nothing to me but just another target. I will wipe you the fuck out with precision the likes of which has never been seen before on this Earth, mark my fucking words. You think you can get away with saying that shit to me over the Internet? Think again, fucker. As we speak I am contacting my secret network of spies across the USA and your IP is being traced right now so you better prepare for the storm, maggot. The storm that wipes out the pathetic little thing you call your life. You're fucking dead, kid. I can be anywhere, anytime, and I can kill you in over seven hundred ways, and that's just with my bare hands. Not only am I extensively trained in unarmed combat, but I have access to the entire arsenal of the United States Marine Corps and I will use it to its full extent to wipe your miserable ass off the face of the continent, you little shit. If only you could have known what unholy retribution your little "clever" comment was about to bring down upon you, maybe you would have held your fucking tongue. But you couldn't, you didn't, and now you're paying the price, you goddamn idiot. I will shit fury all over you and you will drown in it. You're fucking dead, kiddo.
>>
>>107591411
>Khan Academy or MIT OpenCourseWare
nigger get a EE degree
>>
>>107591411
being an embedded engineer is no joke, imagine sitting inside a tiny microcontroller in some random costumer's device for years. are you sure you wanna go down this path?
>>
buy an arduino, some leds and resistors, then get to work
>>
in my 7 years of employment, I've only ever seen these chips:
STM32: they are really big in Europe
Texas Instruments: also Cortex-M chips, till pretty big in Europe. afaik they used to be bigger in past
ESPs, PICs: saw them few times on legacy projects
never saw risc-v in wild

You only really need to read assembly occasionally. I don't believe anyone writes a larger projects in assembly anymore.
In practice, you need assembly on only few places: startup routine, interrupt handlers, context switch, and few special CPU instructions.
Startup routine is usually a part of vendor's SDK.
Cortex-M chips have interrupt handler ABI identical to C ABI, so there is no need for wrapper entry points.
RTOS ports already contain the context switch.
And those few instructions tend to be provided in CMSIS library (implemented inline assembly).
So you can go years without writing any assembly yourself on those ARM chips.

Just a tip for starters: learn about UART/USART, I2C and SPI communication buses.
>>
>>107591411
The 6502 is so byzantine, that learning to do anything with that cpu will give you negative experience.
>>
File: TerminatorVision.jpg (123 KB, 1435x788)
123 KB
123 KB JPG
>>107591411
>I'm starting off with a C 6502
Man of refined taste. This is also how I got started and did 6502 assembly programming for embedded systems. Those were the days.

>>107593041
This is, of course, entirely wrong.
>>
>>107593059
Yes, because learning on a machine with 3 registers, no proper pointer support. No proper stack frame support. Crippled addressing modes. Limited arithmetic. Is very relevant and good for learning to become a useful embedded software engineer in 2025. You can practice valuable skills such as juggling computation through a single accumulator. Using multiple instructions to increment a pointer. Manually allocating variables into a tiny 256 byte zero page. These are all incredible skills that any modern software engineer needs.
>>
File: 6502_Monster_A1_1.jpg (336 KB, 1800x1200)
336 KB
336 KB JPG
>>107593155
>Yes, because learning on a machine with 3 registers,
That is how you learn frugal programming, how to avoid endless fill and spill, get fast response and quick interrupt response in the embedded world. With about 6000 transistors it won't eat up your silicon chip area either.
>no proper pointer support.
Amateur problem. You have
LDA (XX, y)
and
LDA (XX), xy
and you can also switch to SWEET-16.
>No proper stack frame support.
Not a problem in an embedded platform. And 256 bytes of stack was never a problem.
>Crippled addressing modes.
Drivel. The RISC fundamentalists complained it had too many.
>Limited arithmetic.
Yet sufficient for the job.
>Is very relevant and good for learning to become a useful embedded software engineer in 2025.
Now you get it.
>>
>>107593302
>LDA (XX), xy
That should of course have been LDA (XX), x
>>
>>107593302
If less is more, we can go even lower than the 6502. One instruction cpus are a thing, why not start with that. Since apparently crippling limitations are valuable experience.
>>
>>107591411
https://skilldrick.github.io/easy6502/
>>
>>107592666
I'm new to STM32. Are you aware of any resources that teach people how to bootstrap a project in C without CubeMX, generated code or HAL? I read that there's this thing called CMSIS which STMicroelectronics implements but I'm not sure if it covers everything HAL does (especially things like configuring ADC + DMA).
>>
>>107592666
ST seems to be very popular in the US too.
Even in Texas, I've only seen one project with a TI chip and it was a C2000.
ESP32s are very popular for cheap processing when you already need WiFi/Bluetooth like low cost IoT devices.

Also seen some new popularity with NXP devices recently.
>>
>>107593507
STM32 has LL (Low Level) drivers, their own documentation is pretty good
>>
>>107593448
>One instruction cpus are a thing
Yes. To wit:
http://users.atw.hu/gerigeri/DawnOS/index.html
Anyway, 6502 hits the right spot. Millions are made every year.
>>
>>107591411
I'm just dipping my toe in embedded too. Turns out /diy/ has dedicated threads to microcontroller stuff >>>/diy/2952647

My newfag retard questions are near the bottom.
>>
>>107593507
CMSIS as specified by ARM only covers interaction with CPU. Although the ST's port has register maps and addresses for peripherals (these are used by HAL/LL).
ST ships HAL and LL in their Cube SDKs. LL take way more lightweight, sometimes it's easier to read/write than writing to registers.

As for setting up the project, it's just regular C project, really. Most of it is included in the Cube SDKs - startup files and linker script. And it gives you a compiler flags.
Let CubeMX generate the project and see what's in it for yourself, not that hard to understand.
There will be linker script, assembly startup file, C startup file, main with some hw init routines, file with interrupt handlers, hal config header, and incomplete copy of CMSIS/HAL. And some eclipse project settings.
Check the repos on their github, e.g. https://github.com/STMicroelectronics/STM32CubeH7
you can find everything there as well, just copied out.
>>
>>107593615
I doubt many new products are being made using 6502. And even if they were, 6502 should only ever be programmed if you absolutely need to. Its a form of self flagellation, not something that is actually healthy for the body or mind.
>>
>>107593682
>I doubt many new products are being made using 6502.
Most are probably in existing product lines that require safety and certification. After 40+ years it is considered well tested and proven.
https://www.westerndesigncenter.com/
>Annual volumes in the hundreds (100's) of millions of units keep adding in a significant way to the estimated shipped volumes of five (5) to ten (10) billion units. With 200MHz+ 8-bit W65C02S and 100MHz+ 8/16-bit W65C816S processors coming on line in ASIC and FPGA forms, we see these annual volumes continuing for a long, long time.
>The 6502 is likely the only processor family that has remained loyal to its ISA over the last 45 years. In addition it has served the widest spectrum of electronic markets through those years. For example, it has served and in some cases created markets for the PC, video game, toy, communication, industrial control, automotive, life support embedded in the human body medical devices, outside the body medical systems, engineering education systems, hobby systems, and you name it electronic market segments. I might add the 6502 has served in a highly reliable and successful way!
>As added food for thought, the 6502/65816 microprocessors protect millions of lives annually within embedded heart defibrillation and pacing systems.

I did embedded assembly programming for a living and I'd chose 6502 any day over Intel stuff.
>>
>>107591411
Get pozzed
>>
File: poop.jpg (31 KB, 375x475)
31 KB
31 KB JPG
>>107591411
buy a microelectronics book (pic related is the one i have)
buy a microcontroller
buy an oscilloscope
read datasheets and their application notes
buy parts to implement circuits you learn about and put those circuits together using the scope to verify their function

personally, i got into embedded systems by reading the snes dev manual and writing programs for the console. i also have a physics background, which helps with unifying the huge amount of models developed for different electronic and semiconductor devices.
>>
File: AIM65_s9500_005.jpg (2.1 MB, 3488x2616)
2.1 MB
2.1 MB JPG
>>107591411
>6502
For this splendid processor, there is a treasure trove of information over here:
http://6502.org/
>>
>>107596849
learn 6809
>>
>>107597032
Not a bad one, but why not go the whole hog with 6309?



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.