hi, I found you disable interrupt before accessing ring buffer to avoid concurrency issue, is this common in embeded system implementation? will it cause interrupt miss? thanks for your awesome videos
Yes, disabling interrupts is common in bare-metal but should be done sparingly. On the MSP430, I think interrupts are held pending if disabled briefly, so missing one is unlikely unless multiple interrupts occur before the first is serviced. For this application, missing an interrupt isn't critical. In an RTOS, you'd use synchronization techniques like mutexes or semaphores instead.
hello please can I have your library for infra touge remote control, I am in the process of carrying out an end of study project in c embedding on microchip and I am stuck in the creation of this library to decode the signal.
Amazing step by step guide. Keep posting. It's really useful
Congratulations 1k followers you deserve millions ❤
Thanks 😚
Thanks, it helped to solve my driver problem
Nice 👍
hi, can you please advise if the capturing of NEC pulses could also be achieved by using the capture mode of the 16-bit Timer?
Yes should work, and might even simplify the code a bit.
Cheers
hi, I found you disable interrupt before accessing ring buffer to avoid concurrency issue, is this common in embeded system implementation? will it cause interrupt miss? thanks for your awesome videos
Yes, disabling interrupts is common in bare-metal but should be done sparingly. On the MSP430, I think interrupts are held pending if disabled briefly, so missing one is unlikely unless multiple interrupts occur before the first is serviced. For this application, missing an interrupt isn't critical. In an RTOS, you'd use synchronization techniques like mutexes or semaphores instead.
@@artfulbytes Thanks for your reply
hello please can I have your library for infra touge remote control, I am in the process of carrying out an end of study project in c embedding on microchip and I am stuck in the creation of this library to decode the signal.
The code is available on GitHub, see video description.
Which IDE & window manager are you using?
CCStudio, Vim, and I3 here.
#define P2SEL (PASEL_H) where the PASEL_H is defined? it is not in the msp430xxxx.h
It's resolved at link time, so it's found in the msp430xxxx_symbols.ld
@@artfulbytes Thank you very much