cleaer explanation and an brief virtual example. I want to know how "hardware" read the IO value. or is that memory mapped to register automatically then seamlessly could control IO? (like lighting on or off and LED?)
Hi,can you explain how you are dereferencing while using macros at 6:19 . Im not able to understand how GPIO->ODR does the dereferencing (i have understanding of struct pointer)
Hi Sir, How are you!!.. The below is my doubt, kindly clear my doubts. How do i find RAM end address sir? There is is 2 SRAM in my MCU(STM32F407 disc1 board), starting address is 0x20000000 as per user manual and my SRAM 1 size is 112KB and SRAM 2 size is 16KB. As per the memory mapping end address of SRAM 1 is 0x2001BFFF, but if we add 0x20000000 with `112 KB am getting the address 0x2001C000, SRAM1 end address is 0x2001BFFF. 0x2001C000 is starting address of SRAM2. Kindly help me for find out SRAM1 end address. Thanks in advance Sir :)
0xFFFFFFFF means "4,294,967,295" in decimal which is 4 Giga bits (4Gbs) which is equivalent to 0.5GBs (0.5 Giga Bytes). If you mean each address refers to 4 bytes of memory then total memory should be 16 GBs. Which is it?
sir, please clarify me while in the Memory map showing the width is "one Byte (8bits) but when you elaborate the GPIO A registers its shows 4Bytes..can you explained pls.im confused
If a variable x is declared as uint32_t, x will take four bytes in the memory. The IDR and ODR register are declared with "uint32_t" in the GPIO struct.
For example, the GPIO output data register has 32 bits, controlling the output of all pins of that port. If you do not use the bitwise operations, you will cannot change the output of a pin without influencing the output of the other pins in this port.
Please use your voice. Don't care what kind of accent you have (you could even include subtitles if you feel it would help). Because a computer reading makes the content sound so dull...
You have good quality slides but please use your own voice to explain instead of letting the computer reading a text
I had take courses and read tons of books , after long experince no one explain as you did
no one ever explained this good ... thank you very much
i watch this when I take my hourly bath
i watch this when I eat my daily supper
Pinky
Pinky will be in touch with you tomorrow
your pfp
cleaer explanation and an brief virtual example. I want to know how "hardware" read the IO value. or is that memory mapped to register automatically then seamlessly could control IO? (like lighting on or off and LED?)
Can someone explain me what’s the meaning of |=1UL
| is OR and = is assignment operator. UL just tells the compiler that the 1 is to be interpreted as a uint32_t (UNSIGNED LONG).
i know it may sound strange, at 4:59, can I write *((uint32_t *) 0x48000017 |= 1UL>>17?
Yes, it should work!
Hi,can you explain how you are dereferencing while using macros at 6:19 . Im not able to understand how GPIO->ODR does the dereferencing (i have understanding of struct pointer)
GPIOA == GPIO_TypeDef*, it's just an alias to the pointer to the MMIO address.
Hi Sir, How are you!!..
The below is my doubt, kindly clear my doubts.
How do i find RAM end address sir?
There is is 2 SRAM in my MCU(STM32F407 disc1 board), starting address is 0x20000000 as per user manual and my SRAM 1 size is 112KB and SRAM 2 size is 16KB. As per the memory mapping end address of SRAM 1 is 0x2001BFFF, but if we add 0x20000000 with `112 KB am getting the address 0x2001C000, SRAM1 end address is 0x2001BFFF. 0x2001C000 is starting address of SRAM2.
Kindly help me for find out SRAM1 end address.
Thanks in advance Sir :)
which TTS voice you use???
Its nice.
0xFFFFFFFF means "4,294,967,295" in decimal which is 4 Giga bits (4Gbs) which is equivalent to 0.5GBs (0.5 Giga Bytes).
If you mean each address refers to 4 bytes of memory then total memory should be 16 GBs. Which is it?
I just saw that each address points to one byte in the lower part of the screen in the block diagram. So 4GB makes sense.
That's a wrong statement. 0xFFFF_FFFF is 4 GB (bytes) not bits. 4 Gb would be address space 0 - 0x1FFF_FFFF which in other words is 512 MB
sir, please clarify me while in the Memory map showing the width is "one Byte (8bits) but when you elaborate the GPIO A registers its shows 4Bytes..can you explained pls.im confused
If a variable x is declared as uint32_t, x will take four bytes in the memory. The IDR and ODR register are declared with "uint32_t" in the GPIO struct.
@@embeddedsystemswitharmcort9051 ok, thanks
Great video.. Will u please share presentation slides..
Very good video, informative, I really learned a lot. Just curious which tool you used to create such great video ?
hi, why don't we assign the value we want, directly to the 32-bit i/o port A data register without using a bitwise operator ??
For example, the GPIO output data register has 32 bits, controlling the output of all pins of that port. If you do not use the bitwise operations, you will cannot change the output of a pin without influencing the output of the other pins in this port.
understood, thanks.
@@embeddedsystemswitharmcort9051 good point!
Very good and funny videos bring a great sense of entertainment!
3:30 Animation out of order.
Thank you for the really good content.
thank you, it is very infrormative and very good quality
You are welcome!
very clear demonstration video! thanks
Please use your voice. Don't care what kind of accent you have (you could even include subtitles if you feel it would help). Because a computer reading makes the content sound so dull...
Great episode !!
Thank you, thank you and thank you.
really really good.. thanks so much
good explanation
Beautiful.
This is beautiful
machine voice better than my professor
how dare you😂
Best Ever.
very informative